العودة إلى  مدرسة الكمبيوتر   قسم البرمجة    الصفحة الأولى

أيهما أفضل Visual Basic  أو Delphi ؟

 

يزداد الطلب يوماً بعد يوم على التطبيقات البرمجية والخدمية المتوافقة مع نظام التشغيل Windows ومختلف أنظمة التشغيل الأخرى . أدى هذا لزيادة حاجة المبرمجين والمطورين لامتلاك لغات برمجة وأدوات برمجية متطورة تساعدهم على تقديم المطلوب بسرعة أكبر وبأقل زمن ممكن . وأصبح التركيز على تطوير أدوات تطوير التطبيقات السريعة Rapid Application Development ( RAD ) هو الهم الشاغل ونقطة الفصل لمجمع المؤسسات والشركات العاملة في حقل التطوير البرمجي . www.tartoos.com

الجيل الأول من الأدوات البرمجية الخدمية RAD المتوافقة مع نظام التشغيل Windows . ضم تطبيقات أطر العمل ( framework ) مثل : OWL و MFC قادرة على الدمج بين قوة وفعالية المتصرفات التقليدية ( 3GL)  3GL compilers وميزات المتصرفات 4GL من سهولة وسرعة في بناء التطبيقات . www.tartoos.com

يقدم لنا هذا المقال عرضاً توضيحياً للتقانات الجديدة المستخدمة في بناء التطبيقات البرمجية والخدمية بواسطة لغات البرمجة Microsofts Visual Basic و Delphi والفوارق الأساسية بين هاتين اللغتين . www.tartoos.com

التطور المرئي لنظام Windows

www.tartoos.com

اعتمدت المنهجية الأولى في برمجة التطبيقات المتوافقة مع نظام التشغيل Windows على الترميز المباشر باستخدام أوامر الاستدعاء ( call) لتطبيقات الواجهات البرمجية API  المدمجة مع نظام التشغيل Windows  

تقدم تطبيقات API تقنيات وآليات أولية لبناء العديد من الأدوات مثل قوائم الأوامر وأنواع النوافذ المختلفة . تاركة المطور يغوص في كم هائل من الرموز حتى لو قام ببناء أسهل التطبيقات وأبسطها الأجيال الأولى من هذه البرامج كتبت باستخدام اللغة c التي تعتبر بحد ذاتها لغة برمجة بدائية بالنسبة للغات والتقانات الموجودة في أيامنا هذه . وكنتيجة حتمية لهذا ، نجد أن كل ما أنتجه المطورون المحترفون بقي محدود وضعف الإمكانيات أيضاً . نجد أن التطبيقات الأولى وبأغلب مكوناتها مستقلة عن التطبيقات الأخرى ، كما نجد عدم وجود تكامل وتوافق بين مختلف التطبيقات . الأمر الذي أدى لعدم التمكن من المشاركة في البيانات والتخاطب فيما بينها . www.tartoos.com

مع التقدير الكامل للجهود التي قدمها القائمون على نظام Windows إلا أن مجمع المطورين كان يطلب أدوات برمجية أفضل . بهدف دعم إنتاجهم وتسهيل خلق وبناء تطبيقات أكثر تطوراً وتعقيداً . ومع تطور نظام Windows . ظهرت أدوات برمجية جديدة تلبي حاجة الاتصال بين التطبيقات مثل DDE و OLE .

وتوالي إنتاج العديد من الأدوات البرمجية القوية والفعالة من قبل العديد من الشركات الأخرى مثل  Borland,s OWL و Microsoft,s MFC . كما ظهرت منتجات الجيل الثالث مثل z APP وIsland Systems object – Menu .

استخدمت هذه المكاتب لتجميع الوظائف الأكثر شيوعاً من بين تطبيقات نظام Windows . كما توخت أيضاً توفير حجوم إضافية من أجل التطوير المستقبلي وهكذا يستطيع المبرمجون وبسرعة بناء نوافذ وأطر ذات مواصفات وأنماط مختلفة ، وتتضمن العديد من مفاتيح الأوامر . وطلبها وإظهارها بواسطة أمر بسيط أيضاً . ظهورمتصرف c++ الموافق لنظام Windows سمح الخبراء البرمجة باستكشاف قوة وفعالية التقانة الغرضية التوجه ( Object- Oriented Technology ) . وأصبح بإمكان المطورين الآن بناء تطبيقات معقدة بأزمان مقبولة . www.tartoos.com

