• 0
أحمد أبو عبد البر

الدرس الأول في لغة Object Pascal

سؤال

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

 

نبتدأ إن شاء الله وبعون الله هذه الدورة التي نسأل الله أن يوفقنا لإتمامها

 

الدرس الأول

 

سوف نستخدم في هذه الدورة إن شاء الله بيئة لازاراس وفري باسكال كما سبق ذكره، ويمكن الحصول عليه من هذا الموقع: lazarus.freepascal.org

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

 

 

yum install lazarus 

 

في فيدورا أو مايشابهها من توزيعات لينكس، أو بإستخدام

 

 apt-get install lazarus

 

في توزيعة Ubuntu أو مايشابهها.

 

وأما مستعملو ويندوز فيمكنهم التحميل من الموقع نفسه وتثبيته كما يثبت أي برنامج بضغطتين

 

واللازاراس هو عبارة عن برنامج حر ومفتوح المصدر كما ذكرنا، ويوجد في أكثر من منصة نظام تشغيل. الكود والبرامج المكتوبة به يمكن نقلها لإعادة ترجمتها وربطها (Compilation and linking) في أي منصة يريدها المبرمج، إلا أن البرنامج الناتج (الملف الثنائي executables) لايمكن نقله، فهو مربتط فقط بالمنصة التي قام المبرمج بترجمة وربط برنامجه فيها حيث أن اللازاراس وفري باسكال ينتج عنه ملفات ثنائية تنفيذية تعمل مباشرة على نواة نظام التشغيل ومكتباتها ولاتحتاج لوسيط مثل برامج الجافا والدوت نت، لذلك فهو يتفوق على هذه اللغات بالسرعة في التنفيذ وعدم إحتياج مكتبات إضافية في الأجهزة التي سوف يتم تثبيت برامج لازاراس بها.

 

إستخدام البيئة النصية

 

الفصول الأولى من هذا الكتاب تستخدم إمكانات الإدخال والإخراج البسيطة والأساسية التي تسمى بالطرفية console أو البيئة النصية Text mode، وذلك لبساطتها وتوفرها في كل أنظمة التشغيل وسهولة فهمها.

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

وفي الفصول المتقدمة سوف نستخدم إن شاء الله البيئة الرسومية ذات الواجهة المحببة للمستخدم العادي.

 

 

برنامجك الأول

 

بعد تثبيت اللازاراس وتشغيله، نقوم بإنشاء برنامج جديد باستخدام الأمر التالي من القائمة الرئيسية:

 

Project/New Project/Program

 

لنحصل على الكود التالي في الـ Source Editor:

 

 

program Project1;{$mode objfpc}{$H+}uses  {$IFDEF UNIX}{$IFDEF UseCThreads}  cthreads,  {$ENDIF}{$ENDIF}  Classes  { you can add units after this };{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}beginend. 

 

 

بعد ذلك نحفظ البرنامج عن طريق File/Save من القائمة الرئيسية، في مجلد معروف بالنسبة لنا، ثم نسميه مثلاً first.lpi

 

بين عبارتي begin end. نقوم بكتابة الأوامر التالية:

 

 

 

Writeln('This is Free Pascal and Lazarus'); Writeln('Press enter key to close'); Readln;

 

 

 

 

 

ليصبح البرنامج الكامل كالآتي:

 

program first;{$mode objfpc}{$H+}uses  {$IFDEF UNIX}{$IFDEF UseCThreads}  cthreads,  {$ENDIF}{$ENDIF}  Classes  { you can add units after this };{$IFDEF WINDOWS}{$R first.rc}{$ENDIF}begin  Writeln('This is Free Pascal and Lazarus');  Writeln('Press enter key to close');  Readln;end.

 

عبارة Writeln تقوم بكتابة نص في الشاشة. وعبارة Readln تقوم بتعليق البرنامج حتى يقوم المستخدم بقراءة الأسطر السابقة وإنتظار المستخدم حتى يقوم بالضغط على مفتاح إدخال. بعد ذلك يتنهي البرنامج ويتم إغلاقه.

 

بعد ذلك نقوم بتنفيذ البرنامج عن طريق المفتاح F9 أو بالضغط على الزر:

لنحصل على المخرجات التالية:

 

This is Free Pascal and Lazarus

Press enter key to close

 

بعد تشغيل البرنامج والضغط على مفتاح الإدخال، ينتهي البرنامج ونرجع إلى الحالة الأولى، وهي حالة كتابة الكود. إذا كنا نستخدم نظام لينكس نجد على القرص ملف بإسم first، وإذا كنا نستخدم وندوز نجد ملف بإسم first.exe وهي الملفات الثنائية التنفيذية التي يمكن توزيعها في أي أجهزة أخرى لاتحتوي بالضرورة على لازاراس أو فري باسكال. هذه البرامج تكون عبارة عن برامج تطبيقية طبيعية بالنسبة لنظام التشغيل (Native Applications).

 

ملاحظة

 

إذا لم تظهر مخرجات البرنامج كالسابق (الشاشة السوداء) نقم بتعطيل الـ Debugger كالآتي:

نختار Environment/Options/Debugger من القائمة الرئيسية في لازاراس.

ثم في مربع Debugger type and path نختار (None)

 

=================================================

الدورة منقولة من كتابي الأستاذ الفاضل معتز عبد العظيم وما تراه باللون الأخضر فمن زياداتي

تم تعديل بواسطه أحمد أبو عبد البر
2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

0 إجابة على هذا السؤال .

لاتوجد إجابات على هذا السؤال حتى الآن .


  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .