في الثريد هذا راح أتكلم عن مسيرتي في البحث عن المنصة المناسبة لمشروعي القادم في تطوير تطبيقات الجوال .. وايش الفروقات اللي عرفتها واللي تميز كل منصة تطوير عن الأخرى .. وليش بعد ما اخترت واستقريت على #ReactNative من شركة #Facebook
دخل منافس قوي وهو #Flutter من شركة #Google .
دخل منافس قوي وهو #Flutter من شركة #Google .
أنا ما أملك العدد ولا الوقت الكافي اللي يسمح بإني أطور على نظامين وأحل مشاكل نظامين ومع كل تحديث اشتغل على مشروعين ..
لذلك بحثت عن حلول ومع أول بحث وجدت مايسمى بـ
Cross platform app development Frameworks
وهي منصات لتطوير التطبيقات مرة واحدة ونشرها على مختلف أنظمة التشغيل
لذلك بحثت عن حلول ومع أول بحث وجدت مايسمى بـ
Cross platform app development Frameworks
وهي منصات لتطوير التطبيقات مرة واحدة ونشرها على مختلف أنظمة التشغيل
أول خيار وقعت عيني عليه هو #Xamarin
Xamarin عبارة عن framework بلغة C# وهذا الأمر ممتاز لأني متقن لهذه اللغة مسبقاً وأتحمست جداً
لكن للأسف مع بدايتي لتعلم هذا الـFramework لاحظت قد ايش هو بدائي وأقدر أقول إنه صعب شوية وراح يتطلب وقت كبير لتعلمه وكنت متأكد من وجود حلول أفضل ..
Xamarin عبارة عن framework بلغة C# وهذا الأمر ممتاز لأني متقن لهذه اللغة مسبقاً وأتحمست جداً
لكن للأسف مع بدايتي لتعلم هذا الـFramework لاحظت قد ايش هو بدائي وأقدر أقول إنه صعب شوية وراح يتطلب وقت كبير لتعلمه وكنت متأكد من وجود حلول أفضل ..
بعد #Xamarinا اعجبت بـ #nativescript واللي كان يميز هذا الـFramework إنه له IDE خاص فيه وجميل جداً اسمه Sidekick ..
لكن العيب اللي ابعدني عنه إنه يعتبر جديد ومصادره قليلة جداً .. يعني إذا واجهت مشاكل في التطوير غالباً ماراح القى المساعدة المتوقع من مجتمعات المطورين المعروفة .
لكن العيب اللي ابعدني عنه إنه يعتبر جديد ومصادره قليلة جداً .. يعني إذا واجهت مشاكل في التطوير غالباً ماراح القى المساعدة المتوقع من مجتمعات المطورين المعروفة .
صحيح وجدت الكثير من المنصات للتطوير المتعدد .. لكن كان هناك علامة فارقة تميز الـFramework الممتاز من ناحية الأداء عن الـFramework اللي يمشي الحال ..
والعلامة الفارقة هذه هي اللي تحكم الـPerformance
هناك Frameworks أداءها جداً قريب من آداء الـNative وهناك أخرى آداءها يعتبر سيء
والعلامة الفارقة هذه هي اللي تحكم الـPerformance
هناك Frameworks أداءها جداً قريب من آداء الـNative وهناك أخرى آداءها يعتبر سيء
من المنصات اللي ابتعدت عنها مع بداية بحثي
#ionic و #PhoneGap وأشباههم ..
هذه منصات تطور التطبيقات على مختلف الأنطمة .. وقد تكون الأسرع في التطوير ..
"لكن" .. في الحقيقة هذه المنصات تسمح لك بتطوير "صفحات ويب" بتقنيات الويب المعروفة
#HTML5 #CSS #javascript ثم تحويلها لتطبيق
#ionic و #PhoneGap وأشباههم ..
هذه منصات تطور التطبيقات على مختلف الأنطمة .. وقد تكون الأسرع في التطوير ..
"لكن" .. في الحقيقة هذه المنصات تسمح لك بتطوير "صفحات ويب" بتقنيات الويب المعروفة
#HTML5 #CSS #javascript ثم تحويلها لتطبيق
وطبعاً التطبيقات اللي تصدر على هيئة "Web Page" آداءها يكون سيء وفي الحقيقة هي مجرد صفحات ويب ... تشتغل على متصقح "Browser" لكن هذا المتصفح يكون بدون أزاريره الخاصة وبدون خانة الروابط وبقية الخصائص اللي تميز المتصفحات..
والتطبيق ياخذ صلاحيات التعامل مع مصادر الجهاز لكن بشكل محدود
والتطبيق ياخذ صلاحيات التعامل مع مصادر الجهاز لكن بشكل محدود
لذلك كنت أبحث عن الـ Frameworks اللي تجعلني أقرب للجهاز وتمنحني كافة الخصائص للأجهزة مع الـ UI الخاص لكل جهاز أو نظام ( Android - ios ) .. ويهمني انه الكود يصير له Compile على الهاردوير مباشرة ..
وكانوا المرشحين هم :
Nativescript
ReactNative
Flutter
الصورة من @academind_real
وكانوا المرشحين هم :
Nativescript
ReactNative
Flutter
الصورة من @academind_real
#ReactNative
زي ماذكرت كان قريب من المثالية اللي ابحث عنها .. وتطبيقات ضخمة من Facebook وغيرها من الشركات تم تطويرها من خلاله .. كان من عيوبه إنه التطوير فيه يتم عن طريق الـ Command Line وهذا ما اعتبره عيب قوي بالنسبة لي ..
لكن تركته لأني وجدت Framework قلبي ارتاح له اكثر
زي ماذكرت كان قريب من المثالية اللي ابحث عنها .. وتطبيقات ضخمة من Facebook وغيرها من الشركات تم تطويرها من خلاله .. كان من عيوبه إنه التطوير فيه يتم عن طريق الـ Command Line وهذا ما اعتبره عيب قوي بالنسبة لي ..
لكن تركته لأني وجدت Framework قلبي ارتاح له اكثر
@Malo0o0o0ka طبعاً هذا بيأثر على الـPerformance
لكن مو دايماً يكون خيار سيء .. بالعكس .. في حالات قد تكون الـFrameworks اللي تعمل بهذه الطريقة هي الخيار الأنسب لنا .. يعتمد الموضوع على الفريق ومهاراته وعلى سرعة العمل وعلى كمية البيانات المتدفقة من والى التطبيق
لكن مو دايماً يكون خيار سيء .. بالعكس .. في حالات قد تكون الـFrameworks اللي تعمل بهذه الطريقة هي الخيار الأنسب لنا .. يعتمد الموضوع على الفريق ومهاراته وعلى سرعة العمل وعلى كمية البيانات المتدفقة من والى التطبيق
الـFramework على الرغم من انه جديد الا انه مدعوم بقوة ومصادر تعلمه كثيرة . لدرجة أن في قنوات يوتيوب مع كل مقطع تبني تطبيق مختلف بـFlutter مباشرة .. الأمر الآخر أن Flutter يعتبر Native بحق .يعني الأكواد اللي تكتبها تشتغل مباشرة على الجهاز ماتحتاج أي وسيط مثل الـWebView تحتاج متصفح
من ميزاته الأسطورية للمطورين .. ميزة الـ Hot Reload
Flutter يسمح للمطور إنه يعدل في الكود ويشوف النتيجة مباشرة في تطبيقه من غير أي اعادة بناء للتطبيق ومن غير حتى أي عملية اغلاق وفتح للتطبيق ..
flutter.io
Flutter يسمح للمطور إنه يعدل في الكود ويشوف النتيجة مباشرة في تطبيقه من غير أي اعادة بناء للتطبيق ومن غير حتى أي عملية اغلاق وفتح للتطبيق ..
flutter.io
@MMDOH_AL_SHRARI شوف هنا .. واقرأ الردود
جاري تحميل الاقتراحات...