26.04.2015 Views

البرمجة الغرضية التوجه في دلفي

البرمجة الغرضية التوجه في دلفي

البرمجة الغرضية التوجه في دلفي

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>البرمجة</strong> <strong>الغرضية</strong> <strong>التوجه</strong> <strong>في</strong> دل<strong>في</strong><br />

عروة عيسى<br />

ذلك سيكون ممتازا . غالبا ما يتم تحقيق هذا الحل الوسطي بإستخدام مايعرف بالمناهج الإفتراضية والتي سنأتي على<br />

ذكرها قريبا تحت عنوان التغليف المتأخر وتعددية الأشكال . وربما إذا لم تختر التغليف من هذة الحلول من أجل<br />

تحقيق سرعة <strong>في</strong> كتابة الشفرة مثلا<br />

،<br />

فإنك عندها لن تكون متبع لقواعد <strong>البرمجة</strong> <strong>الغرضية</strong> بشكل جيد<br />

.<br />

دخول بيانات محمية لصنف آخر<br />

محددات الوصول<br />

: Protected Hack<br />

Private<br />

من الممكن الدوران على الموضوع <strong>في</strong> حالة المحدد<br />

و Protected تسمح بالدخول إلى بياناا من نفس الوحدة فقط ، الجدير بالذكر هنا أنة<br />

Protected<br />

والدخول إلى البيانات المحمية الخاصة بصنف ما<br />

.<br />

الطريقة تعتمد على ماشرحناة سابقا<br />

أنه يمكن الوصول إلى البيانات المحمية لصنف من الأصناف المشتقة منه<br />

.<br />

،<br />

لذلك نقوم بإشتقاق صنف جديد من الصنف الذي نريد دخول بياناتة مثلا نشتق الصنف TtestHack من الصنف<br />

،Ttest<br />

وعلى إفتراض المتغير ProtectedData معرف كمتغير محمي ضمن الصنف<br />

Ttest كالتالي :<br />

type<br />

Ttest = class<br />

protected<br />

ProtectedData: Integer;<br />

end;<br />

type<br />

TtestHack = class (Ttest);<br />

فإننا نستطيع أن نستخدم الطريقة التالية لدخول المتغير<br />

: ProtectedData<br />

…<br />

var<br />

Obj: Ttest;<br />

begin<br />

Obj := Ttest.Create;<br />

TtestHack (Obj).ProtectedData := 20;<br />

٣٣

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!