تطوير أندرويد أسهل مع RoboGuice
RoboGuice هو إطار يجب أن يجمع بين البساطة وسهولة حقن التبعية إلى أندرويد. Guice هو إطار حقن خفيف الوزن يعتمد على منصة Java. حقن التبعية هو نمط التصميم مع الرئيسية الأساسية لل فصل السلوك عن قرار التبعية.
لأنها تتيح لإزالة “الثابت تلوينها” التبعيات ويجعل من الممكن تغييرها في وقت الترجمة أو التشغيل. هذا يجعلك رمز أسهل في الكتابة ، والتغيير ، واختبار وحدة و إعادة استخدامها في سياقات أخرى. يصبح الرمز الخاص بك أقل من رمز النحافة وأكثر من منطق الأعمال.
مع RoboGuice ، يمكنك جلب كل ذلك إلى Android. RoboGuice يسمح لك استخدام الطبقات الأساسية الخاصة بك جنبا إلى جنب مع الأساليب الأساسية الخاصة بك أو وظائف. وهذا يجعل RoboGuice متوافق مع معظم المكتبات وكذلك تسمح لك لتجريد تقريبا جميع المراجل منصة عن طريق الحقن المختلفة مثل حقن الحقن ، وحقن الموارد ، وحقن SystemService ، إلخ.
بعبارات بسيطة ، يعني استخدام RoboGuice في مشروع Android الخاص بك كتابة كود أقل ، والتعامل مع عدد أقل من الأخطاء ، ووجود صداع أقل.
كيفية تثبيت RoboGuice
يمكن تثبيت RoboGuice بسهولة في مشروعك القائم على Gradle عن طريق إضافة الأسطر التالية إلى “تبعيات” مقطع من ملف بناء gradle في وحدة التطبيق الخاص بك:
project.dependities compile 'org.roboguice: roboguice: 3. + "المقدمة" org.roboguice: roboblender: 3. +'
كيفية استخدام RoboGuice
RoboGuice سهل الاستخدام ، إذا اتبعت القواعد الأساسية التالية:
1. تمديد الفصول الدراسية من فئات RoboGuice الأساسية المناسبة مثل RoboActivity ، RoboFragment ، RoboService ، RoboListActivity ، RoboActionBarActivity ، إلخ.
2. ضخ وجهات النظر أو الموارد أو الخدمات باستخدام شروح مختلفة مقدمة من RoboGuice مثل “InjectView“, “InjectResource“, “@حقن“, إلخ.
هذا هو. بسيط ، أليس كذلك؟ سوف تشعر أنك أكثر في المنزل إذا كنت على دراية التعليقات التوضيحية Java.
لا RoboGuice مقابل RoboGuice
دعونا نقارن كيف يمكن لـ RoboGuice تقليل عبء العمل الخاص بك وتحسين إنتاجيتك باستخدام هذا المثال الصغير. لنفترض أن لدينا “activity_main.xml” ملف تخطيط وجود جميع وجهات النظر المذكورة أدناه.
ملحوظة: تتم إضافة التعليقات لتحسين قابلية فهم الكود.
class NoRoboGuice يمتد النشاط // طرق العرض اسم TextView؛ ImageView الصورة المصغرة؛ // services LocationManager loc؛ // الموارد سلسلة myName ؛ public void onCreate (Bundle saveInstanceState) super.onCreate (saveInstanceState)؛ setContentView (R.layout.activity_main)؛ // يعين اسم التخطيط = (TextView) findViewById (R.id.name) ؛ // boilerplate initialization thumbnail = (ImageView) findViewById (R.id.thumbnail)؛ // boilerplate initialization loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE)؛ // رمز تهيئة boilerplate = getResources (). getDrawable (R.drawable.icon)؛ // boilerplate تهيئة myName = getString (R.string.app_name) ؛ // boilerplate initialization name.setText ("Hello،" + myName)؛ // الرمز الفعلي
إليك ما يبدو عليه مع RoboGuice:
يعينContentView (R.layout.activity_main) // فئة التخطيط RoboGuice يمتد RoboActivity // viewsInjectView (R.id.name) TextView name؛ InjectView (R.id.thumbnail) ImageView thumbnail؛ // resourcesInjectResource (R.drawable.icon) أيقونة Drawable؛ InjectResource (R.string.app_name) String myName؛ // servicesInject LocationManager loc؛ public void onCreate (Bundle saveInstanceState) super.onCreate (saveInstanceState)؛ name.setText ("Hello،" + myName)؛ // الرمز الفعلي
لا يقلل RoboGuice من الكود فحسب ، بل يساعد أيضًا في تحسين قابلية قراءة التعليمات البرمجية المصدر وإمكانية قراءتها. يستغرق التخمين من تطوير التطبيق و لم يعد رمز التطبيق الخاص بك متناثرًا مع ميكانيكا منصة أندرويد.
هذه الميزة تساعد كثيرا في وقت التصحيح أو تحديث التطبيق كما يمكنك بسهولة قراءة وتغيير شفرة المصدر. لم تعد بحاجة إلى البحث عن الكود الفعلي بين كود تهيئة boilerplate لأنه الآن يوجد الرمز الفعلي فقط ويقوم RoboGuice بتهيئة boilerplate تلقائيًا نيابة عنك.