المشاركة الأصلية بواسطة أحمد أبو عبد البر
مشاهدة المشاركة
بسم الله الرحمن الرحيم
نبتدأ إن شاء الله وبعون الله هذه الدورة التي نسأل الله أن يوفقنا لإتمامهاالدرس الأول
سوف نستخدم في هذه الدورة إن شاء الله بيئة لازاراس وفري باسكال كما سبق ذكره، ويمكن الحصول عليه من هذا الموقع: lazarus.freepascal.org
أو يمكن الحصول عليه من داخل نظام لينكس عن طريق برامج إضافة التطبيقات، حيث نجده في قسم أدوات التطوير، أو عن طريق إستخدام
كود PHP:
yum install lazarus
كود PHP:
apt-get install lazarus
وأما مستعملو ويندوز فيمكنهم التحميل من الموقع نفسه وتثبيته كما يثبت أي برنامج بضغطتين
واللازاراس هو عبارة عن برنامج حر ومفتوح المصدر كما ذكرنا، ويوجد في أكثر من منصة نظام تشغيل. الكود والبرامج المكتوبة به يمكن نقلها لإعادة ترجمتها وربطها (Compilation and linking) في أي منصة يريدها المبرمج، إلا أن البرنامج الناتج (الملف الثنائي executables) لايمكن نقله، فهو مربتط فقط بالمنصة التي قام المبرمج بترجمة وربط برنامجه فيها حيث أن اللازاراس وفري باسكال ينتج عنه ملفات ثنائية تنفيذية تعمل مباشرة على نواة نظام التشغيل ومكتباتها ولاتحتاج لوسيط مثل برامج الجافا والدوت نت، لذلك فهو يتفوق على هذه اللغات بالسرعة في التنفيذ وعدم إحتياج مكتبات إضافية في الأجهزة التي سوف يتم تثبيت برامج لازاراس بها.
إستخدام البيئة النصية
الفصول الأولى من هذا الكتاب تستخدم إمكانات الإدخال والإخراج البسيطة والأساسية التي تسمى بالطرفية console أو البيئة النصية Text mode، وذلك لبساطتها وتوفرها في كل أنظمة التشغيل وسهولة فهمها.
ربما يمل الطالب منها ويتمنى أن يقوم بعمل برامج تستخدم الشاشة الرسومية بما تحتويه من أزرار ونوافذ وقوائم ومربعات نصية وغيرها، إلا أننا أحببنا أن لاينشغل الطالب بشيء ويركز على المفاهيم الأساسية التي سوف يستخدمها في البرامج النصية البسيطة وسوف يستخدمها في البرامج الرسومية المعقدة إن شاء الله. بهذه الطريقة يكون الفهم سهلاً وسريعاً لأساسيات الباسكال والبرمجة.
وفي الفصول المتقدمة سوف نستخدم إن شاء الله البيئة الرسومية ذات الواجهة المحببة للمستخدم العادي.
برنامجك الأول
بعد تثبيت اللازاراس وتشغيله، نقوم بإنشاء برنامج جديد باستخدام الأمر التالي من القائمة الرئيسية:
Project/New Project/Program
لنحصل على الكود التالي في الـ Source Editor:
كود PHP:
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}
begin
end.
بين عبارتي begin end. نقوم بكتابة الأوامر التالية:
كود PHP:
Writeln('This is Free Pascal and Lazarus');
Writeln('Press enter key to close');
Readln;
ليصبح البرنامج الكامل كالآتي:
كود PHP:
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)
=================================================
الدورة منقولة من كتابي الأستاذ الفاضل معتز عبد العظيم وما تراه باللون الأخضر فمن زياداتي