تسمح لغات البرمجة غرضية التوجه للمطورين ببناء الصفوف ( Classes) والهيمنة على وظائف افتراضية محددة . فاسحة المجال وبشكل مباشر لبناء مكاتب حسب الطلب . www.tartoos.com

إن هذا التطور لاحقاً لإطلاق المرحلة التالية من مراحل تطوير نظام Windows وتطبيقاته ، واتسمت هذه المرحلة ببيئات  التصميم المرئي4GL   ( visual design environments   مثل Microsoft Visual Basic و Powersofts PowerBuilder قدمت هذه البيئات خطوات أساسية نحو الأمام باتجاه تطور الأدوات البرمجية الأمنية السهلة الاستخدام .

ومع تزايد الطلب على تطبيقات نظام Windows وسع المطورون حدود التقانات المستخدمة بغية التمكن من بناء مشاريع برمجية أكبر وأعتقد مثل تطبيقات المخدّم / زبون ( client/ server )

وتعددت المجموعات البرمجية المرئية التي تقدم التسهيلات والإمكانات لبناء مختلف أنواع المشاريع مهما كانت درجة تعقيدها . وأصبح بدلاً من وجود ضوابط وصفات تميز كل مجموعة برمجية وتحدد نقاط قوتها ونقاط ضعفها . www.tartoos.com

في مقالنا هذا سنقوم بعرض الفوارق بين اللغات البرمجية Delphi و Visual Basic وفقاً للنقاط الأساسية التالية :

·        الأداء ( Performance )

·        تطوير التطبيقات السريعة RAD

·        إعادة استخدام المكونات ( Component Reuse )

·        قواعد بيانات قابلة للتوسيع ( Database Scalability )

الأداء

يعتبر أداء التطبيقت المنتشرة في الأسواق وبين المستخدمين المفتاح الرئيسي للتنافس بين الشركات البرمجية . وبالتحديد للتطبيقات الكبيرة مثل تطبيقات المخدّم / زبون .

الدلفي Delphi هي لغة برمجية بنيت بالإعتماد على لغة البرمجة Object Pascal التي هي جيل متطور عن اللغة Borland Pascal 7.0 بينما الفيجوال بيسيك Visual Basic يستخدم اللغة Microsoft Basic كلغة قاعدية .

أداء الدلفي أفضل بسبب أنه يولد ملفات تنفيذية مكتملة . أما الفيجوال شفرة نصف مترجمة . تطبيقات الدلفي تنفيذها أسرع بحوالي 10 إلى 20 مرة من تطبيقات الفيجوال بيسيك وحجمها أصغر بحوالي 30 % مما يسمح بتحميل أسرع وأداء افضل .

كما أن الدلفي يستطيع تصريف ملفات تنفيذية مستقلة ( EXEs) فإنه أيضاً يستطيع توليد ملفات المكاتب المرتبطة ديناميكياً ( DLLs ) كما يقدم الدلفي أيضاً ميزة أخرى للمبرمجين المحترفين بتمكينهم من البرمجة المباشرة بواسطة لغة التجميع (Assembler) للتحكم المباشر بالمالجات الصغرية ( microprocessor )

www.tartoos.com

تطوير التطبيقات السريعة RAD

جانب آخر من جوانب ميزات الأداء يتعلق بسرعة تطوير التطبيق ، العنصر الحيوي جداً بالنسبة للمبرمجين لتأكيد وجودهم وسرعة تطوير منتجهم في السوق . مزايا بيئة RAD هي مفتاح توطيد مدى سهولة استخدام المبرمجين لهذه البيئة لتطوير تطبيقاتهم انطلاقاً من التصاميم والنماذج الأولية وانتهاءً بالتنفيذ والنشر .

كلا اللغتان الدلفي والفيجوال بيسيك منتسبتان لهذا المنهج العام . مما يجعل المنتجات تبدو ظاهرياً متشابهة . ومع ذلك . هناك العديد من نقاط الدعم تقدمها الدلفي لهذه العملية ، متضمنة :

·        مجموعة إضافية متعددة منفصلة من الأيقونات التحكمية الخدمية .

·        مجموعة متنوعة من نماذج المشاريع العادية ومشاريع الخبراء .

·        دعم ضبط لوائح خصائص المشروع .

·        المشاركة بوظائف الحدث .

·        نوافذ واجهات رسومية متكاملة لمنقح الأخطاء ( debugger ) والتفتيش الغرضي ( object inspection ) ) .

إعادة استخدام المكونات

أحد أكثر حقول التطور أهمية في منهجية تطوير التطبيقات هو فكرة بناء تطبيق ما باستخدام مكونات عالية المستوى ( high- level components) بواسطة ربط مكونات مبنية سابقاً . يحتاج المطور فقط لتعريف آلية الربط بين المكونات التي تحد هوية هذه المكونات وهوية التطبيق المنتج .

نجد هنا أيضاً أن كلا من الدلفي والفيجوال بيسيك يوفران طرقاً مختلفة للمشاركة ولإعادة استخدام المكونات والرموز : ويمتاز الدلفي مجدداً بأنه يقدم حلولاً أرقى وأسهل .

موضوع إعادة استخدام المكونات يمكن أن يظهر ضمن ثلاث مناطق :

·        مشاركة وظائف الحدث .

·        إعادة استخدام الوظائف والمكاتب .

·        إعادة استخدام كتل البناء ( المكونات ) .

www.tartoos.com

مشاركة وظائف الحدث

هناك مشكلة عامة ملاحظة في برمجيات Windows وهي كيف يمكن مشاركة وظيفة ما تم تنفيذها بعد حدوث عدة أحداث تابعة لنظام Windows . وعلى الرغم من تشابه الحلول بين الدلفي والفيجوال بيسيك . نجد أن الدلفي يمتاز عن الفيجوال بيسيك ببعض الحلول . www.tartoos.com

في الفيجوال بيسيك يجب وضع الوظائف المشتركة ضمن الشفرة التابعة للملف أو ضمن الملف العمومي BAS و المشكلة هنا أن الوظيفية أصبحت عامة للمشروع بشكل كامل .

على العكس ، يسمح الدلفي بوضع الوظيفة ضمن الملف الخاص أو ضمن ملف وحدة باسكال DCU الذي يحجب تعريفه فقط ضمن الملف الذي سيستخدمه .

www.tartoos.com

إعادة استخدام الوظائف والمكاتب

في الفيجوال بيسيك ، الوظائف أو المكاتب العمومية يتم إنجازها ضمن ملف عمومي BAS . حيث يمكن التعامل معها من أي ملف ضمن المشروع سيئة هذا الحل أن الوظائف المشتركة يجب أن تكون عمومية لجميع ملفات المشروع . وبالمقابل . يقدم الفيجوال بيسيك ميزة الاستفادة من الملفات المبنية بتقانة DLL .

لكن ملفات DLL يتم بناؤها باستخدام أدوات برمجية أخرى لا تنتمي للفيجوال بيسيك والتي تتطلب معرفة إضافية لكيفية استخدام هذه البمجيات . www.tartoos.com

جميع مكاتب وأدوات الدلفي يمكن بناؤها ضمن محيط عمل الدلفي شفرة الباسكال تنظم ضمن وحدات ( Units ) . والوظائف المشتركة يتم لدخول إليها ببساطة بالتوجه لوحدة الباسكال الخاصة بهذه الوظيفة . يمكن أيضاً استخدام الدلفي لبناء ملفات DLL عالية الأداء مخصصة لنظام Windows .

www.tartoos.com

العناصر والمكونات ( Components )

العناصر VBXS يمكن أن تطور وظيفياً للفيجوال بيسيك بحيث يمكن استخدامها ضمن مختلف أنواع المشاريع . لكن أسوأ مشاكل ال VBXS هي التعقيد الكبير في بناءها وعدم إمكانية بنائها ضمن محيط عمل الفيجوال بيسيك . الطريقة الشائعة لبناء ال VBXS هي استخدام متصرفات C/C++ لبناء ملفات DLL ثم تغليفها بصيغة VBX .

