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