الفرق بين Android Studio vs Eclipse

ماهو Android Studio؟

الاندرويد ستديو هو محرر او مجموعة  ادوات IDE لتطوير برمجيات الاندرويد مبني على بيئة IntelliJ IDEA, تم اطلاقه لاول مرة من قبل قوقل في منتصف 2013 كنسخة مبدئية للمطورين, وتم اطلاق النسخة النهائية منه في ديسمبر 2014 باصدار 1.1.

ما الفرق بين Android Studio vs Eclipse

 

دعم الـ Gradle

gradle

 ماهو الـ Gradle ؟ دعني اشرح لك ماهو بالطريقة التالية:

في السابق كان كل شي تحتاج له اداة علشان تبرمج; فـ مثلاً: لبرمجة برنامج اندرويد بسيط يجب عليك اولاً ان تكتب ملفات الجافا وبعد ذلك تستخدم اداوات لتحويل الملفات هذه ودمجها مع ملفات ال resourses مثل الصور والنصوص وغيرها, فـ كل شيء كان يتم عن طريق سطر الاوامر, امر متعب صحيح؟

بعد كذا وجد Eclipse, هذا البرنامج ساعد المبرمجين, دمج لهم جميع الادوات التي يحتاجونها وسهل لهم الشغل, فمثلاً لا يحتاج منك ان تفصل شغلك وتستخدم ادوات خارجية, كل شي جاهز في برنامج واحد ومقسم في مجلدات, فقط برمج واستورد مكتباتك وملفاتك والبرنامج يتكفل بكل شي.

واخيرا الـ Gradle , الجردل هو نظام بناء متقدم, دمج جميع الخصائص التي يحتاجها المبرمج في نظام واحد, وماجاء به  الاندرويد ستديو هو انه  يستخدم Gradle والشيء الجميل في الجردل هو نظام الـ Plugins, بمعنى اذا احتجت اي مكتبه لايحتاج منك ان تحملها كملف jar وتضيفها لمشروعك, فقط تستوردها مباشره عن طريق سطر برمجي واحد, واخيراً ما يميز  الـ Gradle هو الـ Dependencies ساشرحه بالتفصيل بالاسفل.

Dependency

لنفرض مثلا اردت بناء تطبيق لساعات الاندرويد او نظام التلفاز, اذا اردت استخدام الـ Eclipse فانت مجبر على بناء مشروعين منفصلين عن بعض, الاول للجوال والاخر للساعة, وكل مشروع سينتج عنه Apk; وايضا لابد ان تربط المشروعين ببعض عن طريق العديد من الاوامر اذا اردتهم ان يعملوا بشكل متزامن, والسبب؟ ان الـ Eclipse لايدعم الـ Gradle.

ولكن اذا اردت استخدام الاندرويد ستديو الذي يدعم بالتاكيد الـ Gradle فتستطيع بناء اكثر من برنامج في نفس المشروع, بمعنى تستطيع بناء برنامج للجوال والساعة والتلفاز او اي جهاز اخر في مشروع واحد وبملف Apk واحد! هل تخيلت الفرق؟!

Live Preview

android-studio-4

المقصود بالـ Live preview هو امكانية عرض الواجهات التي قمت بتصميمها على مختلف احجام الشاشات( من 2.3 انش وحتى 10 انش), وايضا بامكانك كتابة الكود ومشاهدة التغيرات التي تحصل مباشرة على الواجهة امامك, هذا الامر كان متعب في الـ Eclipse او بالاصح اذا اردت مشاهدة التغيرات او التعديلات التي قمت بكتابتها, تنتقل من تبويب الى اخر, اما في الـ Android studi فالوضع جدا اسهل.

واجهة المستخدم

Screenshot-from-2014-04-24-210304

المقارنه في هذا الموضوع نوعا ما صعبة, فالـ Eclipse مصمم ليناسب جميع الانظمة ويدعم معظم لغات البرمجة من بينها الجافا بالتاكيد, الواجهات والقوائم نوعا ما متشعبه لتخدم الجميع, بينما الاندرويد ستديو فهو مصمم خصيصا للاندرويد, اي جميع الخصائص والقوائم تخدم الموضوع هذا بالتحديد.

دعم الـ NDK

Android3

اذا كنت لاتعرف ماهو الـ Native development kit فهي مكتبات مبرمجة بلغة C/C++ يمكن عمل لها compile لـ  ARM, MIPS or x86 native code ومن ثم تنصبيها باستخدام الـ Android Native Development Kit, عادتا من يستخدم الـ NDK هم مطورين الـ ios اذا ارادوا استيراد اكواد جاهزة قاموا ببرمجتها دون الحاجة الى اعادة كتابتها من جديد بالجافا, او مطورين برامج real-time multimedia, فمعالجة النوع هذا من البيانات بالتحديد صعب باستخدام الجافا وبالتالي الحل استخدام C/C++. هذه المكتبات يمكن استدعائها باستخدام كود جافا واستخدامها ضمن مشاريع الاندرويد.

