المزامنة دون اتصال

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

يُعرف أيضًا بـ العمل دون إنترنت المزامنة في الخلفية المزامنة اللاحقة

التعريف

المزامنة دون اتصال هي ما يجعل التطبيق يواصل العمل بلا شبكة. فالعمل يُحفظ على الهاتف نفسه. وحين تعود الشبكة، يرسل التطبيق كل شيء إلى الأعلى ويسحب ما تغيّر أثناء غيابك.

سائق التوصيل في جراج تحت الأرض يظل قادرًا على تسجيل تسليم الطرد. ومندوب المبيعات في قرية يظل قادرًا على كتابة الطلب. والممرضة في قسم بجدران سميكة تظل قادرة على تسجيل القراءة. لا ينتظر أحد منهم، والموظفون يلاحظون الفرق من اليوم الأول.

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

وهناك أشياء يجب ألا يُوثق بها دون اتصال أبدًا. كل ما هو نادر، وكل ما يخص المال. لا تَعِد بآخر مقعد أو آخر غرفة أو آخر قطعة في المخزون من هاتف انقطع عن الشبكة منذ ساعة. ولا تدع سعرًا أو خصمًا أو رصيد مخزون يُحسم على الجهاز. ولا تعتبر الدفعة محصّلة حتى يقول خادمك ذلك. الهاتف يحمل الطلب، والخادم هو الذي يقرر. واسأل أي مورّد كيف يعالج حجزًا مزدوجًا صنعه هاتفان دون اتصال، وأنصت جيدًا للإجابة.

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

أسئلة حول المزامنة دون اتصال

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

ما زلت غير متأكد كيف ينطبق هذا على مشروعك؟

أخبرنا بما تبنيه وسنجيبك بلغة واضحة.