PDA

View Full Version : تفاوت دلفی و لازاروس ،لازاروس تا چه حد میتواند جای دلفی را بگیرد؟



alireza es
پنج شنبه 12 تیر 1393, 21:48 عصر
با عرض سلام.اول از همه اینو بگم که من بدون سرچ این تایپکو نزدم و تایپک های مشابه مشکلمو حل نکردن
سوالم اینه که محیط lazarus تا چه حدی متونه در پروژه های بزرگ جواب گو باشه؟تفاوتش با دلفی چیه؟
یه چیز دیگه اینکه تفاوت کامپایلر freepascal با دلفی و پاسکال چیه؟

Jarvis
جمعه 13 تیر 1393, 00:01 صبح
مهم ترین ضعف لازاروس که ازش یاد میشه منابع آموزشی کم و همینطور کمبود کامپوننت ها برای اون هستش ...
لازاروس یک IDE برای کامپایلر Free Pascal هستش که از زبان Object-Pascal پیروی میکنه و تفاوت چندانی با زبان دلفی نداره .. شاید خیلی جزئی در بعضی موارد...
دلفی اصولا Closed Source و non-Free هستش ، برخلاف Free Pascal کاملا رایگان و Open Source هستش ...

اساسا دلفی معایب و مزایای خودش رو داره ، لازاروس هم به همین شکل ...
دلفی خروجی لینوکس نمیده ، لازاروس کاملا Cross-Platform خروجی میده ...
از اون طرف کامپوننت های دلفی زیاده ... برای لازاروس کامپوننت ها کم هست ...

ولی قدرتش بستگی به خودتون داره چون دارید از یک نرم افزار متن باز استفاده می کنید ، با دستکاری سورس می تونید کمبود هاشو رفع کنید...
اما در حالت عادی تقریبا با دلفی برابری میکنه توی توسعه پروژه ها ... اما ممکنه یکم از لحاظ زمان وقت بیشتری صرف بشه چون خیلی جاها ممکنه کامپوننت مورد نیازتون رو پیدا نکنید و مجبور بشید خودتون کد اون قسمت رو بنویسید ...

موفق باشید.

بهروز عباسی
جمعه 13 تیر 1393, 01:22 صبح
دلفی IDE و دیباگر خفن داره با پشتیبانی خوب VCL رو داره و در کل برای برنامه های بزرگ خوبه ولی لازاروس فقط رایگانه و کراس ! و تا جایی که من دیدم پروژه های بزرگ رو باهاش استارت نمیزنن

حداقل تو ایران که همه چی رایگانه :D

alireza es
جمعه 13 تیر 1393, 23:49 عصر
ولی من دوتا چیزو متوجه نشدم
1-وقتی میگیم لازاروس برای پروژه های بزرگ امادگی نداره منظور چه جور پروژه هایین؟
2-تفاوت کامپایلر فری پاسکال با پاسکل و دلفی چیه؟

BORHAN TEC
شنبه 14 تیر 1393, 18:51 عصر
1-وقتی میگیم لازاروس برای پروژه های بزرگ امادگی نداره منظور چه جور پروژه هایین؟

در مورد پروژه های بزرگ باید از ابزارهای برنامه نویسی ای استفاده بشه که در خصوص اون بشه تیم تشکیل داد، فریم ورکهای مختلفی برای اون ساخته شده باشه، منابع آموزشی اون زیاد باشه و ... . این موارد در مورد دلفی وضعیت خیلی بهتری داره تا لازاروس.
البته همیشه بحث بهتر بودن یا بدتر بودن مطرح نیست و هر ابزاری کاربرد خودش رو داره. مثلاً همین لازاروس در ساخت فریم ورک FireMonkey نقش زیادی داشته. در نسخه های قدیمی تر دلفی با وجود اینکه هنوز کامپایلر دلفی برای OS X آماده نشده بود سازندگان FireMonkey(FMX) این فریم ورک رو با استفاده از Lazarus روی OS X تست می کردند. در بعضی از موارد هم شما نیاز دارید که از لازاروس استفاده کنید. مثلاً من همین چند روز پیش می خواستم که فایلهای موجود در یک سرور لینوکسی رو لیست کنم و از اونجایی که دلفی برای لینوکس کامپایلر نداره از همین لازاروس استفاده کردم :چشمک:


2-تفاوت کامپایلر فری پاسکال با پاسکل و دلفی چیه؟

معمولاً منظور از کامپایلر پاسکال یک محصول قدیمی و کلاسیک است. FreePascalCompiler(FPC) و Delphi Compiler بر مبنای زبان Object Pascal هستند. همانطور که میدونید ممکنه در خصوص یک زبان برنامه نویسی کامپایلرهای متفاوتی تولید بشه که ممکنه که در برخی از موارد متفاوت از هم باشند مثلاً در مورد C++‎‎‎‎‎‎‎‎‎‎‎ هم ابزارهای مختلفی استفاده میشه که از کامپایلرهای خاص خودشون استفاده می کنند مثل Visual C++‎‎‎‎‎‎‎‎‎‎‎ و C++‎‎‎‎‎‎‎‎‎‎‎ Builder و Cygwin(بیشتر برای کامپایل برنامه های لینوکسی و انتقال اونها به ویندوز) و موارد زیاد دیگه.