عناصر الدلفي سهلة البناء على عكس الفيجوال بيسيك . حيث يتم بناء ال VBXS باستخدام متصرفات خارجية . يتم بناء عناصر الدلفي ضمن بيئة تطوير الدلفي نفسه هذه ميزة هامة ، لأن المطورين المحترفين يفضلون العمل ضمن بيئة تضم مجموعة أدوات متناسقة . www.tartoos.com

لغة البرمجة www.tartoos.com

الفرق الواضح بين الفيجوال بيسيك والدلفي يتجلى بشكل أساسي بلغة البرمجة إن استخدم لغة الباسكال الغرضية ( Object Pascal ) له العديد من النقاط الهامة :

·        اللغة باسكال أقوى وأكثر هيكلية من البيسيك .

·        لغة باسكال الغرضية هي حقاً لغة برمجة غرضية التوجيه . توفر مزايا التوارث ( inheritance) )والتغليف ( encapsulation)  وتعددية الأشكال ( polymorphism) .

·        باسكال لغة متصرفة داعمة للمهام التنفيذية عالية الأداء .

·        تنظيم الملفات كوحدات DCUs يوفر آلية نظيفة لخلق وبناء مكاتب الرموز التي يمكن إعادة استخدامها .

·        لغة باسكال الغرضية تستخدم أسرع تقنية متصرف تجارية موجودة عالمياً .

·        لغة باسكال الغرضية توفر إمكانية البرمجة باستخدام لغة التجميع للحصول على أفضل أداء .

وكفارق أخير . في الفيجوال بيسيك كل الملفات يجب أن تربط باستمارة عمل ( form ) ما عدا الملفات العام BAS . بينما في الدلفي ، نجد أن الملفات يمكن أن تكون مستقلة غير مرتبطة بأي استمارة فاسحة المجال للتركيز الجيد على روح الوظيفية . www.tartoos.com

منهجية التصميم البرمجي الغرضي التوجه

إن قوة مرونة منهجية التصميم البرمجي الغرضي التوجه مطلوبة على نطاق واسع كحل مثال للمعضلات البرمجية الحقيقية المعقدة . يقدم التصميم الغرضي التوجه القاعدة الصلبة المتينة و فن البناء الرائع لمختلف أنواع التطبيقات . بعض مزايا البرمجة الغرضية التوجه OOP ( Object – Oriented Programming) :

·        أزمان تطوير قصيرة .

·        شفرة يمكن فهمها ومتابعتها بسهولة .

·        شفرة يمكن مشاركتها مع بنى برمجية أخرى ضمن المشروع .

·        تسهيل كبير لفريق البرمجة والتحكم بالإصدار .

·        باستخدام صفات التوارث وتعددية الأشكال ، عملية الترميز تصبح سهلة جداً والشفرة بحد ذاتها تصبح واضحة وأكثر أنسجاماً .

·        يمكن أن تدمج التطبيقات العديد من الوظائف التي تبدو متشابهة ولكن كلاً منها يملك صفة مميزة .

لغة باسكال الغرضية هي لغة هيكلية لغة برمجة غرضية التوجه . تقدم دعماً كاملاً لبنية الصفوف . التوارث . الوظائف الإفتراضية والتعددية الشكلية . بينما الفيجوال بيسيك ليست لغة برمجة غرضية التوجه .

لاحظ أنه على الرغم من أن المطورين والمبرمجين العاديين ليسوا بحاجة للتأقلم مع مفاهيم اللغة الغرضية التوجيه لبناء تطبيقاتهم بواسطة الدلفي ، إلا أن المحترفين منهم سيقدرون مزاياها كثيراً .www.tartoos.com

 قابلية توسع قواعد بيانات

البيئة الجيدة لتطوير التطبيقات السريعة RAD  يجب أن تساعد على انتشار وبناء تطبيقات قواعد البيانات ، الفيجوال بيسيك والدلفي غير مستثنيين من هذه القاعدة .

