ملفات مشروع ديلفي
يتكون مشروع ديلفي من عدة أهمها
1- ملف المشروع والذي يحوي وحدات المشروع له الامتداد .dpr ويمكنك إظهاره باختيار أمر Project|View Source لاتقم بتعديل الملف مالم تعرف ما تفعله بالضبط.
2- ملف الوحدة: ويحوي شيفرة المصدر وله الامتداد pas. وهو الذي تضيف إليه البرمجة.
3- ملف النموذج: ويحتوي على تفصيلات النموذج Form يتغير كلما تغير النموذج بإضافة العناصر أو حذفها أوتعيير خصائصها أو خصائص النموذج نفسه
هذه الملفات الازمة لبناء البرنامج ،هناك عدة ملفات ينشئها ديلفي لا يهمنا شرحها الآن.
محتوى مشروع ديلفي:
يجب أن يتبع مشروع ديلفي تنسيقاً معرفاً مسبقاً لكي يستطيع المترجم قراءته ويناء البرنامج .
يحتوي مشروع ديلفي على الكلمة Program متبوعاً باسم المشروع وكتلة أوامر محصورة بين Begin..End;
تشاهد قسماً محددا بالكلمة الأساسية وكل أسماء الوحدات التي تظهر بعد uses وحتى الفاصلة المنقوطة هي الوحدات المتطلبة للمشروع أو الوحدة بالترتيب.
لنلق نظرة على وحدة باسكال اختر الأمر File|New ثم اختر Unit سينشئ ديلفي وحدة جديدة .
هذه الوحدة تبدأ بكلمة Unit ويتبعا اسم الوحدة وتظهر الكلمة End في آخر الوحدة تختلف هذه الشيفرة عن السابقة بأنها تحتوي على مقاطع Interface , Implementation والوحدة غير الرئيسية في المشروع يجب أن يحتوي على هذين القسمين لاتجد كلمة begin هذة الوحدة لأنها غير قابلة للتفيذ بدون ملف المشروع.
القسم Interface
يتم في هذا القسم تعريف الإجراءات والتوابع والمتغيرات والكائنات والتي تستخدم من خارج الوحدة أي تستدعى من وحدات أخرى من وحدات المشروع ينتهي القسم بالقسم الذي يليه.
القسم Implementation
وهو قسم التنفيذ للوحدة ويحتوي على الشيفرة الفعلية للوحدة يتم تعريف الروتين (الإجراء أو التابع أو اصطلح ماشئت ) أو المتغير في القسم Interface
وكتابة برمجته الفعلية في هذا القسم .
القسمان Initializition , finalization
يستخدم القسم Initializition لإعداد (تعيين) القيم الابتدائية للمتغيرات أو بناء الكائنات وشحنه إلى الذاكرة ويقوم القسم finalization بهدم الكائن وتحرير الذاكرة منه ، لا يوجد قسم finalization بدون Initializition مع أن كلا القسمين اختياريين.
كلمات أساسية إضافية مستخدمة في الوحدات:
كلمة const :وتستخدم لتعريف ثوابت معرفة لايمكن تغييرها أثناء سير البرنامج.
كلمة type :وتستخدم لتعريف أنواع جديدة يستخدمها البرنامج.
كلمة var :وتستخدم للتصريح عن متغيرات ضمن شيفرة البرمجة.
يمكن أن تكتب تعليقات داخل البرنامج ليسهل قراءته أو لتذكر الهدف من أوامر معينة وينصح بالتعليق على البرامج خاصة إذا كنت تطور البرنامج لفترات طويلة أو كان من يقوم يقوم بتطوير البرنامج مجموعة أشخاص استخدم القوسان { } للعبارات المكتوبة بينهما وأيضا (* *) وأيضا العلامتان // للسطور ،حيث يبدأ التعليق من العلامتان إلى نهاية السطر مع العلم بأن القوسان { } لهما استخدام آخر في ديلفي مع وجود $ وتستخدم كتوجيهات للمترجم مث}$HINTS OFF}وغيرها.
المتغيرات
يجب التصريح عن المتغيرات قبل استخدامها ويتم ذلك في قسم خاص من الشيفرة تبدأ بالكلمة var مثال:
<BLOCKQUOTE> <font> كود: </font> <div align="ltr"> <center> <table border="0" width="80%" dir="ltr" bgcolor=="#000000"> <tr> <td width="100%"> <pre> <font color="#ffffff">

var
x:Integer;
y:Integer;
</font> </pre> </td> </tr> </table> </center> </div> </BLOCKQUOTE>
يمكنك وضع قسم var في روتين وهذا يتيح لك التصريح عن المتغيرات في الروتين كالآتي :
<BLOCKQUOTE> <font> كود: </font> <div align="ltr"> <center> <table border="0" width="80%" dir="ltr" bgcolor=="#000000"> <tr> <td width="100%"> <pre> <font color="#ffffff">
proceder TForm1.Test;
var
s: string;
begin
s:='Hellow World';
Label1.Caption:=s'
end;
</font> </pre> </td> </tr> </table> </center> </div> </BLOCKQUOTE>
التصرح عن متغير يحجز مكان في الذاكرة الموقتة لتخزين قيمة المتغير أثناء تنفيذ البرنامج .
تخضع أسماء المتغيرات لقواعد ، يمكن استخدام الحرف الصغير والكبير والأرقام والخط السفلي (_) ولايحتوي على مسافات أو محارف خاصة ويجب أن لا يبدأ إسم المتغير برقم لاتوجد قيود على طول الإسم ولكن في الواقع سيقوم المترجم يتجاهل ما بعد 255 حرف . وفي الواقع إذا تجاوز طول الإسم عن 20 حرفاً فإن هذا لن يكون مفيداً
أمثلة للأسماء المقبولة :
aVaryLongVaribleName:Integer;
my_var1:Integer;
x:=Integer;
ملاحظة : لغة باسكال ليست حساسة لشكل الحرف كبير أو صغير.
----------------------------------------------------------------------
أنواع المتغرات ومجالاتها
----------------------------------------------------------------------

اسم المتغير نوعه حجمه المدى من إلى

ShortInt عدد صحيح قصير 1 -128 127
Byte عدد صحيح قصير موجب 1 0 255
Char حرف 1 0 255
WideChar حرف خاص 2 0 65535
SmallInt عدد صحيح صغير 2 -32768 32767
word رقم صحيح صغير موجب 2 0 65535
LongInt رقم صحيح طويل 4 -2,147,483,648 2,147,483,647
Integer رقم صحيح طويل 4 -2,147,483,648 2,147,483,647
Int64 رقم صحيح 46 بت 8 -9,223,372,036,854.775,808 9,223,382,036,854,775,807
Cardinal عدد صحيح طويل موجب 4 0 2,147,483,647
Single عدد حقيقي 4 1.5×10أس-45 3.4×10أس38
Double عدد حقيقي مضاعف الدقة 8 5.0×10أس-324 1.7×10أس308
Real مثل النوع Double الحجم 8 الجديد في النسخة 4 من ديلفي
Extended عدد حقيقي 10 3.4×10أس-4932 1.1×10أس4932
Currency عدد حقيقي مالي 8 -922,337,203,685.5808 922,337,203,685.5807
Boolean منطقي 1 True or False
variant متنوع 16

------------------
أبو ماجد الصارم
azzozhsn@hotmail.com

[b]<small><small>[ تم تعديل الموضوع بواسطة &nbsp; أبو ماجد الصارم &nbsp; يوم &nbsp; 21-05-2000]