developing
سه شنبه 17 تیر 1393, 14:06 عصر
با سلام

ضمن تایید صحبت های آقای عشایری در مورد لازاروس باید بگم:

مزیت های لازاروس:

1- قابلیت نصب بر روی ویندوز32 و 64 بیتی، مک، لینوکس (انواع مختلف) لینک دانلود (http://sourceforge.net/projects/lazarus/files/)
2- امکان خروجی گرفتن برای سیستم عامل های مختلف و بسیاری از جمله: ویندوز، لینوکس، مک، سولاریس، اندروید، آی او اس، raspberry pi و ... از روی هر یک از سیستم عامل های لینوکس، ویندوز و مک مطالعه بیشتر (http://en.wikipedia.org/wiki/Freepascal#Targets)
3- متن باز بودن و رایگان، شاید در ایران مهم نباشه ولی ما که دم از کپی رایت می زنیم باید از خودمون شروع کنیم !!؟
4- امکان تبدیل و کامپایل پروژه های دلفی در لازاروس که البته برعکسش صادق نیست

ضعف های لازاروس:
1- عدم امکان تطبیق با نرم افزارهای بازرسی نسخه (Version control)
2- امکانات کم و یا نامطلوب خطایابی (Debugging) مثل Step Into و Step Over که در لازاروس به کد ماشین ارجاع داده می شود نه به کدهای پاسکال.
3- مستندات بسیار کم مخصوصا به زبان پارسی ( دلفی به نسبت سی شارپ مستندات کم داره حالا لازاروس ببین دیگه چیه)
4- سرعت کامپایل کمتر از دلفی. (البته هنوز بسیار بیشتر از زبانهای دات نتی است.)

اما برسیم به اینکه آیا با لازاروس طرح (پروژه) های بزرگ را شروع می کنند و انجام می دهند یا نه؟
فهرست برنامه های ایجاد شده با Free Pascal (http://wiki.freepascal.org/FPC_Applications/Projects_Gallery)
فهرست برنامه های ایجاد شده با لازاروس (http://wiki.freepascal.org/Projects_using_Lazarus) و اینجا (http://wiki.freepascal.org/Lazarus_Application_Gallery)

عکس هایی از محیط و برنامه های تولید شده با لازاروس (http://wiki.lazarus.freepascal.org/Screenshots)

البته این برنامه هایی است که گزارش شده.

چند تا عکس هم در ادامه میذارم شاید بد نباشه.

محیط برنامه نویسی لازاروس با امکانات اضافی.
همونطور که در عکس مشاهده خواهید کرد تعداد کامپوننت های زیادی وجود داره


120897


این هم یک برنامه که من نوشتم برای نمونه: در این برنامه من از چیزی شبیه به Ribbon در دلفی استفاده کردم. در ضمن از بانک فایربرد استفاده کردم.

120898


درباره لازاروس و شعار "Write once, Compile anywher" شعار لازاروس اینه: یکبار بنویس و در هرکجا خواستی کامپایل کن.

120899

alireza es
سه شنبه 17 تیر 1393, 16:37 عصر
خیلی ممنون آقای developing (http://barnamenevis.org/member.php?116920-developing)
یه سوال دیگه هم داشتم .آیا لازاروس و کلا فری پاسکال برای آندروید و ios کامپایل میکنه؟
(جالبه تو این عکس تمامی فرم ها به هم چسبیده هستند اما من که یه بار لازاروس رو تو لینوکس نصب کردم چند تیکه فرم وجود داشت
حتی تو اسکری شات ها (http://wiki.lazarus.freepascal.org/File:Windows_8.png) خودشم تو ویندوز همین طوره شما چطور اونارو یه تیکه کردین؟)

developing
پنج شنبه 19 تیر 1393, 09:41 صبح
با سلام

فری پاسکال که صد در صد. اما در اندروید باید بتونید کدهای نهایی تولید شده رو خودتون به APK تبدیل کنید. ولی برای آی او اس در XCode (که مال خود شرکت اپل هست) به صورت مجتمع از این کامپایلر استفاده شده. اما اگر بخواید از روی ویندوز هم خروجی بگیرید باید یک سری کتابخانه های پویای (dll های مربوطه که اکثرا با پسوند so هستند)مرتبط رو دانلود و سپس با استفاده از اونها کامپایل انجام بدید.
لازاروس هم که پشت صحنه از فری پاسکال استفاده می کنه. ولی تعداد کامپوننت های محلی شده برای بسترهای موبایل بسیار کم هستند و اصولا دستتون خیلی باز نیست. ( البته این ضعف لازاروس رو نشون نمی ده چون خود دلفی هم همینطوره)
برای برنامه های موبایل متاسفانه بسیار مستندات کم حتی کمتر از خود لازاروس وجود داره و اکثرا روسی، چینی و آلمانی هست که اگر تسلط بر این زبانها وجود نداشته باشه با دردسر بسیار بزرگی روبرو خواهید شد.

تنظیمات لازاروس هم دقیقا مثل دلفی که شما می تونید در جایگاه مخصوص ابزارهاتون رو بچینید و اون رو ذخیره کنید میشه هر طور که خواستید محیط توسعه رو بچینید.

این هم یک عکس از یه برنامه ی نمونه که تازه تولید کردم با استفاده از لازاروس و برای اندروید 4 با API 14.

120969