البرمجة الغرضية التوجه في دلفي
البرمجة الغرضية التوجه في دلفي البرمجة الغرضية التوجه في دلفي
البرمجة الغرضية التوجه في دلفي عروة عيسى يتم تعريف الواجهات بالشكل العام التالي : type interfaceName = interface (ancestorInterface) ['{GUID}'] memberList end; type ICanFly = interface ['{EAD9C4B4-E1C5-4CF4-9FA0-3B812C880A21}'] function Fly: string; end; : مثلا . حيث أن تعريف كل من (ancestorInterface) و ['{GUID}'] خياري حسب الحالة ancestorInterface هو الجد الذي سنورث عنة صنفنا . (Globally Unique إختصار ل(Identifier GUID تستطيع تعريف هذا الرقم تلقائيا بضغط Ctrl+Shift+G في محرر دلفي هو رقم معرف يستخدم لتعريف الواجهة بشكل فريد . . كما تلاحظ فإن تعريف الواجهه شبية بتعريف الصنف في كثير من الحالات في الحسبان ، : ولكن توجد بعض الفروقات لوضعها . قائمة العناصر (التي سميناها memberList في الشكل العام للتعريف) يمكن أن تحوي فقط إما مناهج أو خصائص تعريف حقول غير مسموح به في الواجهات بما أنه لاتوجد للواجهه حقول مناهج حتما . فإن محددات ، Read و . كل عناصر الواجهة تكون عامة ليس للواجهة باني أو هادم ، (Public) Write الخاصتان بتعريف الخصائص يجب أن يكونا ولا مجال لتقييد الرؤيا . (constructors or destructors) . يعرفان ضمنها - - - - ٤٣
البرمجة الغرضية التوجه في دلفي عروة عيسى وهذا مثال على تعريف واجهة مأخوذ من دلفي: type IMalloc = interface(IInterface) ['{00000002-0000-0000-C000-000000000046}'] function Alloc(Size: Integer): Pointer; stdcall; function Realloc(P: Pointer; Size: Integer): Pointer; stdcall; procedure Free(P: Pointer); stdcall; function GetSize(P: Pointer): Integer; stdcall; function DidAlloc(P: Pointer): Integer; stdcall; procedure HeapMinimize; stdcall; end; وبعدما تقوم بتعريف الواجهة تستطيع تعريف صنف من أجل إستخدامها بواستطة . type TAirplane = class (TInterfacedObject, ICanFly) function Fly: string; end; مثلا : الآن أصبحنا جاهزين لإستخدام غرض من هذا الصنف الذي يمثل الواجهة ، مع صنف من الواجهة وليس مع الواجهة مباشرة طريقة الإستخدام هي نفسها لإننا نتعامل var Flyer1: ICanFly; begin Flyer1 := TAirplane.Create; Flyer1.Fly; end; : ٤٤
- Page 1 and 2: تم تحميل الملف من م
- Page 3 and 4: البرمجة الغرضية ال
- Page 5 and 6: البرمجة الغرضية ال
- Page 7 and 8: البرمجة الغرضية ال
- Page 9 and 10: البرمجة الغرضية ال
- Page 11 and 12: البرمجة الغرضية ال
- Page 13 and 14: البرمجة الغرضية ال
- Page 15 and 16: البرمجة الغرضية ال
- Page 17 and 18: البرمجة الغرضية ال
- Page 19 and 20: البرمجة الغرضية ال
- Page 21 and 22: البرمجة الغرضية ال
- Page 23 and 24: البرمجة الغرضية ال
- Page 25 and 26: البرمجة الغرضية ال
- Page 27 and 28: البرمجة الغرضية ال
- Page 29 and 30: البرمجة الغرضية ال
- Page 31 and 32: البرمجة الغرضية ال
- Page 33 and 34: البرمجة الغرضية ال
- Page 35 and 36: البرمجة الغرضية ال
- Page 37 and 38: البرمجة الغرضية ال
- Page 39 and 40: البرمجة الغرضية ال
- Page 41 and 42: البرمجة الغرضية ال
- Page 43: البرمجة الغرضية ال
<strong>البرمجة</strong> <strong>الغرضية</strong> <strong>التوجه</strong> <strong>في</strong> دل<strong>في</strong><br />
عروة عيسى<br />
يتم تعريف الواجهات بالشكل العام التالي<br />
:<br />
type interfaceName = interface (ancestorInterface)<br />
['{GUID}']<br />
memberList<br />
end;<br />
type<br />
ICanFly = interface<br />
['{EAD9C4B4-E1C5-4CF4-9FA0-3B812C880A21}']<br />
function Fly: string;<br />
end;<br />
: مثلا<br />
.<br />
حيث أن تعريف كل من<br />
(ancestorInterface) و ['{GUID}'] خياري حسب الحالة<br />
ancestorInterface هو الجد الذي سنورث عنة صنفنا<br />
.<br />
(Globally Unique إختصار ل(Identifier GUID<br />
تستطيع تعريف هذا الرقم تلقائيا بضغط Ctrl+Shift+G <strong>في</strong> محرر دل<strong>في</strong><br />
هو رقم معرف يستخدم لتعريف الواجهة بشكل فريد<br />
.<br />
.<br />
كما تلاحظ فإن تعريف الواجهه شبية بتعريف الصنف <strong>في</strong> كثير من الحالات<br />
<strong>في</strong> الحسبان<br />
،<br />
:<br />
ولكن توجد بعض الفروقات لوضعها<br />
.<br />
قائمة العناصر (التي سميناها memberList <strong>في</strong> الشكل العام للتعريف) يمكن أن تحوي فقط إما مناهج أو خصائص<br />
تعريف حقول غير مسموح به <strong>في</strong> الواجهات<br />
بما أنه لاتوجد للواجهه حقول<br />
مناهج حتما<br />
.<br />
فإن محددات ،<br />
Read و<br />
.<br />
كل عناصر الواجهة تكون عامة<br />
ليس للواجهة باني أو هادم<br />
،<br />
(Public)<br />
Write الخاصتان بتعريف الخصائص يجب أن يكونا<br />
ولا مجال لتقييد الرؤيا<br />
.<br />
(constructors or destructors)<br />
. يعرفان ضمنها<br />
-<br />
-<br />
-<br />
-<br />
٤٣