هناك أنواع عديدة من أنواع البرمجة
الذي كانت مجتاحة وسط تطوير البرمجيات و
النظم و كان أشهرها البرمجة الهيكلية و
لكن مع مرور الأيام و مع كبر البرمجيات و
ظهور الحاجة إلى وسيلة أكثر سهولة في
تطوير البرمجيات برزت إلى القمة طريقة
البرمجة الموجهة نحو الهدف و ينبع نجاح
هذه الطريقة إلى سبب واحد على الأرجح و هو
استنباطها من قوانين الطبيعة فهناك في
الطبيعة حيوانات و هذه الحيوانات أنواع
مختلفة قد يرث بعضها صفات البعض الأخر (
على سبيل المثال إنظر إلى القط و النمر
ماذا تلاحظ ؟ ) فكل من هذه الكائنات له
تصرفات ( في لغة البرمجة تسمى وظائف (function،behaviours،methods)
) و له أيضا أعضاء ( في لغة البرمجة
متحولات أو متغيرات (variable)
أما في فلاش فتدعى صفات (properties)
)
مثال
:-
إنسان class
أحمد كائن من الإنسان (objects)
مثال
قط class
قطتي كائن من القطط (objects)
و هكذا كلما تعرف صف جديد (class)
فأنك تعرف سلوكه(methods)
و صفاته (properties)
مثل الحقيقة تماما فعلى سبيل المثال عند
تعرف الإنسان بصفة عامة فأنت تعرف سلوكه
مثل المشي و الكلام و النظر و صفاته مثل
لون الشعر الطول العرض و غيره من الصفات ،
بصفة عامة تخيل أنك في العالم حقيقي و
الكائن المنشأ من الإنسان على سبيل
المثال سمير
يسمى (instance)
أو (object)
.
الكائنات في هذه اللغة تنقسم إلى
قسمين أو بأصح يمكن تمثيلها بطريقتين
الطريقة الأولى هي تمثيلها كبيانات و هي
الطريقة المذكورة بالأعلى أما الطريقة
الثانية فهي تمثيلها بصورة رسومية في
منطقة العمل على هيئة أفلام قصير (movie
clips) ، أما في الحقيقة
فإنها كائنات من صف معرف سابقا و هو (MovieClip)
و كل كائن من هذه الكائنات سواء كان ممثلا
بطريقة بيانات أو بطريقة رسومية يملك
صفاته أو خاصائصه مثل (_height,
_rotation, _totalframes) أو سلوكياته
ووظائفه (gotoAndPlay,
loadMovie, startDrag) .
كلما تقوم بتعريف صف جديد فيجب عليك
أن تعرف داخل
هذا الصف وظيفة خاصة تحمل نفس اسم هذا
الصف و هذه الوظيفة تسمى بالبانية (constructor)
و سميت بهذا الاسم لأن تستدعى فور إنشاء
كائن جديد حيث تقوم بتمهيد صفات هذا الصف
، على سبيل المثال نريد أن نكتب صف عن
راكب الدراجة (Biker)
و هذا الصف له صفات (time
، distance)
و أحب أن أنبه إن الصفات لكل صف هي عبارة
عن أنماط بيانات أو متحولات أو متغيرات و
هذه الكلمات الثلاثة تدل على معنى و واحد
، و سوكيات أو وظائف (rate)
و هذه كلها مجتمعة تخبرك بسرعة هذا
الراكب في السفر .
عندما
تريد الإعلان عن كائن جديد (هناك فرق
عندما أقول كائن و لم أقل صف أو نوع جديد )
و هذه الكائن من نوع صوت (سوف أناقش
الصفوف المعرفة من قبل فلاش في موضوع
متقدك) فسوف يكون هذا الإعلان على الشكل
التالي :-
الآن
لدينا كائن من النوع Sound
له صفاته و سلوكه الخاص به . لكن كيف
يمكننى الوصول إلى إلى صفات و سلوك هذا
الكائن بذات . هناك طريقة للإبحار داخل
الكائن ليس فقد لتحديد الخصائص و السلوك
فقط بل يمكن تحديد كائن داخل كائن . وهذه
الطريقة هي استخدام (
. )
النقطة فمثلا لمعرفت درجة ارتفاع الصوت
للكائن السابق يمكن استخدام الوظيفة (getVolume
)
و لكن لتحديد الكائن الذي أقصده يجب أن
أضع اسم الكائن يله النقطة و يليهما
السلوك أو الخاصية التي أرديها كما هو
موضح في المثال التالي :-
كلما
تقوم بإعلان عن متغير جديد أو أي كائن
فإنه يشغل حيزا من الذاكرة و مع كثرة
الكائنات و المتغيرات فإن الذاكرة تبدأ
بالنفاذ و يبدأ الفلم أو المقطع المصنوع
بفلاش بالبطئ فماذا نفعل في تلك الحالة .
لا تقلق فإن فلاش جعل لهذه المشكلة
تعليمة معينة تقوم بإزالة الكائن التي لا
تستخدمه من الذاكرة و كأن شيئا لم يكن و
هذه التعليمة هي (delete)
و يليها اسم الكائن أو المتغير الذي تريد
إزالته من الذاكرة كما هو في المثال
التالي :-