الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Delphi لغة التطوير الأولى فقط!!

مغلق
بدأه Basrah في 28 ديسمبر 2003 · 5 رد · 1,168 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

دلفي لغة التطوير الأولى

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته...

كثر الحديث في الآونة الأخيرة عن تقنية NET. وما قدّمته هذه التقنية من إطار عمل Framework متناسق بين أشهر لغات البرمجة Visual C++ .NET و C# .NET وربّما Visual Basic .NET. ولكنهم سرعان ما تجاهلوا وتحاملوا على لغة Delphi ونعتوها بنعوت غير لائقة كأنها لغة ستصبح من التراث كاللغات القديمة نظير COBOL و FORTRAN!!

من وجهة نظر علمية (وأنا لا أقول هذا الكلام من فراغ بل من خلال معرفتي بلغات البرمجة التي عملت عليها نظير Visual Basic ولغة C) لا يمكننا قياس Delphi مع أيّ منتج من عائلة NET. سواءً كان Visual C++ .NET أو Visual Basic .NET إذ أنّ ما قدمته عائلة NET. من خدمات لا تأتي ربع الخدمات التي قدّمتها دلفي، وفي الحقيقة اندهشت كثيراً عندما نصّبت NET. على جهازي فقد رأيت شبهاً (فادحاً) بين NET. وبين Delphi!! حتى الأسماء (ورثت) من Delphi وكأننا نتعامل مع الاشتقاق في الفئات (Class) والوراثة في OOP!!!

سلبيات NET.

هناك سلبيات عديدة للـ NET. أذكر بعضاً منها (لاحظوا أنني لا أريد التهجُّم على NET. ولكن مجرّد قياس):

1. أنها لا تعمل إلى على ويندوز NT - 2000 - XP! وسيقول قائل بأنَّ من الذي يستخدم هذه الأنظمة القديمة ولكني أنبّه إلى أنّ هناك الكثير من الشركات (سواءً الصغيرة أو الكبيرة) تعمل على Windows 95 (نظراً لاكتفاءهم بهذا النظام) والكثير من الناس يعملون على Windows 98، فلتنصيب NET. يقتضي ترقية الإصدار الجديد من نظام التشغيل إلى XP - 2000 مما سيكلّفهم مئات الدولارات.

2. الكثير يعرف الـ Runtime خصوصاً ملفات msvbvmVER.dll في Visual Basic ومبرمجي Visual Basic يتذكّرون هذا الملف المزعج وما يحمله من عناءٍ لهم ففي أي جهاز أردت تشغيل برنامج منشئ على Visual Basic يتطلب أن تنسخ الملف المذكور على الجهاز (أو تعمل له Setup) مما سيكبر حجم البرنامج (بلا أي فائدة)، و NET. لم تقضِ على هذه الملفات بل ازداد حجم هذه الملفات عن ما كان في السابق ففي السابق كان لا بد من وجود مكتبة واحدة والتي لا تكثر عن حجم 1 ميغا بايت، أما في NET. فالمكتبة تزيد عن 40 ميغا بايت ناهيك عن استخدامك لمكوِّنات ActiveX وتعاملك مع Com أو Dcom!! أنا مع الذين يقولون أن المساحة اليوم لا اعتبار فيها لأن أقل هارد لدينا هو 40 غيغا بايت وهذا لا يؤثر على حجم الهارد نهائياً! ولكن هناك ثقل في البرنامج عن طريق استدعاء الدوال (function) الداخلية واستخدامها في البرنامج وتسجيل المكونات (Register Component) فكل ما ازدادت ملحقات البرنامج ازداد حجمه.

3. لغة صعبة التعلُّم: فنحن من ناحية نرى تطوّر العلوم وازدهارها، وكلّما تطوّرت لغات البرمجة ازدادت سهولةً عما كانت عليه في السابق، فهل يمكن قياس لغة BASIC قبل حوال 40 سنة مع لغة الـ Visual Basic الحالية؟ بالتأكيد لا يمكن لأنَّ السهولة نعتت شيئاً جديداً في علم هذه اللغة ألا وهو السهولة. فـ NET. ليست سهلة التعلم كـ Delphi.

4. ActiveX كما كانت عليه ولم تتطوّر!! وأنا مندهش من شركة Microsoft من عدم طرحها لحل جديد يحلّ مشكلة موكّنات ActiveX فهي كالمشكلة التي صادفتني سابقاً عند العمل مع Visual Basic ألا وهو لا بد من تسجيل المكوّنات وإرفاقها بالبرنامج حتى يعمل البرنامج بشكلٍ صحيح، وهذه سلبية من أفضح سلبيات الـ NET. فأنت تعمل برنامج ربما يكون حجمه 500 كيلو بايت إلا أنك وبإرفاق ملفات ActiveX والـ Runtime سيزداد الحجم أكثر فأكثر، ولا يوجد في Delphi هذا الشيء فمكتبة VCL لا تحتاج لأن ترفق الملفات مع البرنامج كـ ActiveX بل يتم ترجمة المكونات مع التطبيق.

5. حديثة العهد، ولا أقصد بحديثة العهد المفهوم العام للجملة بل أقصد أنَّ عائلة Visual Studio ما بين فترة وأخرى تظهر بملبس جديد (وللأسف الكثير لا يأخذونها بنظر الاعتبار وسرعان ما يتبعونها)! أنا مع التطوير ومع أنَّ NET. فرّقت كثيراً عن الإصدارات السابقة لعائلة Visual Studio الإصدار 6 أو ما قبله، إلا أنها لم تكن تحديث للغات البرمجة بل كانت استبدال لغة بلغةٍ أخرى!!! وهذا ما دعا (بروس مكيني) خبير Visual Basic أن يودّع عالم البرمجة بسبب هذه النقطة! حيث قال: (Visual Basic تجعل الأشياء السهلة أسهل بينما Delphi تجعل الأشياء الصعبة أسهل)!!! فلن تحترم Microsoft زبائنها وأثبتت في هذه الخطوة أنها شركة تجارية بحتة!! لا تحترم الزبائن!! بينما Delphi عكس ذلك، الذي يعمل على إصدار Delphi 1 16 bit بإمكانه أن يعمل على إصدار Delphi 7 32 bit من دون أي مشكلة وإن كانت هناك فوارق إلا أنها بسيطة. أنا أيضاً من الذين اصطدموا بـ NET. وانتقلت على إثر صدمتي إلى Delphi التي عالجتني وأسكنتني في بيت الترفيه الذي لم أكن أحلم به قط! فبعد السنين التي قضيتها بجوار Visual Basic منذ الإصدار الثالث يليه الخامس (تاركاً الرابع) إلى السادس، ثلاث إصدارات وأنا أعمل بجدٍ في هذه اللغة إلا أنها وبصدور NET. تحطّمت كل آمالي!! فبدلاً من أن أصرف وقتي للغةٍ تظهر كل يوم بحلَّة (ولا تحترمني) انتقلت إلى لغة Delphi والتي لم أرى قياسها Visual Basic قياساً منطقياً لأنَّ الأخيرة أبعد بكثير.

أما عن عدم Delphi لـ NET. فلقد أرادت بذلك شركة Borland إلى أن تجعل هذه التكنولوجيا ضمن لغتها الرائعة لكي تصبح شاملة. ومنذ الإصدار 6 لـ Delphi دعمت Borland هذه التكنولوجيا بكلّ قوة وبعد مجيء الإصدار 7 أصبح الدعم أكثر.

مزايا دلفي

دلفي لديها الكثير من المزايا التي لا تعد ولا تحصى أكتفي هنا بذكر بعض مزاياها ماسحاً الغبار عنها وبيان شكلها الجميل للكل:

1. بإمكانك من خلال Delphi بناء واجهات معقّدة في غضون دقائق (إن لم تكن ثوان)!! ألقِ نظرة على أدوات Delphi وسترى مئات الأدوات المدرجة التي تغنيك عن البحث والتماس شخصٍ عن مكوّن ما!!! فـ Delphi تدعم دعماً كاملاً للواجهات وهو ما يسمّى بـ: full support for interfaces (الخدمات الحرّة للواجهات).

