صمّم لاتصال سيّئ: تطبيق يعمل على 3G متقطّع
معظم القوالب تفترض اتصالاً ممتازاً. الواقع عندنا غير ذلك، والتصميم للاتصال السيّئ يغيّر معمارية التطبيق: أولوية دون اتصال — اكتب إلى قاعدة محلية (Hive أو Isar أو SQLite) أولاً، وزامِن في الخلفية. المستخدم لا ينتظر الشبكة أبداً. طابور عمليات — العملية الفاشلة تدخل طابوراً وتُعاد لاحقاً، لا تضيع برسالة خطأ. مهلات قصيرة وإعادة محاولة بتراجع أسّي — مهلة 30 ثانية تجمّد الواجهة بلا فائدة؛ اجعلها 8 ثوانٍ وأعد المحاولة. ترقيم الصفحات وضغط الاستجابات — لا تحمّل 500 عنصر دفعة واحدة، وفعّل gzip. مؤشرات صادقة — أخبر المستخدم أنه غير متصل وأن التغييرات ستُرسل لاحقاً، بدل دوران لا ينتهي. النتيجة تطبيق يبدو أسرع حتى على اتصال جيد.