برای طرح سوال و دسترسی به آموزش ها  کانال ما در تلگرام بپویندید  

مقایسه C# با Delphi – برتری ها – مزایا و معایب

مقدمه

همیشه یکی از بحث های مطرح بین برنامه نویس برتری زبان های برنامه نویسی هستش، اصلالتاُ این بحث زمانی سر چشمه میگیره که، برنامه نویس ها تنها یک زبان رو برای توسعه خودشون انتخاب کنند، من به شخصه هیچ عرقی به یک زبان برنامه نویسی خاص ندارم و هر کسی از من این سوال رو میپرسه ( معمولا تو هفته یکی دو مرتبه پیش میادش) با چه زبانی برنامه نویسی رو استارت بزنم پاسخ من با یه سوال شروع میشه چشم انداز تو برای برنامه نویس یا توسعه دهنده شدن چی هستش؟ اما ما باید یه چیزی رو در نظر بگیریم اونم اینه که هر زبانی یه سری رویکرد داره که برای انتخاب باید به رویکرد ها و قابلیت ها توجه کرد که‌ آیا رویکرد این زبان برنامه نویسی با رویکرد های من سازگار هست یا خیر! پس این نقد و مقایسه رو به دور از تعصب توضیح میدیم لذا خیلی موقع ها من به بعضی ها خودم #C رو پیشنهاد میدم به برخی دیگه دلفی رو، پس میزان رویکرد شماس.

 

delphic

 

توضیحی در مورد آندرس هلزبرگ

Anders Hejlsberg معمار اصلی دلفی می باشد، که طراح بنیان دلفی به عهده ایشان بوده است و یکی از طرح های کم نظیر ایشان VCL در دلفی می باشد ، به صورت خلاصه وار بخواهیم در مورد دادگاهی بین مایکروسافت و برلند ( بنیان گذار دلفی اما الان هیچ امتیازی ندارد در اختیار embarcadero می باشد) یک جلسه پشت درب های بسته انجام میشود Borland از شکایت خود منصرف میشود و در نهایت آندرس هلزبرگ از برلند به مایکروسافت می رود همچنان جای سوال است که برنلد در این معماله در ازای چه چیزی مغز متفکر خود را تقدیم مایکروسافت کرد و در نهایت پس از ورود به مایکروسافت J# را طراحی میکند که با شکست مواجه میشود و بعد از معمار اصلی C# ایشان میباشند پس این شخص یکی از مهم ترین طراحی های این دو زبان پیشتاز بوده است.

 

مقایسه کلی در یک جدول: ( در چهل مورد)

‌امتیاز بین صفر تا ۵ می باشد

 

 

عنوان ‌ Delphi   امتیاز C# امتیاز
انشای کد syntax   یادگیری ساده

ولی قواعد های بعضی وقت ها غیر قابل تحمل

۳  برگرفته از پایه زبان C ولی کاملا شی گرا

چیزی بین C++ و جاوا

 ۴
سرعت همبندی یا کامپایل   بسیار بسیار سریع  ۵   تقریبا سریع  ۳
قدرت کامپایل  بسیار  بالا و استفاده از کد های محلی  ( کد ماشین)

و نسخه های ۳۲ و ۶۴ بیتی

 ۵ متوسط استفاده از زبان میانی و مفسری

و نسخه های ۳۲ و ۶۴ بیتی

 ۲
انعطاف در کدنویسی  بسیار بالا و قابلیت انتخاب بین ساخت یافته و شی گرایی

استفاده از api خام بدون استفاده از هیچ چیز زیادی

 ۵  متوسط حتما باید شی گرا باشید

و در چهار چوب .net

 ۲
شی گرایی   قابلیت استفاده از شی گرایی چند ریختی و کپسوله سازی ۴  بسیار قوی لذا الگو گرفته از  جاوا می باشد  ۵
سرعت اجرای کد   بسیار سریع لذا کد های ماشین اجرا میشود و نیازی مفسر ندارد  ۴   متوسط لذا از زبان میانی استفاده میکنه  ۴
ارتباط با api   خیلی ساده و بسیاری از آنها محلی فرخوانی میشوند  ۵   بسیار ضعیف  ۱
استقلال از سکو cross platform   متوسط – در فایر مانکی این امکان هست جز برای لینوکس

ولی VCL خیر مخصوص ویندوز

 ۳  خوب در پروژه مونو خوب طراحی شده

ولی هچنان کامل نیست

 ۴
قدرت IDE  خوب و مناسب  ۴  بسیار خوب و مناسب  ۵
استفاده از مولفه بومی native component  بسیار خوب برای اکثر نیاز ها کامپوننت تعریف شده  ۵  خوب و قابل قبول  ۴
استفاده مولفه های غیر بومی third party component   بسیار خوب و بسیار بسیار منعطف و توسعه دهنده های بیشتر  ۵   خوب  – اما انعطاف کم  ۳
اسناد آموزشی documantion   خوب و در ویندوز عالی  ۴  بسیار بسیار قوی  ۵
شرکت در متن باز open source   خیلی کم و بد  ۱  ضعیف  ۲
استفاده در محیط های دیگر  بسیار کم چون پاسکال یه زبان عمومی مثل C نبوده  ۱  خیلی زیاد در خیلی از محیط ها زبان محلی شده

