تطبيق إنترنت غني

**تطبيق إنترنت غني أو قوي**  تسمى أحيانا التطبيقات التي يتم تركيبها عن طريق الإنترنت ( Installable Internet Application ) وهي تطبيق ويب تمتلك مميزات وقدرات تطبيقات الحاسب الشخصي ( Desktop Applications ) .ويتم التواصل معها عن طريق متصفحات خاصة بمصدر واحد ( Site-specific browser ) أو إضافات المتصفحات ( Plug-ins ) أو الاستخدام المنتشر للجافا سكريبت أو الساند بوكس ( sandbox ) ، أو النظام الإفتراضي ( Virtual machine ) ، المنصات الثلاثة الأكثر شيوعا حاليا هم أدوبي فلاش ( Adobe Flash ) وجافا فكس ( JavaFX ) ومايكروسوفت سيلفرلايت ( Microsoft Silverlight ) وتستخدم مع متصفحات سطح المكتب بنسب 96 في المئة 76 في المئة و 66 في المئة على التوالي ( (في أغسطس 2011 ) .

تظهر إحصائيات جوجل تريندز ( في سبتمبر 2012 ) أن الأطر ( Framworks ) المبنية على إضافات ( Plug-ins ) في طريقها للإستبدال ببدائل إتش تي إم إل 5 ( HTML5 ) وجافا سكريبت .

يحتاج المستخدمون عادة لتثبيت إطار البرنامج باستخدام نظام التشغيل للكمبيوتر قبل البدء في التطبيق، عادةً يشكل RIA تطبيقات زبائن بطبقات خدمة منفصلة على الـ Back-End .

## نبذة تاريخية

التطبيقات الشبكية التقليدية تركز أعمالها حول هندسة الزبون/المخدم ( Client \ Server )
مع العميل نحيف (Thin Client ) و بهذا النظام تنفذ كل العمليات على المخدم، والزبون يُستخدم لإظهار النتائج بطريقة غالباً تكون HTML . أكبر سيئات هذا النظام أن كل تفاعل مع التطبيقات يجب أن يمر من خلال المخدم مما يتطلب إرسال المعطيات إلى المخدم واستجابة المخدم وإعادة الصفحة إلى الزبون من أجل الاستجابة .

من خلال RIA و تقنيات جهة المستخدم يمكن تنفيذ التعليمات على حاسب المستخدم والاستغناء عن دائرة المزامنة .
الصفة المشتركة للصفحات التي تستخدم RIA أنها تقدم طبقة وسيطة من الكود تدعى غالباً بمحرك المستخدم Client Engine بين المستخدم والمخدم .

يعمل هذا المحرك كامتداد للمستكشف وغالباً ما يأخذ المسؤولية في إظهار واجهات المستخدم للتطبيق والاتصال مع المخدم .

استخدم تعبير RIA لأول مرة من قبل شركة Macromedia عام 2000 ولكن هذا المفهوم تواجد سابقاً تحت أسماء عديدة وهي :
- Remote Scripting من شركة Microsoft عام 1998 .
- X Internet من شركة Forrester Research في عام 2000 .
- Rich Clients .
- Rich Web Application .

**فوائد استخدام RIA :**

باعتبار أن تطوير التطبيقات التي تعمل على المستكشف أكثر محدودية وبحاجة إلى عملية تفاعل وأصعب من تطوير التطبيقات العادية وبالتالي نجد :

**فوائد الـ Web Application بالمقارنة مع التطبيقات العادية :''
*	التحديث والتطوير (الترقية ) لنُسخ ( Verions ) أحدث يمكن أن تحصل بشكل آلي .
*	وأن تكون مخفية للـ End User .
*	يمكن للمستخدم استخدام التطبيق من أي حاسب متصل مع الانترنيت .
*	توجد العديد من الأدوات التي تسمح باستخدام التطبيق بدون اتصال مثل :
Google Gears و Curl و تقنيات أخرى .
* معظم تقنيات الـ RIA تسمح للمستخدم بالعمل بغض النظر عن [[نظام تشغيل|نظام التشغيل]] الذي يستخدمه .

**فوائد RIA بالمقارنة مع الـ ( Web Application ) :**
* أغنى (Richer ) : يمكن أن يقدم الـ RIA سلوك لـ [[واجهات المستخدمين]] والذي لا يمكن الحصول عليه من خلال [[لغة توصيف النص الفائق|HTML]] فقط والذي تعتمد عليه [[التطبيقات الشبكية]] .
هذا الغنى بالتوابع يمكن أن يتضمن كل شيء يمكن تحقيقه ( Implementing )في هذه التقنية واستخدامه في طرف المستخدم حتى ميزة Drag and Drop .
*	أكثر استجابة More Responsive :إن سلوك الواجهات الطبيعي أكثر استجابة من المستكشف القياسي الذي غالباً يكون بحاجة للتواصل مع المخدم .
*	التوازن بين المخدم والزبون حيث نستفيد من موارد الزبون .
*	[[تزامن الاتصال]] (Asynchronous Communication) :
إن محرك الزبون (client Engine ) يتفاعل مع المخدم بدون انتظار المستخدم، مما يسمح للمطورين باستخدام الـ RIA للتحكم بالنقل بين المخدم والزبون بدون الحاجة إلى انتظار الزبون .
-	فعالية الشبكة ( Network Efficiency ) يمكن تقليص انشغالية الشبكة بشكل كبير وذلك لأن محرك المستخدم أذكى من المستكشف القياسي ويمكنه تحديد المعطيات التي هو بحاجة إلى تبادلها مع المستخدم .
**الممنوع والمسموح في التعامل مع RIA :'''
 
# Sand Box :
لأن RIA يعمل ضمن صندوق الرمال فهو محدود الوصول إلى موارد النظام .
# Enabled Scripting( تفعيل الـ Script ) :
إذا ألغى المستخدم إمكانية الـ Script في المستكشف فسيفشل حتماً الـ RIA في التنفيذ .
# سرعة معالجة الزبون :
للوصول إلى قاعدة ذاتية platform لا تعتمد على أحد برامج الـ RIA ( تعتمد على Script) في طرف المستخدم مكتوب بـ لغة مفسرة مثل Java Script ، وذلك على حساب خسارة جزء من الأداء .
# زمن تحميل الـ Script:
بالرغم من أن الـ Script ليس بحاجة إلى تنصيب إلا أن تطبيقات RIA بحاجة إلى إيصال المعلومات من المخدم إلى الزبون وذلك قد يستغرق وقت طويل .
# خسارة رؤية محركات البحث :
يمكن لمحركات البحث أن تعجز عن الوصول إلى دليل محتويات النص في التطبيق .
# الاعتماد على الاتصال مع الـ Internet :
لا يمكن لـ RIA وحده العمل دون اتصال فهو بحاجة لقاعدة خاصة مثل Adobe Air أو غيرها للعمل .
# الاعتماد على عرض الحزمة :
يمكن أن لا يعمل الـ RIA بالطريقة المطلوبة في حال العمل ضمن حزمة ضيقة .
# الوصولية :
هناك العديد من القضايا المتعلقة بالوصوليات في الـ RIA وأكثرها وضوحا حقيقة أن قارئي الشاشة يعانون من الصعوبات في اكتشاف التغيرات الديناميكية التي تحصل في محتويات HTML .
يُستخدم واي-أريا لحل هذه المشكلة وكذلك يقدم طريقة لإضافة دور خطير Critical Role.
# بشكل عام الـ RIA لا يمكنها الانتشار بالطريقة التقليدية للتطبيقات العادية وتوجد بعض الاستثناءات .
# فيما يتعلق بالأمان ( Security ) توجد عدة أطر عمل تزود المستخدم بالوصول إلى نظام التشغيل المحلي أكثر من التقنيات القديمة المبني عليها .
هذه الإضافة في أيدي المطورين تعطي تطبيقات RIA القدرة على إنشاء أو تفعيل نقاط ضعف شبكية تقليدية مثل :
Cross Site Scripting و التي تستخدم للهجوم على المستخدمين ومن المحتمل انتشار الفيروسات .

## مراجع

تصنيف:برمجيات الجوال
تصنيف:معمارية البرمجيات
*
تصنيف:حوسبة سحابية
تصنيف:ويب 2.0