مفهوم التواصل بين قواعد البيانات و تطبيقات الهواتف الذكية

عام 0 geek4arab
Spread the love

أحببت أتطرق لهذا الموضوع التقني البحت بحكم كثرة الأسئلة في هذا الموضوع  وسأحاول شرح الطريقة ومفهومها بعيداً عن الكود وطريقة كتابته.

 

في البداية : من الذي سيتفيد من قراءة هذا الموضوع؟

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

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

المفهوم العام:

 

في مثل هذه التطبيقات هناك جانبين مهمين جداً كما هي موضحة في الشكل ، وهي جانب العميل وجانب الخادم (client side and server side ) حيث يركز جانب العميل في تجهيز البيانات ليتم نقلها إلى جانب الخادم. ويهتم الخادم في عمليات قواعد البيانات واستخراج المعلومات. وسأشرحها في طريقة خطوات حتى تتضح الصورة:

 

جانب العميل:

  • تتم العمليات في أجهزة الهواتف الذكية ثم يتم تجهيز البيانات في هيئة XML أو JSON  حتى يسهل على جانب الخادم قراءتها.

  • يتم ارسال هذه البيانات إلى جهاز الخادم عن طريق HTTP Request.

جانب الخادم:

  • يستقبل ملف XML أو JSON سكريبت في السيرفر مخصص لقراءة البيانات من الملفات بهذه الصيغة  معروف بي Web service  وقد يكون مكتوب بأي لغة مثل php و Python و Ruby. وهناك مكتبات جاهزة من وندوز للتعامل مع هذه البيانات وأيضاً مجموعة من المصادر المفتوحة. http://msdn.microsoft.com/en-us/library/ms731082.aspx ,

  • يتم التعامل مع هذه البيانات سواءً إدخالها في قاعدة البيانات أو تعديل أو استخراج معلومات أخرى حسب الحاجة.

  • يتم الرد سواءً بنجاح العملية أو فشلها و الخطأ الذي حدث. أو يتم الرد بهيئة XML أو JSON .

فكل مرة تفتح فيها تطبيق مثل فور سكوير هناك HTTP Requist يحدث ويتم سحب البيانات من الخادم عن طريق الانترنت ولهذا في حالة انعدام الاتصال لا يمكنك تصفح أحدث البيانات.

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

http://net.tutsplus.com/tutorials/php/working-with-restful-services-in-codeigniter-2

الكاتب geek4arab

geek4arab

مواضيع متعلقة

التعليقات مغلقة