للاسف Android Studio لايدعم الـ NDK بخلاف Eclipse, فاذا كان مشروعك يتضمن هذا النوع من المكتبات فاستخدم الـ Eclipse افضل لك.

Google Cloud Platform

google-cloud-platform

الاندرويد ستديو يدعم بشكل مباشر Google Cloud Platform, هذه المنصة تسمح لك بتشغيل اكواد server-side باستخدام Google App Engine , بشكل متزامن مع المهام الاخرى, مثال تستطيع رفع نسخة احتياطية لبيانات المستخدم على السيرفر بشكل متزامن مع المهام الاخرى.

الاندرويد ستديو ايضا يدعم اضافات لعمل دمج وتكامل مع التطبيقات, بالمختصر جميع الادوات التي تحتاجها من قوقل متوفرة ومجهزة بشكل كامل مع الاندرويد ستديو, بالتاكيد جميع هذه الامور تستطيع تثبيتها على Eclipse باستخدام اضافات Google ولكن مع الاندرويد ستديو الوضع أسهل.

خلاصة المقارنة

EclipseAndroid Studioالخاصية
ANTGradleنظام البناء
لانعمدعم الـ dependencies
لانعمبناء اكثر من مشروع بملف APK واحد
لانعممحرر بواجهة رسومية
نعمنعمتوقيع ملفات APK وتوليد مفاتيح التواقيع
نعملادعم NDK
نعمنعمدعم لمختلف الانظمة Windows, OSx, Linux

الخاتمة

هل يجب علي الانتقال من الـ Eclipse الى Android studio؟ جرب وشاهد بنفسك البرنامج ومن ثم حدد خيارك; اتوقع انه سيعجبك. اما اذا لم تستخدم الـ Eclipse من قبل فاستخدم مباشرة الـ Android studio.

Share:
14 comments on الفرق بين Android Studio vs Eclipse
Youssef idrees
  • فبراير 25 2015
  • رد
جميل جميل معلومات جديدة و رهيبة
omniay223
  • فبراير 25 2015
  • رد
جا بالوقت المناسب .. الله يجزاك الجنة يارب
Hussain Talal
  • مارس 4 2015
  • رد
ما شاء الله .. شرح ممتاز ومعلومات قيمة .. الله يعطيك ألف عافية :)
tarek abou elnasr
  • مارس 5 2015
  • رد
معلومات روعه .... جزاك الله كل الخير ......
abdelnaser
  • مارس 8 2015
  • رد
جوزيت خيرا اخى عبدالله والله بجد انا فعلا اشتغلت على الاثنين ولكن على Eclipse اكثر ولم استطع الوصول للفارق بينهما الا بعد قراءة مقالك هذا ...فشكرا لك اخى وجعل جهدك هذا فى ميزان حسناتك يوم القيامه واتمنى ان نصبح صديقين نتبادل المعارف فيما بيننا ان لم يكن لديك مانع..........
ِِAbdullah Ayyad
  • أبريل 7 2015
  • رد
شكرا لك على المعلومات المفيدة لكن الإثنان سئ من ناحية السرعة و الأداء ،أيضا يستنزف موارد الحاسوب بشكل كبير من ناحية RAM بالإضافة الى الإستخدام المتواصل في القراءة والكتابة للقرص الصلب .
    Abdullah Alhazmy
    • أغسطس 2 2015
    • رد
    اتفق معاك استهلاك الرام عالي نوعا ما خاصة اذا قارنا الاندرويد ستديو مع الاكليبس
عمر عبد اللطيف
  • مايو 13 2015
  • رد
جزاك الله الف خير
Amjad
  • يونيو 17 2015
  • رد
شكرًا من القلب عبدالله ، مقارنة ممتازة الله يجزاك كل خير
King
  • يونيو 29 2015
  • رد
جزاك الله خير
khaled
  • يوليو 27 2015
  • رد
يعطيك العافية على المقالة الحلوة ... بس عندي كم تعليق اخلفك الرآي فيهم مثل ١- dependencies ال ant تدعم ال dependencies http://ant.apache.org/ivy/history/latest-milestone/ivyfile/dependency.html ٢- بناء اكثر من مشروع بملف APK واحد كيف لا يدعم اخي انت تعمل دعم لاي نوع جهاز تريد من خلال التعريفات التي تضيفها في الmanifest

Post a comment

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *