تمهيد :
بداية ظهور الفايرمونكي كان سنة 2011 و مع ذلك يوجد من يبرمج بالدلفي من قبل و لم يستخدمه لحد الان و لكل شخص أسبابه في البداية كان مجرد اطار عمل بسيط مخصص لواجهة المستخدم لكنه تغير بمرور السنوات و أصبح هو التركيز الأكبر في منصة دلفي و كل التغيرات الحديثة يكون هو الأسبق إليها و كمبرمج لا يجب عليك ان تكون مثل الماء الساكن و تبقى فقط مع القديم . مجال البرمجة و اضنه تقريبا المجال الوحيد الذي يجب ان يكون المختص فيه عالما بكل الجديد في التقنية . لذالك يجب على الأقل القاء نضرة على الفايرمونكي بالنسبة لكل مبرمج دلفي و في هذه المقالة ساطرح لكم بعض الإختلافات التي تجديونها لاول مرة عند الأنتقال إلى الفايرمونكي بعضها يمكن اعتبراه تحسين و اضافة جيدة و البعض الاخر يمكن ان يكون نقطة سلبية لذالك دعونا نبدأ
بداية ظهور الفايرمونكي كان سنة 2011 و مع ذلك يوجد من يبرمج بالدلفي من قبل و لم يستخدمه لحد الان و لكل شخص أسبابه في البداية كان مجرد اطار عمل بسيط مخصص لواجهة المستخدم لكنه تغير بمرور السنوات و أصبح هو التركيز الأكبر في منصة دلفي و كل التغيرات الحديثة يكون هو الأسبق إليها و كمبرمج لا يجب عليك ان تكون مثل الماء الساكن و تبقى فقط مع القديم . مجال البرمجة و اضنه تقريبا المجال الوحيد الذي يجب ان يكون المختص فيه عالما بكل الجديد في التقنية . لذالك يجب على الأقل القاء نضرة على الفايرمونكي بالنسبة لكل مبرمج دلفي و في هذه المقالة ساطرح لكم بعض الإختلافات التي تجديونها لاول مرة عند الأنتقال إلى الفايرمونكي بعضها يمكن اعتبراه تحسين و اضافة جيدة و البعض الاخر يمكن ان يكون نقطة سلبية لذالك دعونا نبدأ
- لا يمكنك إستخدام وحدات مكتبة VCL: في تطبيقات الفايرمونكي و العكس صحيح أيضا مع ذلك يجب ان تعرف انه يمكن تحويل الكود الخاص بك باستخدام أداة تسمى MIDA و الأهم من ذالك ان استخدام مكتبة RTL ممكن في الفايرمونكي و لكي تعرف ماهي الوحدات الخاصة بمكتبة وقت التشغيل يمكنك الذهاب إلى جزء المساعدة في الدلفي Help>Delphi Help>System Library Help حيث تجد أكثر الوحدات استعمالا في تطبيقات الدلفي مثل وحدة التاريخ و وحدة الهاش وحدة التعابير القياسية ببساطة كل شيء ليس له علاقة بالواجهة الرسومية أو المكونات فهذا الجزء مخصص لمكتبة VCL و التمييز بينهما سهل فكل مكتبات ال VCL تبدأ باللاحقة VCL و كل مكتبات الفايرمونكي تبدأ باللاحقة FMX و مكتبات RTL تبدأ ب System
- بعض التغيرات في أسماء الخصائص و قيمها : مثلا عندما كنت تستخدم تطبيقات VCL فعند اضافة مكون لابل أو زر فتغير النص الظاهر على المكون يكون من خلال خاصية Caption الأمر اختلف قليلا أصبحت التسميات أقرب إلى الموجودة في Android Studio حيث تغير النص يكون من خلال خاصية Text و التي هي من نوع String و مثلا لما تذهب لخاصية المحاذاة Align لإانت لن تجد تسمية مثل Altop بل ستجد Top هذه تغيرات بسيطة لكنها اظنها تجعل الكود أكثر قابلية للقراءة على العموم ليس بالشيء الكبير مكمن تجد قيم جديدة لخصائص معتاد عليها مثل المحاذاة لن تجد فقط " اعلى اسفل يمين يسار كل " ستجد قيم أكبر و هذه نقطة لصالح الفايرمونكي لكي لا تتعب في كتابة كود لمحاذاة مكون ما في وسط حاوية
![[صورة: image.png]](https://preview.ibb.co/gzRvVw/image.png)
- كل مكون يمكن أن يكون حاوية : صراحة أظنها من أفضل الخصائص التي رأيتها لحد الآن و يتميز بها الفايرمونكي فقط فيمكنك ان تضع مثلا زر داخل زر داخه زر اخر بدون اي تعب و عمل كثير هذا الشيء في منصات اخرى مثل الاندرويد ستوديو يتطلب منك عمل العديد من الطبقات لكنه في الدلفي يكون جاهزا و هذا مثال بسيط وضعت فيه المكونات داخل بعضها و قمت باستغلال خصائص المحاذاة بدون كتابة سطر واحد
![[صورة: image.png]](https://preview.ibb.co/bYszOG/image.png)
تنبيه : عندما تقوم بتغير خاصية visible لمكون ما فهو سيختفي من الشاشة و لا يحذف فاحذر ان تقع في هذا الخطأ و يمكنك الوصول الى المكون من شجرة العناصر
- حذف مكونات و ظهور مكونات جديدة : ربما أكثر المكونات استخداما لدى بعض المبرمجين هو مكون DBGRID الذي يفتقدونه على الفايرمونكي لكن في المقابل هناك بدائل كثيرة و أكثر قوة و تخصصا لمنصات الهواتف مثل مكون TGrid و اذا احتجت لعرض البيانات بشكل كبير يمكنك تجربة TlistView لكن من ناحية الرسوميات واجهة المستخدم الأشياء التي يمكنك القيام بها على الفايرمونكي لا تحصى و هذا يعود بنا للوراء خاصة أن هدف الفايرمونكي الأول كان واجهة المستخدم المحسنة و اضافة التأثيرات و التعامل مع الأشكال الثنائية و الثلاثية الأبعاد و استخدام نظام الطبقات الذي يتم استخدامه على منصة أندرويد ستوديو أيضا ولدينا جزء كامل خاص بالتحريك كذلك
![[صورة: image.png]](https://image.ibb.co/fmFm3G/image.png)
لكن! يجب أن تنتبه من عمل برامج ذات مكونات كثيرة و خاصة في حال انك تستخدم اللايف باندينق فلدي مثلا في احد المشاريع التي قمت بها اصبحت اعاني من بطئ في التصميم على الدلفي و حتى تغير الخصائص أيضا و نقطة أخرى لن تجد تلك السرعة في الترجمة التي اعتدت عليها عند استخدامك ل Dcc32
السلام عليكم
السلام عليكم


![[-]](https://delphi4arab.net/forum/D4A2020/collapse.png)