Web Application VS Desktop Application

الويب

عندما أنشأت وزارة الدفاع الأمريكي الإنترنت في عام 1969، كان يمثِّل ببساطة وسيلة لتسهيل تبادل المعلومات بين الجامعاتٍ ومؤسسات البحث الأمريكيَّة وبين الجيش الأمريكي.

كانت البيانات حينها تنتقل على شكل Plain Text أي نصوصًا مجرَّدة من التنسيقات والمؤثرات والوسائط المتعدِّدة، ثمَّ ظهر البريد الإلكتروني ليساهم في تطور الإنترنت على يد طلاب الجامعات الأمريكيَّة.

وفي عام 1989 قدَّم العالم الإنجليزي تيم بيرنيرز-لي هديَّةً عظيمةً للعالم باختراعه لشبكة الويب العالميَّة في مؤسسة CERN الأوروبيَّة –لا تنسوا قراءة رواية (الحصن الرقمي) لتتعرفوا أكثر على هذه المؤسسة العلميَّة– 🙂

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

والآن؟، كيف أصبح الويب ونحن نعيش في عام 2009 أي بعد 20 عامًا من اختراعه؟. عمليًا، أصبح الويب اليوم يُصنَّف إلى 3 أشكال متباينة:

1- تطبيقات الويب Web Application:

البرامج التي تمنحك القدرة على إنشاء مستنداتك أو تعديل صورك أو ترتيب يومياتك أو غيرها من الوظائف التي تقوم بها تطبيقات الـ Desktop، ولكن عبر متصفحات الويب. مثال: Google Document، برنامج إدارة المشاريع PHProjekt، تطبيقات إدارة محتوى المستندات أو الويب مثل WordPress.

2- خدمات الويب Web Services:

أغلب مواقع الويب 2.0 تُصنَّف كـ خدمات ويب، وهي نوع من التطبيقات الصغيرة الَّتي تركِّز على وظيفةٍ معيَّنة تخدم متصفحي الويب. مثال: كناشة، Untiny، حوّل، … إلخ.

3- مواقع الويب Web Sites:

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

هذه التصنيفات الثلاث هي من ساعدت –عمليًا– على ظهور مصطلح الويب 2.0 ، شاغل الناس ومالئ الدنيا! ومن المحبط حقًا أن يجهل غالبية المتصفحين العرب معنى الويب 2.0، ويحصرون معرفتهم وتصفحهم على مواقع الويب 1.0 المفتقرة إلى التفاعل والبرمجيَّات العاليّة والذكاء الاصطناعي.

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

أحاول إقناعهنّ بأنّ ما أتحدَّث عنه مختلفٌ تمامًا عمَّا يفكّرنَ به ويعرفنه حول الويب، بإمكان الجميع الآن أن ينشئوا مواقع إلكترونيَّة، أمَّا مطوّر الويب المحترف فهو القادر على إنشاء تطبيقات وخدمات الويب!

لا بأس في أن نفضّل تطبيقات الـ Desktop Application عن تطبيقات الويب، تطويرًا أو استخدامًا، لأنَّ هذا عائدٌ إلى ميولنا في نهاية الأمر، لكن أن تظلّ تطبيقات الويب نكرةً مجهولة الأهميَّة، فهذا ما لم أستسغه وهذا أيضًا هو ما دفعني لكتابة هذا المقالة.

وحتَّى لا أتحدَّث كمتعصِّبة 🙂 ، سوف أقوم بكتابة مقارنةٍ محايدة بينها وبين تطبيقات سطح المكتب في 6 محاور:

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

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

3- الأمنية:
لا شكّ في أنّ أمنية تطبيقات سطح المكتب أعلى من أمنيّة تطبيقات الويب بدرجةٍ كبيرة، لأنّ الويب في النهاية هو إحدى خدمات شبكة الإنترنت الَّتي تربط بين مختلف أجهزة الحاسب في العالم، ممَّا يسّهل اختراقها والعبث بها.