مانند موتور های بازی unreal , unity

 ۵
بازار کار داخلی  متوسط رو به کم ولی رقابت کمتری در این بخش است   ۴  زیاد ولی رقابا زیاد هستند  ۴
بازار کار جهانی  بسیار کم  ۱  متوسط رو به زیاد  ۴
بحث دانشگاهی  بسیار منفور در جامعه دانشگاهی  ۱  بسیار محبوب در جامعه دانشگاهی  ۵
توسعه برنامه های تحت وب  بسیار ضعیف  خیلی سخت

مگر در دلفی پرسیم که تحت دات نت است

 ۱  بسیار خوب و مرتبط با ASP و ساده

با مولفه های خوب مثل MVC

 ۵
توسعه برنامه موبایلی  خوب برای برنامه های android , ios  ۴  متوسط نا مناسب برای توسعه حتی xamarin  ۲
استفاده برای پایگاه داده ها database  ‌فوق العاده لذا بسیار قوی بوده و کاپوننت های غیر بومی زیاد  ۵  متوسط و تمرکز روی کامپوننت بومی مایکروسافت  ۳
پایداری IDE  خوب  ۴  عالی  ۵
جایگزینی  خیلی خوب لذا به سادگی میتوانید پس از آپدیت IDE از

کد های پیشین استفاده کنین

 ۴  خوب و ولی غیر قابل اعتماد  ۳
استقلالی برنامه اجرایی standalone  عالی بدون هیچ نیازی اجرا میشوند  ۵  ضعیف لذا نیازمند .net فریم ورک میباشد ۲
هزینه خریداری محیط توسه IDE price  بسیار بسیار گران  ۱  خوب و قابل خرید  ۴
برنامه های چند نخی یا multi thread  دست شما بسیار باز است ولی سخت  ۳  دست شما بسته است ولی ساده تر  ۳
برنامه نویسی تحت شبکه  بسیار خوب استفاده از کامپوننت های  Delphi  ۵  خوب ولی نه کامل  ۳
لایبری های خارجی تقریبا متوسط  ۳   خوب  ۴
امنیت داده ها و برنامه  بسیار خوب عدم دیکاپایل و استفاده راحت از protector  ۵  ضعیف و قابلیت دیکامپایل و پرکتور های نا مناسب  ۲
پیشرو بودن در تکنولوژی های ویندوزی   متوسط رو به ضعیف  ۲   بسیار عالی پیشرو و یک تاز ویندوز  ۵
پیشرو بودن در تکنولوژی های غیر ویندوزی  خیلی خوب و گسترده  ۵  خوب ولی نه گسترده  ۳
حجم فایل خروجی  خیلی بالا حدودا ۱ خورده مگابایت  ۱   خوب و قابل قبول حدودا ۲۰۰-۳۰۰ کیلوبایت  ۴
پشتیبانی از زبان های غیر لاتین  در VLC خیلی خوب در سایر اصلا خوب نیست  ۳  خوب و قابل قابل در همه موارد  ۴
قابلیت نوشتن درایور های سخت افزاری  خیلی خیلی کم  ۲  غیر ممکن  ۰
چرخه انتشار نگارش ها version release cycle  تقریبا منظم با بد قولی های همیشگی  ۴  بی نظیر و دقیق  ۵
خطازدایی یا debug برنامه  بسیار بسیار عالی و کامل  ۵  خوب ولی نه کامل  ۳
توسعه برنامه های سیستم ویندوز  خوب و قابل قبول  ۴  ضعیف  ۲
استفاده از رسانه ها  خوب  ۴  خوب  ۴
پردازش تصاویر و رسانه ها  متوسط – خوب  ۳   متوسط  ۲
‌استفاده مستقیم از زبان اسمبلی  ممکن و منعطف  ۵  غیر ممکن  ۰
حرکت در چهار چوب و استاندارد توسعه دهنده  ضعیف لذا انعطاف زیادی دارد  ۲  بسیار خوب  ۴
اکوسیستم پیکج منیجر  بسیار ضعیف و در حال تکامل به نام GetIt ۱  خیلی ضعیف ولی کاملتر به نام nuGet ۲

انتشار

در

توسط

برچسب‌ها:

نظرات

