تفكير دلفي
مجد الخريف 2002
تعد دلفي منتج RAD (التطوير السريع للتطبيقات) الأكثر شهرة على الإطلاق.
يعد Delphi 3.0 إصدارًا تاريخيًا في سلسلة Delphi. يعزز الإصدار 5.0 الناضج والمستقر مكانة دلفي الرائدة كأدوات تطوير على مستوى المؤسسة.
دلفي 4.0 هو أسوأ إصدار في ذاكرتي. بعد تطبيق هذا التصحيح، لا يمكن تجميع البرنامج بشكل طبيعي؛ بعد تطبيق هذا التصحيح، لا يمكن تجميع البرنامج بشكل طبيعي. بالطبع، لن تكون هناك أخطاء واضحة في دلفي إلا إذا كان برنامجك كبيرًا ومعقدًا بدرجة كافية.
بالنسبة لمطوري برامج المؤسسات، تعتبر تقنية MIDAS من شركة دلفي ذات أهمية كبيرة في صنع حقبة جديدة. لا يزال من الممكن رؤية ظله في Microsoft .NET اليوم.
إن نموذج دلفي النشط هو تقنية تفتح العين. وتتمثل ميزته في أنه يمكنك بسهولة تجميع مشاريع Windows الموجودة في Active Forms دون أي معرفة خاصة بالويب، ما عليك سوى إضافة بضعة أسطر من التعليمات البرمجية لعرضها في المتصفح. دخول IE يلغي تكاليف صيانة العميل. إن التعبير عن هذه التكنولوجيا هو أيضًا أكثر ثراءً من ASP. ولكن بها أيضًا عيبًا فادحًا: فهي ضخمة جدًا ومناسبة فقط للتشغيل على شبكات LAN عالية السرعة.
تستخدم البرامج المالية المستخدمة على نطاق واسع في أنظمة الطاقة هذه التكنولوجيا. لا توجد أفضل التقنيات، فقط تقنية Active Form من Delphi هي التقنية المثالية للاستخدام في هذا النوع من الأماكن.
سيكون استخدام هذه التقنية في شبكة واسعة النطاق أو شبكة محلية منخفضة السرعة بمثابة كابوس.
Object Pascal هي واحدة من اللغات الأكثر أناقة التي أحبها. إنه تقليدي وحديث على حد سواء، فهو بسيط وواضح، لكنه قوي؛ الكود قابل للقراءة وليس مملًا مثل برنامج Visual Basic. والأكثر من ذلك، فهو مشابه لـ C++، كما أنه يدعم أنماط برمجة متعددة.
قبل ثلاث سنوات، إذا كنت تقوم بتطوير برامج متعلقة بقاعدة البيانات، ولكنك لم ترغب في استخدام لغة برمجة نصية أو أداة تطوير مخصصة (مثل Oracle's Developer 2000)، فقد أردت استخدام أداة تطوير مدفوعة بكائن حقيقي. اللغة الموجهة، فإن دلفي هو الخيار الأفضل.
لقد أدرك مصممو دلفي أن معظم البرامج تتعامل مع قواعد البيانات، لذلك أضافوا دعمًا قويًا لوظائف التطوير المتعلقة بقواعد البيانات. وكان هذا القرار حكيمًا للغاية. إن هذا الدعم القوي لتطوير قواعد البيانات هو الذي أدى إلى نجاح دلفي الكبير.
يصل دعم دلفي القوي لقواعد البيانات إلى بعض أدوات تطوير قواعد البيانات المتخصصة أو يتجاوزها. ولكن من السهل أيضًا أن يسيء بعض الأشخاص العاديين فهم أن دلفي هي مجرد أداة لتطوير قواعد البيانات.
ما زلت أتذكر أنه قبل بضع سنوات، كان هناك كتاب تم وضعه بشكل بارز في مكتبة شينهوا في شينجيكو، نانجينغ وكان يحمل اسمًا مضحكًا للغاية: "قاعدة البيانات العلائقية: دلفي" (لا أستطيع أن أتذكر بالضبط، لكنه مماثل إلى حد كبير). ).
يبدو أن بورلاند قد أولى اهتمامًا كبيرًا للتطوير الوظيفي لـ IDE (بيئة التطوير المتكاملة). كان من الممكن أن يؤدي ذلك إلى تحسين جودة لغة Object Pascal، وقد دخلت الآن لغة C# وغني عن القول الأسباب.
لا تقوم دلفي بتغليف جميع واجهات برمجة تطبيقات Windows، مثل بعض واجهات برمجة التطبيقات المرتبطة بـ COM، وهو أحد الأسباب التي دفعتني للتخلي عن دلفي.
لا غنى عن بيئة تطوير RAD مطلقًا لتطوير برمجيات المشاريع على مستوى المؤسسة. لقد خفض RAD عتبة تطوير البرمجيات، كما قام RAD أيضًا "بإنشاء" عدد كبير من المبرمجين الفاترين. أظن أن سوء الفهم والأحكام المسبقة حول أدوات RAD تنبع من هؤلاء المبرمجين الفاترين.
أحدث إصدار من دلفي يجلب دائمًا بعضًا من أحدث التقنيات. في بعض الأحيان تكون هذه التقنيات مجرد مفهوم لشركة Microsoft، لكن بورلاند حولها إلى منتج. لكن أحدث تقنيات دلفي لا يمكن اعتبارها في بعض الأحيان سوى تقنية انتقالية.
على الرغم من أن دلفي 6.0 قد حسن بشكل كبير ودعم الوصول إلى البيانات، والويب، وإكس إم إل، في رأيي، دلفي 6.0 هو مجرد نسخة انتقالية.
توفر تقنية الوصول إلى البيانات BDE (Borland Database Engine) من Delphi دعمًا كاملاً لمصادر بيانات ODBC وتهاجم ODBC. تصل هذه التقنية إلى ذروتها في Delphi 3.0. توفر تقنية MIDAS من دلفي تقنية الوصول إلى البيانات من المستوى n، لكنها لا تزال مبنية على BDE. يوفر Delphi 5.0 الدعم الكامل لـ ADO ولديه النية للتخلي عن BDE. تعد تقنية dbExPRess وDataSnap الخاصة بـ Delphi 6.0 مثالًا آخر على ابتكار Borland المستمر في تكنولوجيا الوصول إلى البيانات.
ومع ذلك، حتى عندما وصل BDE إلى ذروته، وحتى مع وجود العديد من تقنيات الوصول إلى قواعد البيانات اليوم، فإن حالة ODBC لا تزال غير قابلة للاستبدال. باستثناء الاستدعاءات المباشرة إلى واجهات برمجة التطبيقات (APIs) الخاصة بقاعدة البيانات (مثل Oracle's OO4O)، لا توجد تقنية للوصول إلى البيانات يمكنها الوصول إلى كفاءة ODBC API أو الاقتراب منها.
تعد Microsoft هي المعيار الفعلي لنظام التشغيل Windows، وغالبًا ما تكون قوة التعليمات البرمجية القديمة تفوق خيال أي شخص.
تعد عناصر تحكم VCL (مكتبة المكونات المرئية) وعناصر تحكم ActiveX شيئان مختلفان تمامًا. تهدف عناصر تحكم ActiveX إلى إعادة الاستخدام الثنائي عبر اللغات، بينما تهدف عناصر تحكم VCL إلى إعادة استخدام المكونات داخل بيئة تطوير Borland الطبقات) إعادة استخدام الطبقة.
المبرمجون الذين اعتادوا على عناصر تحكم VCL سئموا من الاضطرار إلى نشر وتسجيل عناصر تحكم ActiveX بشكل منفصل؛ الأشخاص الذين اعتادوا على عناصر تحكم ActiveX يجدون أنه من المضحك أن تقوم دلفي بتجميع كل شيء في ملف كبير.
إن BPL لوقت تشغيل دلفي (مكتبة حزمة Borland) هي في الواقع ملف DLL خاص، ويمكنك اعتبارها ملفات DLL بتنسيق Borland. إذا كنت ترغب في تقليل حجم البرنامج الخاص بك، إذا كنت ترغب في إصدار العديد من البرامج باستخدام نفس BPL في نفس الوقت، فإن استخدام BPL في وقت التشغيل يمكن أن يحقق رغباتك.
إن دعم دلفي المريح لوظيفة زيادة الإصدار التلقائي يجعل مبرمجي دلفي يشعرون بالغرابة لأن Visual C++ يحتاج إلى تعديل رقم الإصدار يدويًا. يمكن رؤية الفرق بين RAD وغير RAD من هذا.
تم استنساخ وضع دلفي بنجاح في C++ Builder، ولكن حتى الآن، لا تزال التكنولوجيا في C++ Builder متخلفة بشكل أو بآخر عن أحدث إصدار من التكنولوجيا في دلفي، وآمل أن يتم حل هذا الموقف في أقرب وقت ممكن.
تستخدم دلفي وC++Builder نفس الواجهة الخلفية، لكن بورلاند لم يدمج اللغتين منذ البداية في بيئة تطوير متكاملة مثل الاستوديو، بحيث يدعم نفس النمط (وحتى الوظيفة) IDE لغة يتم استخدام النكهات المختلفة كنقطة بيع ترويجية، وهو ما يحيرني. أظن أن هذا إما قرار سيئ أو إشارة إلى أن بورلاند يفتقر إلى الموارد الكافية.
بالنسبة للمبرمجين المنخرطين في تطوير برمجيات المؤسسات والمهووسين بـ C++، فإن C++Builder هو بلا شك المفضل لديهم :)
إذا كنت مبرمج دلفي، وإذا كنت معتادًا على لغة C#، فسوف تفهم أنه بالإضافة إلى اعتماد لغة C# على بناء جملة نمط C/C++، وبصرف النظر عن حقيقة أن الكثير من الناس يقولون أن لغة C# هي نسخة من Java، فقد تطورت لغة C# من دلفي، بالاعتماد على عدد كبير من أفكار تصميم اللغة.
أعتقد أنه عندما صمم Anders Hejlsberg لغة C#، كان يفكر بشكل غريزي أولاً في Object Pascal بدلاً من Java. انظر إلى تطبيق C# الموجه للكائنات للتنفيذ الفردي والميراث متعدد الواجهات؛ وانظر إلى بنية معالجة الاستثناءات/التقاط/أخيرًا (أعلم أن الكثير من الناس سيقولون أن كل هذه الأشياء تأتي من Java)؛ انظر إلى مفهوم الخصائص (I أعلم أن بعض الأشخاص سيقولون أن هذا يأتي من Visual Basic)؛ انظر إلى الكلمة الأساسية تجاوز... يمكن أن نستنتج تقريبًا أن كل هذا يأتي من Object Pascal في المقام الأول.
وغني عن القول أن دلفي يجب أن تدعم .NET.
في مجال أدوات تطوير النظام الأساسي .NET، حاليًا فقط شركة دلفي يمكنها التنافس مع Microsoft Visual Studio .NET.
على نظام التشغيل Windows، هناك دائمًا أشخاص لا يحبون Microsoft، ولكن معظم هؤلاء الأشخاص ما زالوا يرغبون في الانتقال إلى .NET، ويعتبر Delphi .NET بديلاً مثاليًا.
دلفي .NET مثير.