4- تحديث التطبيقات:
تحديث تطبيقات الويب أعلى مرونةً بكثير من تحديث تطبيقات سطح المكتب، لأنّ مطوّر التطبيق أو الشركة المالكة سوف تقوم بتحديث تطبيقها على الويب مرَّةً واحدةً فقط، ليستخدمه بعد ذلك آلاف وأحيانًا ملايين المستخدمين. أمَّا تطبيقات سطح المكتب، فسوف يتكلّف كلّ مستخدمٍ عناء تحديث البرنامج بنفسه، وهذا أمر غير فعَّال، وإذا ما نظرنا مثلاً لتطبيق MS Office فإننا نجد الكثير من المستخدمين ما زال يعمل على نسخة 2003 حتى بعد ظهور نسخة 2007 بكثير، لكن من يعمل الآن على النسخة القديمة من Google Document؟ 🙂

5- استهلاك الذاكرة:
في تطبيقات سطح المكتب أنتّ تستهلك الذاكرة في جهازك على 3 أشكال:

  • الذاكرة التي سوف تستخدمها لتخزين البرنامج على جهازك
  • الذاكرة التي سوف تستخدمها لتخزين ملفاتك التي عملتَ عليها عبر البرنامج
  • ذاكرة RAM تختلف من تطبيقٍ لآخر

أمَّا في تطبيقات الويب، فأنت سوف تحتاج إلى نوعٍ واحدٍ من الذاكرة فقط: ذاكرة RAM لتشغيل المتصفح الّذي سوف تعمل من خلاله على التطبيق. أمَّا ملفَّات النظام بالإضافة إلى مستنداتك، فإنَّها سوف تخزّن في قاعدة البيانات التابعة لموقع الويب.

6- المشاركة:
الإنترنت هو وسيلة اتّصال غير محدودة، ومن البديهيّ جدًا أن تكون “المشاركة” هي إحدى أهم سمات تطبيقات الويب، ولربَّما كانت السبب الرئيسي وراء استخدام الكثيرين لها.

حاولت شركة Adobe تقديم حلٍّ متوسّط يجمع بين مميزات تطبيقات سطح المكتب، وبين مميزات تطبيقات الويب، فأنشأت ما يعرفه البعض بـ Desktop-based Web Application. وتتمثَّل هذه التطبيقات بتقنيَّة Adobe Air الَّتي يعرفها الكثيرون، والَّتي مكّنت المطورين من إنشاء تطبيقات ويب تعمل على سطح المكتب وليس على المتصفحات.

أيضًا، قدَّمت تقنيَّة SilverLight من مايكروسوفت حلولاً ذكيَّة لتطبيقات الويب، وقد أخبرنا الأستاذ سعود الهواوي بأنّ النسخة الجديدة منها سوف تكون قادرة على إنتاج تطبيقات ويب تعمل من سطح المكتب.

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

