سؤال

كنت أستخدم RestKit خلال العامين الماضيين، ولكن مؤخرًا بدأت أفكر في الانتقال من إطار العمل المترابط هذا لأنه يبدو مبالغًا فيه حقًا.

إليك إيجابياتي للمضي قدمًا:

  1. هناك حاجة كبيرة لاستخدام NSURLSession لجلب الخلفية ولدى RestKit فرع تجريبي فقط للانتقال إلى AFNetworking 2.0.لا توجد تواريخ فعلية لانتهاء عملية النقل.(سبب رئيسي)
  2. ليست هناك حاجة لدعم CoreData في مكتبة الشبكة حيث لا توجد حاجة لتخزين البيانات دون الاتصال بالإنترنت بكامل طاقتها.
  3. تواجه صداعًا بسبب المفهوم الجديد لواصفات الاستجابة/الطلب لأنها لا تدعم معلمات مختلفة في أنماط المسار (على سبيل المثال.معلمة رمز الوصول) ولا توجد طريقة لإنشاء عملية طلب كائن في سطر واحد باستخدام واصف مخصص.أنا هنا أفقد ميزات مدير الكائنات كواجهة.

أنا. أكبر خسارة لـ RestKit بالنسبة لي عملية رسم الخرائط الكائن. هل يمكنك التوصية بالمكتبات المستقلة التي تستخدمها والتي تظهر أنها مرنة ومستقرة؟

ثانيا. وكما أنا حزين أحتاج لا تعمل بكامل طاقتها التخزين ولكن ما زلت بحاجة إلى بعض دعم التخزين المؤقت في بعض الأماكن.لقد سمعت أن NSURLCache أصبح مفيدًا في الإصدار الأخير من نظام التشغيل.هل استخدمته وما هي الاستراتيجية؟هل يعود مخبأة استجابات API عندما يكون اتصال الشبكة معطلاً?

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

هل كانت مفيدة؟

المحلول

أنا.بالاتفاق مع الآخرين الذين علقوا، AFNetworking + عباءة هي طريقة بسيطة وفعالة للتفاعل مع Restful API واستبدال عملية تعيين كائنات RestKit التي فاتتك.

ثانيا.تعتمد الإجابة على متطلبات دعم التخزين المؤقت بشكل كبير على السياق.ومع ذلك، فقد وجدت بالنسبة لمتطلباتي الوظيفية الأخيرة أن التخزين المؤقت لنموذج عرض لشاشة وحدة تحكم معينة والتخزين المؤقت فقط للبيانات المرجعية التي يتم إرجاعها بواسطة واجهات برمجة التطبيقات يسمح لي بالحفاظ على منطق التطبيق بسيطًا نسبيًا مع منح المستخدم بعض الاستمرارية.يمكن التعامل مع إشعار خطأ بسيط يتعلق بمشكلات الاتصال بطريقة شاملة.

ثالثا.أحد الأفكار حول البنية ذات الصلة بهذا الجانب هو التأكد من أن واجهات برمجة التطبيقات التي يعتمد عليها التطبيق توفر البيانات وفقًا لتجربة التطبيق.يسمح هذا لتطبيقك بالتركيز على ما يجيده (تجربة مستخدم رائعة للغاية) وينقل المنطق إلى واجهة برمجة التطبيقات الأقرب إلى تبعيات واجهة برمجة التطبيقات مثل البيانات.وهذا له فائدة أخرى تتمثل في تقليل الدردشة في التطبيق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top