الترخيص
هذا المُصتّف بواسطة محمد العلبان مرخض بموجب ترخيض المشاع الإبداعي تسب المُصتّف - غبر نجاري -
للتواصل مع الكاتب
مدن لقنا
مقدمة
بُلخص هذا الكثيب التليمي مفاهيم أساسية في برمجة التطبيقات الموزعة باستخدام تغنبة 18141 10778, وهو موجه لطلاب كلبات علوم
الحاسب, والهندسة المعلوماتية. والمبرمجين المهتمين بهذه التغنية والذين يتغنون لغة البرمجة جافا
يُقدم هذا الكُتيب التليمي البسبط والمتماسك نظرة عامة على إحدى تقنيات البرمجة المستخدمة في النظم الموزعة و هي 1811818311+
بحئوي الكُتيب على شرح لبعض المفاهيم النظرية المستخدمة في هذا النموذج من البرمجة الموزعة والمسمى 18606:60866 18601016
210016 وذلك من خلال مثال عملي بسبط يشرح الفكرة ببساطة. بالإضافة إلى كيفية تنفيذ المثال و مشاهدة الخرج وذلك من خائل
تم الإنتقال لدراسة حالة أعمق وأكبر وهي تطبيق محادئة شبيه ببرنامج سكايب الشهير وقد ُصلّت في شرح الركائز الأساسية في بناء
هذا التطبيق.كما يمكتكم مشاهدة كود التطبيق على منصة 6:01 ٠ والتي تتبح مشاركة الكود وإعادة استعمله بشكل اجتماعي
حمشق في 2014-5-29
مضمة عن 18341
تعريف واجهة خدمة 1001...
تحقيق واجهة خدمة 18311
إنشاء تطبيق مخدم 18311
إتشاء تطبيق زبون 18311 ..
كيقية العمل
خطوات تشغيل النظام
حالة برامية براي عونت تطبيق تيه ينظام مم51
مقدمة تاريخية
مع تطوز الحياة البومية و ظهور الحوسية الموزعة (ع 10130 0070© 0180 15117). ظهرت الحاجة إلى التخاطب بين التطبيقات
و خصوصاً التخاطب بين التطبيقات القديمة (51/5180018 /©1688) والحديئة.
عملية التخاطب هذه ثم باستخدام برمجيات وسيطة أو ما تسمى 170018286 وهذه البرمجيات الوسبطة هي عبارة عن معبار
تخاطب بين التطبيقات له خصائص معينة. وهذه الخصائص في الحقيقة هي متطلبات غير و8ظيفية , أي أنها مجموعة من الشروط
والقبود مثل: أن يعمل التطبيق على الويب (138588 187880) و الحماية (/5800111) وأن تكون مستطة عن نوع الحاسب وعن نظام
التشغيل (10080600801 121500111 . والكثير من المزايا الأخرى وجميعها تشترك في أنها خصائص غير وظيقية.
ستكلم عن عتة::1110016 خاصة بشركة 6اعاول 116005 ترك ١ هي 10211 لممتتق :ام 116100 ع1م0صعة0)
مقدمة عن 18111
1 هي تقنية خاصة بلغة جافا وهي مستخدمة في النظم الموزعة. هذه التقنية تسمح لغعرض 00666 بعمل على 117/11 على
حاسب ما أن يستدعي (10701:8) لطريقة (148000) غرض آخر يعمل على 171/1 [على حاسب آخر . وهذان الحاسبان موصولان
- هذه التقنية مفيدة جداً في تطوير الأنظمة الكبيرة التي تحتاج إلى قابلية التوسع 25001811117
- تسمج لنا 1811 باستدعاء مناهج 1080005 لأغراض موجودة على حاسب بعيد كما لو أنها موجودة على الحاسب
كل 58168 18041 يتم تحريف واجهة لها 1016:00©8. والني توصف جميع مناهج الأغراض التي يمكن ان تستدعى عن بعد هذه
الواجهة بجب أن تكون مشتركة بلنسبة لكل المطورين الذين سبكتبون هذه الخدمة آي إن هذه الواجهة ننصرف كما لو أنها مخطط
للتطبيقات الني سوف تستخدم وتُزود التوليفات 10101810160184300 لهذّه الخدمة عن طريق المطورين.
مقارنة بسيطة بين 1811 و 1856
في الحقيقة 1876 ظهرت بد أن انتشرت تقيات البرمجة غرضية التوجه 001 . وبما أن 1876 تستخدم في نمط البرمجة
1. بينما قدمت مجموعة 0146 بروتوكول 6018138 ويتلك أصبح من الممكن استخدام 180 في لغة عرضبة التوجه.
مشكلة 801 أنها تدعم البرامج المكتوية بلغة جافا فقط.
ملاحظة: في الحقيقة مع ظهور 121585 قدمت شركة ون حلاً لهذه المشكلة من خلال تكنولوجيا تسمى 11017 :6ل1ه 182111 والني
هي عبارة عن جسر ربط مع أنظمة 001738.
* حلياً م0166 لا 06616 اشترت شركة وري
107 هو بروؤوكل 04.
الأنظمة التي تستخدم 18041 كوسيلة للتواصل بين التطبيقات نُقُسم عادة إلى مجموعتين : الزبائن 6116015 والمخدمات
5 المخدم 50076 بقدم خدمة 1811 والزبون بقوم باستدعاء منهج غرض من هذه الخدمة.
مخدمات 18111 يجب أن تسجل نفسها ضمن خدمة /(:1وقع001188 تؤمن جدول تقال (م 1.000 لهذه الخدمات. وذلك لكي
تسمح للزبائن بأن يجدوا هذه الخدمات. أو يمكنهم أن بحصلوا على مرجع 180088008 متوفر لهذه الخدمة بطريقة ما
بأني مع الجافا تطبيق يُسمى /زانع071188, والذي يعمل كمهمة 000685 مستظة ويسمح التطبيقات بأن تسجل خدمات
1 أو أن نحصل على مرجع 186606066 الأسم خدمة معينة.
حالما قوم المخدم بالتسجيل سوف بقوم بإنتظار طلبات الزبائن من أجل خدمة 181:11 معينة.
كل عملية تسجيل خدمة في 10113681515 مرتبطة باسم هذه الخدمة والني يُعبر عنها ب 50108 لها عنوان آ1[18
(#عتقعم1 1865011566 تصن نتوصف هذه الخدمة ولكي بسمح للزبائن بأن بختاروا الخدمة المناسبة عن طريق
جدول التقابل الموجوذ في 1101156515
الزبون يرسل رسالة 1811 ليستدعي منهج غرض عن بعد. قبل أن بحدت هذا يجب على الزبون أن بحصل على
681800 للكائن البحيد. و بثم الحصول عليه من خلال خدمة جدول التقابل 560168 م00100] الموجودة داخل
لإتاقاعة تسم
التطبيق الزبون يطلب اسم خدمة معينة وينشئ .181] تُمثل مرجع إلى الكائن البجيد 880616068 00601 186101018
معين) طبماً 18111 نستخدم ع 5110 تخضع لقواعد ,10181 لتمئيل مرجع إلى الكائن البميد 00821 186101016
1806:8002 ولها الشكل التلي
1- 110800018 اسم المخدم أو ال 18 الخاص به.
560106078: اسم الخدمة وهو عبارة عن اسم الخدمة أو واجهة الخدمة 101617886 50110168 كما سترى في
حالما بتم الحصول على المرجع 1868:6068 الذي يشير إلى الكائن البعيد وذلك عن طريق لوتاجتع0111138, عندها
يستطيع الزبون أن يتفاعل مع الخدمة البعيدة (يقو باستدعاء المناهج الممرّفة داخل واجهة الخدمة عن بعد وكأنه يستدعيها
على الحاسب الخاص به)
التفاصيل الشبكية المنطقة بكيفية إرسال الطلب من الزبون هي شفافة ثماماً بلنسبة لمطور التطبيق
لقد أصبح العمل مع الكائئات البعيدة بسيط جداً كما لو أننا تمل مع كائئات محطية. وذلك سبب التقسيم الذكي المستخدم في
1- 5005 : عبارة عن غرض بقوم بإيصال الطلبات إلى المخدم البعيد. بقوم 58010 بفتح ]50018 مع المخدم البعيد
بحوي طلب الخدمة' .ثم يقوم بالإننظار حنى بينم استدعاء المنهج ثم يرد النتائج إلى ال 5:10 والذي بعيدها إلى
581600: عبارة عن غرض يمثل ع115606 يقوم بالتنصت على 208 معيئة ليستفل طلبات الزبائن(والتي يتم
إرسالها عن طريق ال5ل80 ) ومن ثم يقوم بتمرير هذه الطلبات إلى 560101685 10311
عملية التواصل بين ال 50088 عند الزبون وال 51818100 عند المخدم نتم باستخدام 500081 707
يمكن تلخيص آلية عمل طائ81 و 816100:ا8 من خلال الصورة التالبة
ماه (ه)
تعريف واجهة خدمة 18011
أي نظام سوف يستخدم 1811 يجب أن يستخدم واجهة الخدمة 101661508 5610108؛ وهي عبارة عن تعريف لمناهج العرض الني
المنهج. تحفق 581/108 18311 ايضاً 101016016018110 لهذه الواجهة عن طريق صف (01888) ما. لهذا السبب بقوم المطورون
بإعادة تعريف المناهج 1161005 سلفاً. وايقاف التغبرات على الواجهة (10161208) حتى تبداً عملية النطوبر
كل واجهات الخدمة 1018:2806 58111108 يجب أن ترث من الواجهة 817.0011.148071018[ والتي تساعد في تعريف المناهج التي يمكن
ملاحظة : كلمة 1018:2666 5611168 تكافىء 081018 501108 لأن الخدمة يتم تعريفها كواجهة.
مثال :
سنقوم بتعريف الواجهة 10ن03:اع183411 والتي تمثل فليا خدمة 8111 والتي تعبر عن حالة مصباح (يعمل أو لا يعمل). في الحقيقة
إن أي خدمة يقدمها المخدم هي عبارة عن واجهة ثرت من الواجهة 18172.11111.166011018
* لأن 18141 مينية فق 1476 و 1400 مينية فوق 506:81
عاصيكة ك لاه1 تامعن طلنعةعتتصا عة عام عتتالام
هذه الواجهة تحوي المناهج التي يجب أن تكون متوفزة في أي مصباح أو في أي شي يضبئ
تحقيق واجهة خدمة 10111
حالما يتم تعريف واجهة الخدمة يجب أن تقوم بتحقيق هذه الخدمة (واجهة الخدمة) عن طريق إعادة كتابة جمبع الوظائف
1118016 كامعملصمة
زه طانط وصلة /
طاط زه عاماء كينع ره . 9 :7/7
از( متنقاضع سناع
بطع 11 سناع
إنشاء ال 0135595 صماعاء516 قصد طنق
إنناء الصفرف الخاصة 840 وال 816616600 هي ليست من مهام المطور وإتما عن طريق مترجم 88301 وهذا المترجم يُسمى
علو والني تأي كجزء من حزمة ال 1016. ويثم ذلك عن طريق موجه الأوامر 1108 00701800 كما بلي
0م1 101060 عتم
وبلثالي نكتب في موجه الأوامر
(نتج لدينا ملفات بلاحقة 01855.) حتى يتم توليد الملفين التالين
إنشاء تطبيق مخدم 18111
المخدم هو المسؤول عن إنشاء كائن من الصف الذي يحفق الخدمة' . ومن تم بقوم بملية تسجيل الخدمة ضمن لإتاقاع10116.
غيم ةكطيقاهنا ككماء عتلطم
! عندما تكلم عن خدمة فنا تصد واجهة الخدمة و11 5/0162
كيفية العمل
في البداية فمنا بإنشاء كائن من الصف الذي يحقق الخدمة والذي هو الصف 01010101 18341141:133؛ ثم فمنا بالحصول على مرجع إلى
الكائن البسيد 0601 1680018 10 188]860008 عن طريق المنهج (801168]0 والذي يظهر فغط عند تحقيق الواجهة 16801016 ثم
كمنا بتشكيل ,1181 تُمتل مرجع إلى الكائن البجبد
الآن سنقوم بحملبة تسجيل ال بل الخدمة إعلماداً على ال 8 وهو صف مسؤول عن تسجيل خدمة من قبل
مخدم أو طلب خدمة من قبل زبون. يتم تسجيل الخدمة المنهج 80100 و هو منهج ©1011» بأخذ بارمترين الأول هو 18151581100
وهو متحول 51808 بوصف الخدمة بشكل كامل ويتم إنشاوؤه عند تسجيل خدمة من قبل المخدم أو طلب خدمة معينة من قبل الزدون»
يخضع هذا المتحول إلى قواعد ,10181 فبحوي عنوان الحاسب الذي بستضيف الخدمة بالإضافة إلى اسم الخدمة(وهي فعلباً اسم
واجهة الخدمة 1018:2008 5811108). أما ال20:1 فهو اختباري., هذا المتحول 7881548100 بمتل اسم خدمة سيتم إضافها إلى
/7 016( وقد تكون موجودة). هذا الاسم يخضع لصبغة 81لا ويمتل مرجع لكلان بيد
أما البارمتر الثاني يفهو يُمتل الكلن البعيد الذي سيشير إليه البارمتر الأول (المتحول 18918184001 ).
وطبعاً لا نتسى موضوع معالجة الإستتتاءات فهو هام جداً لإستفرار البرنامج ولمعرفة مكان وجود المشلكة في حال حدوتها أثناء التنفيذ
إنشاء تطبيق زبون 18111
في الحقيقة كتابة تطبيق زبون 181:11 أسط من كتابة تطبيق مخدم. كل ما بحتاجه الزبون هو الحصول على مرجع إلى الكائن البعيدء
وهذا بثم من خلال إنشاء منحول ع510 بوصف الخدمة بشكل كامل وهذا التوصيف بخضع إلى فواعد ,11181 (كما في المخدم)؛ نم
الطب هو ال 510816600 والذي يعمل ك 14518088 يستفل الطلبات ثم يمررها لخدمة 18311
#معتتطليمطهنا ككمك تلام
ز() )ام ع بجع ك1نط