في الفيجوال بيسيك ، يستطيع المطورون وضع عنصر قاعدة البيانات ضمن استمارة عمل يتحكمون من خلالها خصائص هذا العنصر ليتمكن من التخاطب مع قواعد بيانات أخرى متوافقة مع قواعد بيانات ODBC . عنصر قاعدة البيانات يمكن استخدامه كآلية أولية لتصفح قاعدة البيانات . كما يمكن أيضاً استخدام تعليمات SQL أيضاً يمكن التعامل مع التقارير بواسطة أداة Crystal Reports  .

الدلفي يضم دعماً كاملاً لقواعد البيانات شاملاً محرك قاعدة بيانات ( BDE) Borland Database Engine المخصص للتعامل مع قواعد بيانات Paradox و Dbase وطبقات خاصة للتعامل مع SQL المحلية والبعيدة . www.tartoos.com

تقدم هيكلية قواعد قواعد بيانات Borland للمطورين إمكانيات عالية للتعامل بيانات ODBC . يضم الدلفي العديد من عناصر التعامل مع قواعد البيانات وعناصر الاتصال مع المستخدم لتقديم حلول فعالة وقوية لبناء تطبيقات قواعد البيانات . يضم أيضاً أدوات التعامل مع SQL وأدوات بناء التقرير . www.tartoos.com

الانتقال إلى الدلفي www.tartoos.com

مطورو تطبيقات الفيجوال بيسيك الراغبون بنقل تطبيقاتهم إلى الدلفي ، نقول لهم أنه هناك بعض الجهد والعناء الذي يجب بذله لنقل التطبيقات الموجودة المبنية ضمن بيئة الفيجوال بيسيك إلى بيئة الدلفي في حال الرغبة بالاستمرار بتطوير هذه التطبيقات ضمن بيئة الدلفي . نقل المشاريع هو في الحقيقة عملية جميلة مباشرة. نذكر هنا أداة تحويل متوفرة من Earth Trek, Inc تقوم بمعظم عمليات التحويل بما فيها ملفات المشروع ، ملفات المستندات وتحويل الشفرة . تتمم هذه الأداة جميع عمليات التحويل أتوماتيكياً تاركةً بعض العناصر البرمجية الغامضة ضمن حقل خاص لنتائج التحويل ليتم تدقيقها ، العديد من المشاريع يتم تحويلها ببساطة و سرعة ودون جهد يذكر ، بعضها ربما يحتاج القليل من الوقت لإتمام عملية التحويل . www.tartoos.com

الخاتمة www.tartoos.com

عند اختبار منتجات مختلفة من تطبيقات RAD موجودة في الأسواق ، نجد أن كلا من الفيجوال بيسيك والدلفي يبرزان ضمن أهم الشركات الرائدة في هذا المجال . ونجد أن الدلفي يبرز بشكل واضح كبيئة تطوير تنتمي للجيل القادم بأدائها العالي ، مقدرتها العالية على تبسيط التصميم المرئي ( visual design) أغناها بالعناصر والمكونات وقواعد البيانات التي يمكن توسيعها وإعادة استخدامها ، أنجزت الدلفي هدفها بالوصول إلى المراتب الأولى كبيئة تطوير تطبيقات قوية وفعالة بالدمج بين :

-         فن التصميم المرئي .

-         قوة ومرونة اللغة الغرضية التوجه .

-         أسرع متصرف موجود عالمياً .

-         تقانة قواعد بيانات رائدة .

وأكثر من ذلك .  بواسطة لغة باسكال الغرضية ، منحت دلفي المطورين مزايا كاملة لبيئة برمجية قوية فعالة دون التضحية بسرعة التطوير المرئية . و بالتالي سمحت ببناء تطبيقات مخدم / زبون بالغة التعقيد ضمن أزمان قياسية .

 

 طباعة المقال العودة إلى  مدرسة الكمبيوتر   قسم البرمجة    الصفحة الأولى
Syria
سورية
Amrit
عمريت
أرواد
طرطوس
صور من طرطوس
صور من سورية
للسيدات فقط
معجم الكمبيوتر
أدب وفكر
المجلة الطبية
المعلومات العامة
لمحة عن طرطوس
الموضة النسائية
مدرسة الكمبيوتر
 © 2002-2012 LBCInformation Corporation. All rights reserved م حنا عطا لحود.