لن أتكهّن بموت تطبيقات سطح المكتب، ولا أعتقد أبدًا بأنّ هذا سوف يحدث، لأنَّ هنالك الكثير من الأعمال الَّتي نحتاج إلى تأديتها بعيدًا عن “شبكة الشبكات”. ولكنّي سوف أتكهّن بمستقبلٍ رائعٍ لتطبيقات الويب 🙂 و .. مرحبًا بالأجيال الجديدة والعظيمة منه!

  • عبدالله ناصر

    تسلمـ عالتدوينة المهمة ياخويـ

    جاري القراءة ^^

  • مقالة أكثر من رائعة أختي إحسان أعجبتني كثيراً شكراً لك

  • نتيجة المباراة 2-4 🙂
    مقالة جد مفيدة خاصة وأنها حلت مشكلة الخلط بين خدمات الويب وتطبيقات الويب هذه الأخيرة رغم أنها تدخل في خيارات مشروع التخرج في جامعاتنا العربية إلا أنها ترى بعين إستصغار ربما لسهولة المشروع المقترح أو لعدم وصولنا إلى ماوصل إليه الغرب من تخصص في هذا النوع من برمجيات.

  • لدي ملاحظة على تصنيفات الويب المذكورة.

    بحسب معرفتي فإن مواقع الويب تشمل حدمات الويب web services وتطبيقات الويب web applications. وأن خدمات الويب هي عبارة عن شكل من أشكال الحوسبة الموزعة Distributed computing والتي تعتمد على بروتوكولات مختلفة كـ SOAP و REST وتقنيات معينة كـ XML.

    هذا مالدي باختصار شديد.

    آسف على تدخلي ..

    نبيل

    • هذا ما كنت اريد قوله ..

      فلو ضربنا مثال على خدمات الويب

      لضربنا مثال على الـ RSS و Google API مثلا

      اما موقع Untiny ما هو الا تطبيق ويب يقدم خدمات ويب عن طريق APIs

      و بفضل توفير خدمات ويب فيه قامات تطبيقات تعتمد عليه مثل UntinyFox

      و نفس الكلام ينطبق على twitter و اضافة TwitterFox

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

      سوى كانت على الويب و على سطح المكتب

    • إحسان

      شكرًا لكما جدًا على تصحيح المعلومة ..
      كان لدي تصور مختلف حول خدمات الويب ، ربَّما بسبب الكلمة المتداولة بيننا : خدمة كناشة للدفاتر الإلكترونية ، خدمة حوّل لتحويل الملفات .. وهكذا .

  • رائع جداً ..

  • Riddek

    Great Post .:)

  • جزاك الله خيرا اختي الفاضلة و بارك الله فيك تدوينة رائعة استفدت منها كثيرا

  • كعادتك اختي إحسان تبدعين عندما تكتبي المقالات التقنية

    من وجهة نظري ان التوجه القادم هو لتطبيقات الويب وزوال تطبيقات سطح المكتب وهنا انا اتكلم من منظور الشركات والمؤسسات

    فتطبيقات الويب سوف تساعد الشركات والمؤسسات على توفير الكثير من المصادر مثل السيرفرات وتوفير الموظفين الذين يقوموا بعمل الدعم الفني لهذه السيرفرات

    فتطبيقات الويب تساهم في تقليص التكاليف ولا انسى المميزات التي نعرفها مسبقا والتي ذكرتيها في المقال مثل المشاركة وسهولة الوصول وغيره

    خلاصة الكلام ان تطبيقات الويب هي المستقبل ويكفي اننا ننظر لقوقل كيف انها تريد ان تنشئ نظام تشغيل للاجهزة المكتبيه يعتمد اعتمادا كليا على تطبيقات الويب

    شكرا أختي إحسان

  • XPSKY

    معلومات قيمه فشكرا على التدوينه

  • مقالة رائعة

  • alfarok

    السلام عليكم

    مشكورة على الاعداد والعرض

    ووجهة نظرى اننا لن نستفيد من تطبيقات الويب بشكل كامل الا مع اتاحة اتصالات عالية السرعة بالانترنت

    وشكرا لكم

  • بداية أشكركم إخوني في عالم التقنية على هذا الموضوع

    لدي تنويه بسيط حول البند الخاص بالـWeb Services

    التعريف المذكور هو التعريف العام وليس تعريفاً علمياً ولا تقنياً، والوصف الصحيح للمواقع المذكورة هو ويب 2 وليس خدمات الويب

    خدمات الويب يجب أن تتبع أسلوب معين وأن تتسم بخصائص محددة يمكن الإطلاع عليها من أي مرجع تقني أو حتى من خلال ويكي بيديا
    http://en.wikipedia.org/wiki/Web_service

    بشكل عام أي خدمة ويب يجب أن تعمل وفق
    Service Oriented Architecture (SOA)
    بحيث تمر في المراحل الثلاث ” النشر ، البحث ، الربط ”

    بناء على ذلك يكون “أن-تني” هو الوحيد بين الأمثلة الذي قد يجوز وصفه بخدمة ويب.

    دمتم بود

    • إحسان

      شكرًا لك ..
      وسوف أحاول قراءة مقال ويكبيديا إن شاء الله

  • لفتة مجدية عزيزتي إحسان
    بارك الله فيك

  • ألب أرسلان

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

  • DoOoDy

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

  • البتول

    مقالة قيمـّة ..
    شُكراً لكِ ..

  • لازال أمام تطبيقات الويب طريق طويل لتقطعه فلحد الآن فهي لا تلبي حاجيات المحترفين بشتى المجالات التصميم،البرمجة،محاكيات الألعاب…ولا أظنها قادرة على ذلك من جهة أخرى فالمستخدم لم يضع ثقته بها بعد على سبيل المثال تعديل المستندات فمن سيجرأ على تحرير رسالته الجامعية بمحرر من تطبيقات الويب؟
    لدي ملاحظة صغيرة حول تنسيق الموضوع : لا داعي لإستخدام التشكيل بكل كلمة فالنص الخالي من التشكيل أفضل للعين بخلاف النص المشكول الذي يظهر النص كما لو أنه كتب بكراسة تلميذ
    أذكر أن التشكيل كان يحذف من جميع الكتب المدرسية إنطلاقا من الأولى إعدادي
    أيضا بالنسبة لزوار موقع التقنية فلا أظن أن مستواهم اللغوي بهذا الفقر ليتم تشكيل كل كلمة
    قد أكون إستخدمت النقد اللادغ فأسف مسبقا^_^

    • للتوّ أقرأ هذا التعليق 🙂
      أخي أنا لا أشكّل كلّ الكلمات وإنّما لديّ اقتناع تامّ بضرورة تشكيل :
      1- الشدّة ، لأنّها تُعتبر من ناحية لغويّة حرف وليس حركة .
      2- الكلمات الَّتي قد تتغيّر معانيها أو تصبح ملكّكة بدون استخدام التشكيل ، مثل كلمة ” تُعتبر ” في النقطة الأولى ، فقد تُقرئ : تَعتبر بالفتحة .

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

      ومرحبًا بك

  • KALFOD

    مقال جميل شكرأ

  • Mutee0s

    تصوير الموضوع و كأن هنالك تنافس او يجب ان يكون هنالك تنافس بين التطبيقات التي تعمل في بيئة نظام محلي و أخر في بيئة سيرفر بعيد هو غير دقيق

    تطبيقات الويب و التي تعرف بأسم RIA أو Rich Internet applications لها عمل خاص بها كما ان البرامج التي تعمل في النظام المحلي لها عمل خاص بها و لا يجب الخلط بين عمل كل من هذه البرامج

    RIA applications تستخدم في الملتيميديا و الخدمات التي توجب مشاركة المعلومات في نفس الوقت لبعض الشركات التي تحتاج الى تبادل البيانات مع فروعها او زبائنها و ايضا في عمليات تحليل البيانات و مشاركتها على من يهمه الأمر مثل بورصة الاسهم وغيرها و لذلك هي لن تلقى نجاح كبير في غير هذه المجالات كأن تكون برامج فرديه او ذات أستخدام فردي لا يوجب المشاركه مثل برامج التصميم الفوتوشوب او برامج الحمايه او برامج الصيانه
    و الأمر لا علاقة له بسرعة الأنترنت من عدمه ,

    نحن حاليا نقوم بعمل Air App خاص بتحليل المواقع و سيتم الأعلان عنه قريب

    • أخي الكريم ..
      هناك فرق كبير بين تطبيقات الويب وتطبيقات الديسكتوب المعتمدة على الويب RIA ، أنا هنا أتحدّث عن الاولى / مستندات جووجل على سبيل المثال .
      فالتنافس بين تطبيقات الويب وتطبيقات سطح المكتب واقعٌ لا محالة ، يمكنك كتابة عبارة Web App VS Desctop App لتعرف كم هيَ نظرية حقيقية .
      أمّا الـ RIA فلها مجالها الَّذي ذكرتَه – حاليًا – ولا أحد يعرف كم ستتطوّر او تتأخّر .

تعليقات عبر الفيسبوك