معنى platform بالعربي , cross platform شرح , الفرق بين native و hybrid , cross platform mobile development ما هو ال platform platform ماهو انواع المنصات تعريف المنصة الالكترونية , ما هي المنصة الأفضل لتصميم التطبيقات Native or Cross , متعدد المنصات - ويكيبيديا، الموسوعة الحرة
بسم الله الرحمن الرحيم
من كام يوم كنت بدوّر علي تطبيق (ملاحظات) أو To Do List علشان أستخدمه
لكني كنت بدوّر علي تطبيق يكون Cross Platform بالذات
لكني كنت بدوّر علي تطبيق يكون Cross Platform بالذات
إيه الـCross-Platform ده واشمعنا عاوز التطبيق يكون Cross-Platform ومش حاجة غيره
كل هذا وأكثر ستعرفه في فقرة توضيح المفاهيم التقنية داخل مدونة اردرويد - اندرويد
مجموعة من المعلومات المهمى فى مواضيع اخرى يجب عليك التعرف عليها
- إيه الـCross - Platform دا بقي؟
قبل ما أقول لك إيه هوا خليني أقطّع لك الكلمة قطعتين زي ما هيا متقطعة ومحطوط بينها الشرطة دي (-) كدا..
حسب ترجمة جوجل فـ (Cross) معناها (عبر) أو (عبور).. وزي ما إحنا عارفين
إن Google Translate مش ذكي كفايةً فهنسيبنا منه ومن الكلمة دي دلوقتي
إن Google Translate مش ذكي كفايةً فهنسيبنا منه ومن الكلمة دي دلوقتي
الكلمة التانية اللي في الكلمة وهيا الـPlatform.. البلات فورم أو (المنصة) بالعربي دي بقي يا سيدي تقدر
تقول هيا الحاجة اللي المطور بعد ما بيطور التطبيق أو اللعبة بتاعته بيرفعها علشان تشتغل عليه.. أو هوا في
الأساس بيكون عامل البرنامج دا علشان يشتغل للمنصة دي بالذات والمنصة دي بتختلف
وممكن تكون منصة سوفت أو هارد وير.. بمعني؟
تقول هيا الحاجة اللي المطور بعد ما بيطور التطبيق أو اللعبة بتاعته بيرفعها علشان تشتغل عليه.. أو هوا في
الأساس بيكون عامل البرنامج دا علشان يشتغل للمنصة دي بالذات والمنصة دي بتختلف
وممكن تكون منصة سوفت أو هارد وير.. بمعني؟
بص.. دلوقتي مثلاً شركة زي Playstation أو Xbox مثلاً بيطوروا ألعابهم علشان تشتغل علي إيه؟!
علي البلاي ستيشن أو الإكس بوكس!
معني كدا إن البلاي ستيشن هنا هوا الـPlatform اللي بيتم تطوير اللعبة ليه، لكن
في الحالة دي يعتبر (منصة عتاد - Hardware Platform) مش منصة برمجيات أو (Software Platform).
في الحالة دي يعتبر (منصة عتاد - Hardware Platform) مش منصة برمجيات أو (Software Platform).
طب إيه منصة البرمجيات دي هيا كمان؟!
منصة البرمجيات دي يا سيدي هنا بتتمثّل في أنظمة التشغيل زي الـWindows
أو الـAndroid أو الــIOS أو حتي الـWindows Phone الله يرحمه
أو الـAndroid أو الــIOS أو حتي الـWindows Phone الله يرحمه
وكل منصة من دول بيبقي لازم إنك تتعلم لغات برمجة معينة علشان تقدر تطوّر لها البرنامج اللي يشتغل عليها..
يعني مثلاً في الأندرويد لازم تتعلم الجافا Java، في الويندوز فون لازم تتعامل بالسي شارب (C#).. وهكذا..
يعني مثلاً في الأندرويد لازم تتعلم الجافا Java، في الويندوز فون لازم تتعامل بالسي شارب (C#).. وهكذا..
معايا لغاية هنا؟
دلوقتي بقي يا سيدي بأفتراض إن أنتا شركة كبيرة وعاوز تطور برنامج يشتغل علي الأندرويد
والأيفون والويندوز فون والكمبيوتر.. يا تري محتاج إيه؟
والأيفون والويندوز فون والكمبيوتر.. يا تري محتاج إيه؟
أكيد محتاج مهندسين عارفين لغات البرمجة المطلوبة لكل منصة من دول..
يعني ناس تكون عارفة في الجافا، وناس للـIOS.. وكدا..
يعني ناس تكون عارفة في الجافا، وناس للـIOS.. وكدا..
هنا بقي بييجي دور الـCross Platform Development.. أو هنختصرها بالــCross Platform
علشان التسهيل وكدا
علشان التسهيل وكدا
الكروس بلاتفورم دي يا سيدي بتخليك أنتا كـ شخص عاوز يعمل برنامج يشتغل علي كل المنصات في
نفس الوقت أنه يبرمج البرنامج دا مرة واحدة بس وهيبقي قابل لأنه يشتغل علي أكتر من منصة تشغيل..
نفس الوقت أنه يبرمج البرنامج دا مرة واحدة بس وهيبقي قابل لأنه يشتغل علي أكتر من منصة تشغيل..
طبعاً دي جميلة جداً لأنك لو هتفكر في أنك تطوّر برنامج لكل منصة فهتبقي محتاج لكل برنامج لكل منصة
واحد عارف اللغة البرمجية بتاعة كل برنامج مطلوب لكل منصة.. فاهم حاجة؟! بمعني إنك في حالة
لو كنت بتطور تطبيقات بالـCross Platformm هتكتب التطبيق مرّة واحدة ويشتغل معاك علي
طول علي كل المنصات، علي عكس لو هتطور وتكتب أكواد نفس التطبيق كل مرة لكل منصة
مختلفة في الطريقة العادية اللي بيسموها الـNative Development..
واحد عارف اللغة البرمجية بتاعة كل برنامج مطلوب لكل منصة.. فاهم حاجة؟! بمعني إنك في حالة
لو كنت بتطور تطبيقات بالـCross Platformm هتكتب التطبيق مرّة واحدة ويشتغل معاك علي
طول علي كل المنصات، علي عكس لو هتطور وتكتب أكواد نفس التطبيق كل مرة لكل منصة
مختلفة في الطريقة العادية اللي بيسموها الـNative Development..
طيب.. كل حاجة وليها مميزات وليها عيوب.. واللي عاوز العسل يستحمل قَرص النَحل زي ما بيقول المثل
- إيه مميزات وعيوب الأتنين؟
- بالنسبة للطريقة العادية أو الـNative Development:
الطريقة دي يا سيدي مكلفة لأنها عاوز ناس عارفين اللغة البرمجية بتاعة كل منصة، وبتستهلك وقت
كذلك لأنك هتكتب فيها كود -لنفس البرنامج- مختلف علي كل منصة، ولمّا تيجي تعمل تحديث للتطبيق بتاعك
مثلاً علشان تحل مشكلة موجودة فيه فهيبقي لازم تكتب أكواد التحديث دا وتبعته من تاني وواحدة واحدة لكل
منصة مختلفة، وهتقلل نسبة حصولك علي مستخدمين للتطبيق دا بنسبة 50% مرة واحدة؛ ودا لأن المستخدم
عاوز حاجة تكون متوفرة معاه علي الموبايل والتابلت والكمبيوتر في نفس الوقت.. زي ما كنت بدور كدا
علي البرنامج اللي قولت لك عليه في أول البوست
كذلك لأنك هتكتب فيها كود -لنفس البرنامج- مختلف علي كل منصة، ولمّا تيجي تعمل تحديث للتطبيق بتاعك
مثلاً علشان تحل مشكلة موجودة فيه فهيبقي لازم تكتب أكواد التحديث دا وتبعته من تاني وواحدة واحدة لكل
منصة مختلفة، وهتقلل نسبة حصولك علي مستخدمين للتطبيق دا بنسبة 50% مرة واحدة؛ ودا لأن المستخدم
عاوز حاجة تكون متوفرة معاه علي الموبايل والتابلت والكمبيوتر في نفس الوقت.. زي ما كنت بدور كدا
علي البرنامج اللي قولت لك عليه في أول البوست
لكن علي الجانب التاني فـ التطبيق بتاعة واجهة المستخدم بتاعته أو الـUser Interface اللي
بيختصروها بالـUI- هتكون أفضل في حالة الـNative لأنك بتبقي قادر تستغل كل الـAPI المتوفرة ليك.
بيختصروها بالـUI- هتكون أفضل في حالة الـNative لأنك بتبقي قادر تستغل كل الـAPI المتوفرة ليك.
كمان التطبيق المنفرد دا وعلي المنصة المنفردة دي هيكون الأداء بتاعه أو الـPerformancee
أفضل وهيشتغل من غير أي مشاكل لأنك بتبقي قادر تستغل كل الإمكانيات اللي بتقدمهالك المنصة دي.
أفضل وهيشتغل من غير أي مشاكل لأنك بتبقي قادر تستغل كل الإمكانيات اللي بتقدمهالك المنصة دي.
- وبالنسبة للـCross Platform:
في الحالة دي يا سيدي أنتا ممكن توفر علي نفسك 800% من التكلفة كلها لأنك مش هتبقي محتاج مطور
متخصص لكل منصة، وهتوفر معاك وقت ودا برضو لأنك مش هتبقي مضطر تكتب الـSource Code
بتاع البرنامج مختلف لكل منصة غير التانية، بل هيبقي واحد لكل المنصات، وكمان تطبيقك دا هياخد
نسبة عالية من التحميلات وهيستهدف مستخدمين كتير جداً
متخصص لكل منصة، وهتوفر معاك وقت ودا برضو لأنك مش هتبقي مضطر تكتب الـSource Code
بتاع البرنامج مختلف لكل منصة غير التانية، بل هيبقي واحد لكل المنصات، وكمان تطبيقك دا هياخد
نسبة عالية من التحميلات وهيستهدف مستخدمين كتير جداً
لكن في الناحية التانية وبالنسبة للسلبيات فـ أي تطبيق أو لعبة هتكون بالـ كروس بلاتفورم دا يا سيدي
هتكون أداءها -لو كانت لعبة مثلاً- هيبقي قليل، والجرافيك بتاعها هيبقي فيه شوية مشاكل. وكمان واجهة
المستخدم مش هتبقي مريحة كتير زي ما تكون مصمم اللعبة لمنصة التشغيل دي لوحدها.
هتكون أداءها -لو كانت لعبة مثلاً- هيبقي قليل، والجرافيك بتاعها هيبقي فيه شوية مشاكل. وكمان واجهة
المستخدم مش هتبقي مريحة كتير زي ما تكون مصمم اللعبة لمنصة التشغيل دي لوحدها.
"بس كدا يا جماعة.. خلصنا كلامنا النهاردة عن الـCross Platform"
ماشاء اللة عليك شرح مبسط واكثر من رائع وفقك اللة اخى
ردحذف