2. لا يخفى عليك أن Delphi هي اللغة المثلى لتطوير COM إذ أنها تملك low level support (المستوى المنخفض من أجل COM) مما يمكنك أن تفتح الدوال التحتية وتغييرها كيف ما شئت وإضافة النعوت عليها.

3. الكل يعلم أنَّ Object Pacal لغة كائنية أكثر من ++C! وهذه حقيقة يعترف بها الكل، حتى في الجامعات تُدرَّس لغة Object Pascal (التي بينت عليها Delphi) لكي يرسّخون مفهوم (البرمجة الكائنية Object Oriendet Programmint OOP) أما عن Delphi فهي تدعم وبشكلٍ مميز كل من:

1. الوراثة الفعلية True Inheritance.

2. تعدد الأشكال Polymorphism.

3. التغليف Encapsulation.

4. أما عن منتجات Delphi فهي منتجات صغيرة الحجم وسريعة التنفيذ فلا يوجد الملف المزعج والذي يعرفه كل مبرمجي Visual Basic وهو msvbvmVER.dll كما لا يوجد Runtime كالذي في NET. والذ يصل إلى 40 ميغابايت، فـ Delphi لا تحتاج لأي مكتبات ربط ديناميكي DLL كـ Visual Basic لكي يعمل البرنامج بسلامة، حتى الأدوات التي نحصل عليها من هنا وهناك سواءً من الإنترنت أو من شيءٍ آخر لا نضطر أن ننصبها كأدوات ActiveX فيوجد في Delphi أدوات تسمّى Visual Component Library اختصار: VCL، أدوات تترجم مع التطبيق والأعجب أنها لن تزيد من حجم التطبيق!!!!!

5. الأعجوبة هنا وهو أنَّ Delphi تقوم بالأعمال عوضاً عن نظام التشغيل!! فلا تشعر أن نظام التشغيل يقوم بالأعمال عوضاً عنك، لذا فهي متناسقة مع جميع إصدارات نظام التشغيل لأنها لا ترتكز عليه وبإمكانك وذلك من خلال Delphi القيام بكل شيء.

6. دلفي لغة مكتوبة بنفسها! إذ أنها هي التي تطوّر نفسها بنفسها، الإصدار الأول يطور الثاني الثاني يطوّر الثالث، الثالث يطوّر الرابع، الرابع يطوّر الخامس. إلخ... فيا لها من لغةٍ عظيمة ورائعة لن ترتكز علي أي لغةٍ أخرى لا C ولا أمثال C بل إنها تعتمد كل الاعتماد على نفسها. فهل يمكن لنا بعقلٍ مفكِّر أن نقيس Visual Basic .NET مع Delphi!!! الكثير من فئات (Classes) لغة Visual Basic .NET هي مكتوبة بلغة #C!!

7. Delphi لغة لا علاقة لها بدوال Application Programming Interface API إذ أنها تقوم ببرمجتها من المستوى الأدنى وهو الصفر فصاعداً، يا للعجب!!! فأنت يمكنك تشغيل برنامج على أي نظام تشغيل كان سواء Windows أو Linux أو Lindows بدون أي مشكلة لأن دوالها داخلية (الأعجب أنك تستطيع التحكم بهذه الدوال)!! فهل يعقل أن نقيس عائلة NET. بهذه اللغة؟؟؟؟؟؟؟؟

8. لا حاجة اليوم لاستخدام كتبة MFC في Visual C++ إذ أنك من خلال VCL تصبح القدرة أكبر وأعظم وأرقى!! مكتبة VCL هي مكتبة مرئية كما هو مبين من اختصارها Visual Component Library إذ أنها أفضل من MFC (والتي ترتكز على الدوال، والمصيبة أن معظم دوالها API)!!!

هذا وهناك ميزات كثيرة كثيرة كثيرة لا تعد ولا تحصى اكتفيت بهذه الميزات فقط!!!

أما الآن فأدع الخيار لك أنت كمفكِّر ولست كمبرمج! اختر أيُّهما الأفضل لنجاح البرامج NET. أم Delphi؟ وكما ذكرت وأذكر وأذكر أنني لا أتكلم عن فراغ بل أتكلّم عن خبرة وأنا أعرف Visual Basic قبل أن أعرف Delphi وقبل أن أرى أي لغة برمجة أخرى.

كانت هذا مجرّد رأيي الشخصي إن كان هناك أي اقتراح فالمنتدى صدره واسع.

والسلام عليكم ورحمة الله وبركاته

#2

وأزيدك من الشعر بيتاً

صبحت تدعم بشكل رئيسي تقنية .Net

www.borland.com/delphi_net

#3

مسكينه مايكروسوفت ..... لو كان عندهم موظف واحد فقط مثلك ان كان ماخسرو اكثر من مليار دولار لانتاج الدون نت .

واعتقد انك نسيت ان تضع في اخر سطر من مقالتك الرائعه :

" ملاحظه كل ماكتبته لايستند على حقائق علميه سواء كانت من مراكز ابحاث او من معاهد تقييم معتمده "

اما اذا اردت ان تذكر الفرق بين لغتين من البرمجه فيجب عليك اولا ان تحترف اللغتين بما يصل الى 80 بالمئه ومن ثم تذكر الفروقات الخطيره بين اللغتين.

واما الاخر فزاد لنا من الشعر رابط

وجاء في الرابط :

Delphi™ 8 for the Microsoft® .NET Framework

Delphi 8 is pure .NET and pure Delphi. You can start developing today with Delphi language RAD development for the Microsoft .NET Framework, including VCL Forms, Windows® Forms, ASP.NET, Web Forms, Web Services, ADO.NET, and more. Developers can immediately use their Delphi language and framework skills and most of their existing investments in Delphi application source code to start developing Windows applications for .NET today.

اسال الله العظيم ان يعلمنا ماجهلنا .

تم تعديل هذه المشاركة بواسطة AraFox في 5 يناير 2004 في 20:05

#4
Basrah كتب:
6. دلفي لغة مكتوبة بنفسها!..........

فهل يمكن لنا بعقلٍ مفكِّر أن نقيس Visual Basic .NET مع Delphi!!! الكثير من فئات (Classes) لغة Visual Basic .NET هي مكتوبة بلغة #C!!

هل كان على مايكرسوفت أن تبرمج مكتبة .NET مرة ب C# ومرة ب Visual Basic ومرة ب C++.NET ومرة ب JScript ومرة ب J# ؟؟؟؟؟؟

وحدن بيبقو متل زهر البيلسان وحدهن بيقطفو وراق الزمان

بيسكرو الغابي بيضلهن متل الشتي يدقوا على بوابي على بوابي

يا زمان يا عشب داشر فوق هالحيطان ضويت ورد الليل عكتابي

برج الحمام مسور و عالي هج الحمام بقيت لحالي لحالي

يا ناطرين التلج ما عاد بدكن ترجعو صرخ عليهن بالشتي يا ديب بلكي بيسمعو

http://www.mazikana.com/Songs/F/Fayrouz/mp...uz---Wahdon.mp3

#5

انظر المشاجرة التي تمت بخصوص هذا الموضوع الذي أجده أينما ذهبت:

http://www.vb4arab.com/vb/showthread.php?threadid=34474

فكر بطريقة أخرى

#6

شكرا للاخ على الرابط

يبدو ان المرض استفحل

لاحول ولاقوة الا بالله

كاتب الموضوع بعد ان مدح في الدلفي واستهان بالدوت نت انتقل الى ماهو اعظم ... ومن ماقاله :

بالنسبة لقولك ++C أفضل من Delphi الرجاء أن تعطيني ولو دليل واحد على كلامل. فإن قلت أنَّ ++C تدعم OOP أكثر فإنك أخطأت، لأن Object Pascal (تدرّس في الجامعات لأجل أنها أكثر كائنية من ++C)، أما قد يكون لديك دليل آخر؟

لا نتبع فلان وفلان (المتعصِّبين) يجب أن نفكر نحن ونستنتج نحن، Delphi أفضل من ++C بكثير.

ويبدو ان الامر اصبح كتشجيع الانديه الرياضيه .

الله يوفقك الجميع

هذا الموضوع مغلق.

مواضيع مشابهة