20 پاسخ به “مقایسه C# با Delphi – برتری ها – مزایا و معایب”
  1. Saeid نیم‌رخ
    Saeid

    در این مقایسه رویه جدید مایکروسافت و NET Core. به طور کامل فراموش شده و اندکی قدیمی هست.
    https://github.com/aspnet
    در حال حاضر مایکروسافت یکی از فعال‌ترین‌های سورس باز در GitHub هست.
    http://octoverse.github.com
    همچنین NET Core یک دات نت چندسکویی هست که توسط خود مایکروسافت توسعه داده میشه.
    خلاصه وضع فرق کرده و مثل قبل نیست.

    یک نکته: چون خیلی راجع به جاوا اینجا بحث شده، جاوا تا نگارش ۸ آن از لحاظ قابلیت شبیه به C# 2.0 هست.

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      این روند توی کامپایل برنامه های C# هرگز تاثیر نداشته ما وب فقط بخشی از صحبت مون بود نه همه صحبتمون.
      مایکروسافت هم کمی با متن باز آشتی کرده درسته ولی با جریان های همچون gnu فاصله سال نوری داره.
      اگر دقیق تر از این تغییری که میفرمایید صحبت کنید ممنون میشم.
      ما بنیادی صحبت کردیم سی شارپ statically, strongly, و manifestly با جاوا تقریبا شباهت عجیبی دارد. میشود گفت clone شده

  2. امیر شهریاری نیم‌رخ
    امیر شهریاری

    ممنون خیلی جالب و مفید بود

  3. شاهین نیم‌رخ

    سلام وبسایت ۰۷۷۷ دیگه مطلب نمیزاره؟!

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      فعلا با مشکل بخورد کردیم به زودی مطالب اونور هم به اینور منتقل خواهد شد.

      1. شاهین نیم‌رخ

        به به ….چه عالی !ممنون

  4. یه بنده خدا نیم‌رخ
    یه بنده خدا

    به نظرتون کدام زبان برنامه نویسی آینده بهتری داره؟ C# یا delphi

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      به نظرم سی شارپ سیر خطی سعودی داره ولی دلفی سیرش سینونسی هستش در کل برای بازار ایران من دلفی پیشنهاد میکنم ولی خارج از این c++ نه سی شارپ

  5. یه بنده خدا نیم‌رخ
    یه بنده خدا

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

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      بازار کار ۳۰٪ به سیاست های فعلی بستگی داره شما فرض کنین هزاران برنامه از همکران سیستم گرفته تا قفل های سیمین با دلفی نوشته شده این برنامه ها نیاز به پشتیبانی و نگهداری دارند پس چه بسا بازار کار در این زمینه وجود دارد.
      ولی چیزی که هویداس دانشگاه چون روی سی شارپ مانور میده بازار کار رو اشباع کرده ولی دلفی به طبع بهتر هستش.

      1. روزبه نیم‌رخ
        روزبه

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

        1. ‌A1Gard نیم‌رخ
          ‌A1Gard

          سلام و خوش آمد

          متسفانه اکنون مشکل اصلی دلفی در دنیا قیمت بسیار بالا و عدم تبلیغات گسترده مثل مایکروسافت هست و در ایران تعصب های بی جا من رفرنس کتابی سراغ ندارم ولی پیش از این یه سری آموزش کلیپ برای دلفی درست کرده بودم میشود به آن مراجعه کرد.

          استاد مبین قاسم پور فک کنم کتابی در از این زمینه داشت تالیف میکرد که در جریان نیستم به کجا رسید.
          با جمله نا آگاهی موافقم + این که تعصب روی زبانی که بلد هستند.

  6. مدیران نیم‌رخ

    کاش جمع رو هم می گذاشتید و یه نتیجه گیری هم داشت

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      سپاس از دیدگاهتون
      اما ما نتیحه گیری رو به مخاطب واگذار کردیم مثلا برای شخصی standalone بودن مهم هستش حتی اگر سی شارپ ۵۰ نمره هم بالاتر باشد ارزش ندارد نسبت به خواسته ایشان.

  7. reza نیم‌رخ
    reza

    همین وِیژگی ارو برای vb میخوام

    1. ‌A1Gard نیم‌رخ
      ‌A1Gard

      سلام. vb محبوبترین زبان مرده دنیا هست ارزش نقد رو نداره واقعاً

  8. مهدیس نیم‌رخ
  9. Jahesh نیم‌رخ
    Jahesh

    سلام
    بسیار بسیار عالی و بدون تعصب
    کاش برنامه نویسان مبتدی که فقط با یک زبان آشنا هستند هم این مطالب رو بخوانند.

  10. yas ros نیم‌رخ
    yas ros

    سلام
    vcl در دلفی واقعا عالی و ساده و قابل فهم و درک است و از نظر من از سایر زبان‌ها هم ساده‌تر و خیلی راحت‌تر است ولی متأسفانه فایر مانکی این قابلیت رو نداره و کار رو بسیار پیچیده کرده و از طرفی هم زبان‌های راست به چپ رو پشتیبانی نمی‌کنه و هیچ مرجع فارسی هم برای کار نداره لذا محبوبیتش رو کم کرده ولی باز هم از اینکه با یک کد می‌شه برنامه رو در پلت‌فرم‌های مختلف کامپایل کرد خیلی عالیه

  11. mehdigeek نیم‌رخ
    mehdigeek

    زبان دلفی فقط تحت ویندوز بهترین گزینه است مخصوصا Delphi xe 10 فوق‌العاده است البته با کرک کامل

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *