تحية طيبة،
النقطة (1):
يتم تعريف العمارة لتكون القواعد والاستدلال وأنماط الحكم:
تقسيم المشكلة والنظام سيتم بناؤها في منفصلة
تستخدم تقنيات القطع لإنشاء واجهات بين هذه القطع
تقنيات لإدارة الهيكل العام وتدفق
التقنيات المستخدمة ليكون واجهة لنظام بيئتها
المناسب استخدام نهج التطوير والتسليم، والتقنيات والأدوات.
تعريف العمارة هي جزء من عملية تطوير البرامج. هدفها الأساسي هو تحديد متطلبات غير وظيفية للنظام، وتحديد بيئة. ويتبع التصميم التفصيلي من قبل تعريفا للكيفية توصيل سلوك وظيفي في إطار القواعد المعمارية. العمارة مهم لأنه:
ضوابط تعقيد
تطبق أفضل الممارسات
يعطي الاتساق والتوحيد
تتواصل الاحتياجات من المهارات
يقلل من خطر
يمكن إعادة استخدامها.
نقطة 2:
IEEE الأمراض المنقولة جنسيا. 610،12-1990: نظام هو مجموعة من عناصر تنظيم لإنجاز وظيفة محددة أو مجموعة من الوظائف.
النقطة 3:
هناك طرق كثيرة مشتركة من تصميم وحدات برامج الكمبيوتر والاتصالات الخاصة بهم، من بينها:
سبورة
خدمة العملاء (2-الطبقة، N-الطبقة، الند للند، السحب الآلي عن استخدام هذا النموذج)
قاعدة بيانات مركزية الهندسة المعمارية (ويمكن إجراء تقسيم واسع للبرامج التي لديها قاعدة بيانات في وسطها والتطبيقات التي لا يجب أن تعتمد على قواعد البيانات، على سبيل المثال برامج تطبيقات سطح المكتب، البرامج المساعدة الخ)
الحوسبة الموزعة
العمارة الحدث يحركها
الواجهة الأمامية والخلفية،
ضمني الاحتجاج
متآلف تطبيق
الند للند
الأنابيب والمرشحات
المساعد
الدولة التمثيلية نقل
حكم تقييم
بحث المنحى الهيكل (A الخدمية نقي بتنفيذ خدمة على كل نقطة وصول إلى البيانات)
هيكلية الخدمات الموجهة
لا شيء مشترك الهندسة المعمارية
البرنامج مقومات (بصرامة وحدة على أساس، وعادة وجوه المنحى البرمجة ضمن وحدات، وأقل قليلا متجانسة)
العمارة الفضائية
المنظم (وحدة على أساس ولكن متجانسة عادة ضمن وحدات)
نموذج من ثلاث طبقات (بنية المنطق مع تقديم الأعمال، وطبقات قاعدة بيانات)
نقطة (4):
من هم الاصدقاء الثلاثة؟
جرادي Booch، رامبوغ جيمس، وايفار جاكوبسون، والتي يشار اليها عادة زعماء طريقة توحيد الجهود التي أدت إلى إنشاء UML، على أنها لغة Amigos.The ثلاثة النمذجة الموحدة (UML) تم تطويره من قبل Booch جرادي، رامبوغ جيم وايفار جاكوبسون (والاصدقاء الثلاثة) كوسيلة لتحديد النظم المعقدة الكبيرة.
جرادي Booch أهمية البرمجيات في الجمعية 0004 فيديو - يوتيوب. يجب أن نرى فيديو
https://www.youtube.com/watch؟v=Q8SmtqxTqf4النقطة 5: دروس فيديو
سهولة الاستخدام وهندسة البرمجيات: إن مشاكل المنسية: stanfordUniversity، الولايات المتحدة الأمريكية
https://www.youtube.com/watch؟v=CRx4h4ITx9g~~Vنمذجة البرمجيات والهندسة المعمارية
https://www.youtube.com/watch؟v=79hrNLm6S7k&feature=related~~Vدور مهندس البرمجيات
https://www.youtube.com/watch؟v=lFGIVHeQPbg~~Vأورايلي البث الشبكي: 10 أشياء كل مهندس البرمجيات يجب أن تعرف
https://www.youtube.com/watch؟v=Dtd0njgo4s8النقطة 5: الأنماط المعمارية
بنية متعددة الطبقات، ومبادئ التصميم
فرق تسد: يمكن طبقات مصممة بشكل مستقل.
زيادة التماسك: الطبقات المصممة جيدا لها التماسك طبقة.
الحد من اقتران: الطبقات السفلى جيدة التصميم لا أعرف عن الطبقات العليا، والاتصال الوحيد بين طبقات
من خلال API.
زيادة التجريد: أنت لا تحتاج إلى معرفة تفاصيل كيفية تنفيذ الطبقات السفلى.
زيادة إعادة استخدام: لا يمكن في كثير من الأحيان الطبقات السفلى تكون مصممة بشكل عام.
بنية متعددة الطبقات، ومبادئ التصميم
زيادة إعادة استخدام: يمكنك إعادة استخدامها في كثير من الأحيان طبقات بنيت من قبل غيرها من الجهات التي توفر الخدمات التي تحتاج إليها.
زيادة المرونة: يمكنك إضافة مرافق جديدة مبنية على أدنى مستوى من الخدمات، أو استبدالها على مستوى أعلى طبقات.
توقع القدم: من خلال عزل العناصر في طبقات منفصلة، يصبح النظام أكثر مقاومة للتقادم.
تصميم لقابلية: يمكن عزل كل التسهيلات التي تعتمد في واحدة من الطبقات السفلى.
ويمكن اختبار الطبقات بشكل مستقل: تصميم لقابلية الاختبار.
تصميم دفاعية: واجهات برمجة التطبيقات من طبقات من الأماكن الطبيعية لبناء صارم في تأكيد للتحقق.
وخدمة العملاء وغيرها من الأنماط المعمارية الموزعة
هناك ما لا يقل عن عنصر واحد له دور الخادم، في انتظار ومن ثم التعامل مع الاتصالات.
هناك ما لا يقل عن عنصر واحد له دور العميل، والشروع في الاتصالات من أجل الحصول على بعض الخدمات.
تمديد آخر هو نمط الند للند.
وهناك نظام مكون من مكونات البرامج المختلفة التي يتم توزيعها على مضيفه عدة.
مثال على نظام توزيع
فن العمارة وزعت ومبادئ التصميم
فرق تسد: تقسيم النظام إلى عمليات العميل والخادم هو وسيلة قوية لتقسيم النظام.
ويمكن وضع كل على حدة.
زيادة التماسك: الخادم يمكن أن توفر خدمة متماسك للعملاء.
الحد من اقتران: عادة ما يكون هناك قناة واحدة فقط الاتصال وتبادل رسائل بسيطة.
زيادة التجريد: فصل مكونات توزيع وغالبا ما تكون مجردة جيدة.
زيادة إعادة استخدام: غالبا ما يكون من الممكن العثور على الأطر المناسبة لبناء النظم الموزعة جيدة
ومع ذلك، نظم خدمة العملاء في كثير من الأحيان تطبيق معين.
فن العمارة وزعت ومبادئ التصميم
تصميم للمرونة: نظم الموزعة يمكن أن تكون في كثير من الأحيان إعادة تكوين بسهولة عن طريق إضافة خوادم إضافية أو العملاء.
تصميم لقابلية: يمكنك كتابة عملاء لمنصات جديدة دون الحاجة إلى منفذ الخادم.
تصميم لقابلية الاختبار: يمكنك اختبار العملاء والملقمات بشكل مستقل.
تصميم مدافعا: يمكنك وضع ضوابط صارمة في التعامل مع رمز الرسالة.
النمط المعماري الوسيط
توزيع بشفافية جوانب نظام البرمجيات لعقد مختلفة
ويمكن استدعاء أساليب كائن من كائن آخر دون أن يعرفوا أن يقع بعد هذا الكائن.
كوربا هو معيار معروف المفتوح الذي يسمح لك لبناء هذا النوع من الهندسة المعمارية.
مثال على نظام وسيط
فن العمارة وسيط، ومبادئ التصميم
فرق تسد: يمكن الأجسام البعيدة مصممة بشكل مستقل.
زيادة إعادة استخدام: غالبا ما يكون من الممكن تصميم الكائنات البعيدة بحيث أنظمة أخرى يمكن استخدامها أيضا.
زيادة إعادة استخدام: قد تكون قادرة على إعادة استخدام الكائنات البعيد أن الآخرين قد خلقت.
تصميم المرونة: يمكن تحديث وسطاء كما هو مطلوب، أو الوكيل يمكن التواصل مع كائن بعيد مختلفة.
تصميم لقابلية: يمكنك كتابة عملاء لمنصات جديدة، في حين لا يزال الوصول إلى السماسرة والكائنات البعيد على منصات أخرى.
تصميم مدافعا: يمكنك تقديم تأكيد دقيق في فحص الكائنات البعيدة.
نمط المعاملات تجهيز المعمارية
عملية يقرأ سلسلة من المدخلات واحدا تلو الآخر.
كل المدخلات يصف معاملة - وهو الأمر الذي عادة بعض التغيير على البيانات المخزنة من قبل النظام
هناك عنصر المرسل الصفقة التي تقرر ما يجب فعله مع كل معاملة
هذه البرقيات أو إجراء مكالمة رسالة إلى واحدة من سلسلة من العناصر التي من شأنها معالجة المعاملات
مثال لنظام المعاملات تجهيز
بنية صفقة لتجهيز ومبادئ التصميم
فرق تسد: معالجات الصفقة هي الانقسامات نظام مناسب التي يمكن أن تعطي لمهندسي البرمجيات منفصلة.
زيادة التماسك: معالجات المعاملات هي وحدات متماسكة بشكل طبيعي.
الحد من اقتران: فصل المرسل من معالجات يميل للحد من اقتران.
تصميم للمرونة: يمكنك إضافة بسهولة معالجات معاملة جديدة.
تصميم مدافعا: يمكنك إضافة تأكيد التدقيق في كل معالج المعاملات و / أو في المرسل.
نمط الأنابيب و-تصفية المعمارية
سيل من البيانات، في شكل بسيط نسبيا، يتم تمريرها من خلال سلسلة من العمليات
كل واحد منها يتحول في بعض الطريق.
يتغذى باستمرار البيانات في خط أنابيب.
العمليات تعمل في وقت واحد.
بنية مرنة جدا.
ويمكن إزالة ما يقرب من جميع المكونات.
ويمكن الاستعاضة عن المكونات.
ويمكن إدراج عناصر جديدة.
ويمكن إعادة ترتيب مكونات معينة.
مثال على نظام الأنابيب و-فلتر
بنية الأنابيب و-فلتر ومبادئ التصميم
فرق تسد: يمكن أن عمليات منفصلة مصممة بشكل مستقل.
زيادة التماسك: إن العمليات لديها تماسك وظيفي.
الحد من اقتران: العمليات واحد فقط من المدخلات والمخرجات واحدة.
زيادة التجريد: مكونات خط أنابيب وغالبا ما تكون مجردة جيدة، وإخفاء تفاصيلها الداخلية.
زيادة إعادة استخدام: لا يمكن في كثير من الأحيان عمليات يمكن استخدامها في سياقات مختلفة.
زيادة إعادة استخدام: غالبا ما يكون من الممكن العثور على مكونات قابلة للاستخدام لتضاف الى خط أنابيب.
بنية الأنابيب و-فلتر ومبادئ التصميم
تصميم للمرونة: هناك العديد من الطرق التي كان النظام مرنا.
تصميم لقابلية الاختبار: هو عادة سهلة لاختبار العمليات الفردية.
تصميم دفاعية: أنت تحقق بدقة من كل عنصر من عناصر المدخلات، وإلا يمكنك استخدام تصميم من قبل عقد.
نموذج للرؤية، المراقب المالي (بعثة التحقق المشتركة) نمط معماري
نمط المعماري تستخدم للمساعدة في فصل طبقة واجهة المستخدم من أجزاء أخرى من نظام
نموذج يحتوي على الفصول الأساسية التي هي الحالات ليتم عرضه ومعالجته
وجهة النظر يحتوي على كائنات تستخدم لجعل مظهر البيانات من النموذج في واجهة المستخدم
وحدة تحكم يحتوي على الكائنات التي تتحكم في التفاعل والتعامل مع المستخدم مع وجهة النظر ونموذج
وعادة ما تستخدم في نمط تصميم ملاحظتها لفصل نموذج من وجهة النظر
مثال للبنية MVC عن واجهة المستخدم
مثال على MVC في الهندسة المعمارية ويب
بنية MVC ومبادئ التصميم
فرق تسد: إن العناصر الثلاثة يمكن أن تكون مستقلة الى حد ما تصميم.
زيادة التماسك: المكونات لديها أقوى تماسك طبقة من وجهة النظر إذا كانت وحدة تحكم معا في طبقة واجهة واحدة.
الحد من اقتران: إن قنوات الاتصال بين المكونات الثلاثة تكاد تكون معدومة.
زيادة إعادة استخدام: وجهة نظر وحدة تحكم جعل عادة استخدام واسع النطاق من مكونات قابلة للاستخدام لأنواع مختلفة من الضوابط واجهة المستخدم.
تصميم المرونة: وهي عادة ما تكون من السهل جدا لتغيير واجهة المستخدم من خلال تغيير طريقة العرض، وحدة تحكم، أو على حد سواء.
تصميم لقابلية الاختبار: يمكنك اختبار التطبيق على حدة من واجهة المستخدم.
نمط خدمة المنحى المعماري
هذه العمارة تنظم تطبيق كمجموعة من الخدمات التي يتصل باستخدام واضحة المعالم واجهات
في سياق شبكة الإنترنت، وتسمى الخدمات خدمات الويب
وهناك خدمة على شبكة الإنترنت هو تطبيق، يمكن الوصول إليها من خلال شبكة الإنترنت، التي يمكن دمجها مع الخدمات الأخرى لتشكيل نظام متكامل
مختلف مكونات التواصل عموما مع بعضهم البعض باستخدام المعايير المفتوحة مثل XML.
مثال لتطبيق خدمة المنحى
بنية خدمة المنحى ومبادئ التصميم
فرق تسد: ويقدم الطلب من الخدمات المصممة بشكل مستقل.
زيادة التماسك: تمت هيكلة خدمات ويب على هيئة طبقات وعموما التماسك وظيفية جيدة.
الحد من اقتران: يتم بشكل فضفاض إلى جانب التطبيقات المستندة إلى ويب التي بناها تربط معا المكونات الموزعة.
زيادة إعادة استخدام: خدمة ويب هو مكون القابلة لإعادة الاستخدام للغاية.
زيادة إعادة استخدام: يتم بناء التطبيقات المستندة إلى ويب عن طريق إعادة استخدام خدمات ويب موجودة.
توقع القدم: يمكن استبدال الخدمات مهمل من قبل تطبيق جديد دون التأثير على التطبيقات التي تستخدمها.
بنية خدمة المنحى ومبادئ التصميم
ويمكن تنفيذ هذه الخدمة على أي منصة تدعم المعايير المطلوبة: تصميم لقابلية.
ويمكن اختبار كل خدمة بشكل مستقل: تصميم لقابلية الاختبار.
تصميم مدافعا: خدمات ويب فرض تصميم دفاعي منذ تطبيقات مختلفة يمكن الوصول إلى خدمة.
والرسالة الموجهة للنمط المعماري
تحت هذا الهيكل، ومختلف النظم الفرعية التواصل والتعاون لانجاز بعض المهام إلا من خلال تبادل الرسائل.
المعروف أيضا باسم الوسيطة رسالة موجهة (MOM)
جوهر هذه العمارة هو نظام المراسلة تطبيق إلى تطبيق
المرسلين والاستقبال تحتاج فقط إلى معرفة ما هي صيغ رسالة
وبالإضافة إلى ذلك، فإن تطبيقات التواصل لم يكن لديك لتكون متوفرة في نفس الوقت (ويمكن إجراء أي رسائل مستمر)
يتم إرسال الرسائل مكتفية ذاتيا من قبل مكون واحد (ناشر) من خلال القنوات الظاهرية (المواضيع) إلى غيرها من التي
يمكن أن مكونات البرامج المهتمة الاشتراك (المشتركين)
مثال لتطبيق الرسالة الموجهة
في رسالة موجهة الهندسة المعمارية ومبادئ التصميم
فرق تسد: ويقدم الطلب من مكونات برامج منعزلة.
الحد من اقتران: والمتباعدة والمكونات لأنها تتقاسم تنسيق البيانات فقط.
زيادة التجريد: تنسيق محدد من الرسائل عادة ما تكون بسيطة للتلاعب، وجميع التفاصيل التطبيقية التي يجري إخفاؤها وراء نظام الرسائل.
زيادة إعادة استخدام: مكون سيكون resusable هو في صيغ رسالة مرنة بما فيه الكفاية.
زيادة إعادة استخدام: ويمكن إعادة استخدام المكونات ما دام النظام الجديد الالتزام صيغ رسالة المقترحة.
في رسالة موجهة الهندسة المعمارية ومبادئ التصميم
تصميم المرونة: يمكن وظيفة نظام الرسائل الموجهة للتحديث بسهولة أو تعزيزها من خلال إضافة أو استبدال عناصر في النظام.
تصميم لقابلية الاختبار: يمكن اختبار كل عنصر بشكل مستقل.
تصميم مدافعا: تصميم الواقي يتكون ببساطة من التحقق من صحة جميع الرسائل الواردة قبل معالجتها.
النقطة 6: أنماط التصميم
أنماط التصميم ليست منهجية تصميم أو تطوير. فهي مفردات: أنها تساعد على وضع الأسماء على الأنماط المتكررة التي تحدث في هندسة البرمجيات. تصميم البرمجيات من أنماط ينتهي بها المطاف في برنامج شعر مع الكثير من الطبقات ذات الغرض الواحد، مما يزيد من عدد من الأشياء التي يجب أن يكون مبرمج في الاعتبار (ومعقد وتطوير البرمجيات بما فيه الكفاية لتجنب ملء الدماغ مع الضجيج).
لكن أنماط التصميم تأتي مفيد جدا في مرحلة لاحقة. تبدأ دائما مع مشكلة خاصة بك، ومجال، في محاولة لايجاد الحلول، والتعرف على أنماط في هذه العملية. لا تبدأ مع الأنماط، في محاولة لفرض احتواء المشكلة فيها. معرفة الأنماط الأكثر شيوعا أمر لا بد منه، لأنها تسهل الاتصال بين المبرمجين (سواء كانوا من مطور أو المكتبة المستخدمين) ويعزز الممارسات الجيدة.
أنماط التصميم تأتي في الأصل من البناء والعمارة، والتي هي مشابهة جدا لتطوير البرمجيات في نواح كثيرة. من تجربتي أفضل وسيلة لفهم المرحلين من خلال المقارنة مع الهندسة المعمارية: البرنامج هو بناء، وأنماط هي طريقة تنظيم العناصر المعمارية: النوافذ والأبواب والممرات والسلالم، وأضواء ... المهندسين المعماريين لا نفكر في العناصر التي ترغب في استخدامها، ولكن التفكير في تأثير يريدون الحصول عليها. على سبيل المثال، قد مهندس معماري اعتقد: هذا يحتاج ضوء الدرج. لتحقيق ذلك، وقال انه يمكن استخدام النوافذ والمناور، وكتل الزجاج والأضواء الاصطناعية، وما إلى ذلك، وفقا للقيود المعمارية وبناء رمز، والذوق موكله، وما إلى ذلك وقال انه لا اختيار العناصر بصورة تعسفية قبل التفكير في المشكلة انه يحاول حل، إلا انه يحاول تحقيق تأثير أو أسلوب. وعلاوة على ذلك، إذا كان هناك حل آخر تصبح متوفرة في السوق (على سبيل المثال الأنفاق يعكس ضوء الشمس)، ثم انه قد دمجها في تصميم أنماط المتاحة للمشاريع في المستقبل. OTOH اذا كان يأخذ عادة للتفكير في حلول قبل التفكير في المشاكل، ويأخذ من خطر فقدان الحلول البديلة، وتعقيد المشكلة، أو لا حل على الإطلاق.
افراط في استعمال أنماط التصميم بالسوء عدم استخدامها حيث هناك حاجة إليها. اختيار ما اذا كان استخدام بعض نمط أو لا يأتي مع المعرفة والخبرة في تصميم البرمجيات والتنمية بشكل عام، ومجال عملك على وجه الخصوص.
نقطة (7): UML
هناك ثلاثة تصنيفات من مخططات UML:
سلوك الرسوم البيانية. وهناك نوع من الرسم البياني الذي يصور ملامح سلوكية لعملية نظام أو الأعمال التجارية. ويشمل هذا النشاط آلة الدولة، واستخدام الرسوم البيانية حالة، فضلا عن مخططات التفاعل الأربعة.
تفاعل المخططات. وهناك مجموعة فرعية من المخططات السلوك التي تؤكد على وجوه التفاعل. ويشمل هذا التواصل، والتفاعل نظرة عامة، وتسلسل، والرسوم البيانية توقيت.
هيكل الرسوم البيانية. وهناك نوع من الرسم البياني الذي يصور عناصر من المواصفات التي هي بغض النظر عن الوقت. ويشمل هذا الفصل، وهيكل المركبة، ومكون، ونشر، وجوه، ومخططات الحزمة.
http://www.uml.org/~~V الرسوم البيانية من UML 2.
رسم بياني
وصف
تعلم الأولوية
نشاط مخطط
يصور العمليات التجارية على مستوى عال، بما في ذلك تدفق البيانات، أو في تصميم نموذج لمنطق منطق المعقدة داخل النظام.
ارتفاع
فئة الرسم
ويبين مجموعة من العناصر نموذج ثابت مثل فئات وأنواع، محتوياتها، وعلاقاتهم.
ارتفاع
الاتصال رسم تخطيطي
يظهر مثيلات الفئات، ترابطها، وتدفق الرسالة بينهما. مخططات الاتصالات تركز عادة على التنظيم الهيكلي للكائنات التي إرسال واستقبال الرسائل. ودعا في السابق مخطط التعاون.
منخفض
عنصر مخطط
يصور المكونات التي تؤلف تطبيق، نظام، أو مؤسسة. المكونات، وصفت ترابطها، والتفاعلات، واجهات العام لديها.
متوسط
مركب بنية الرسم التخطيطي
يصور الهيكل الداخلي من المصنف (مثل العنصر، والطبقة، أو حالة الاستخدام)، بما في ذلك نقاط تفاعل المصنف إلى أجزاء أخرى من النظام.
منخفض
نشر مخطط
ويبين الهيكل تنفيذ النظم. ويشمل هذا العقد، سواء الأجهزة أو بيئات تنفيذ البرامج، فضلا عن الوسيطة التي تربط بينها.
متوسط
تفاعل نظرة عامة رسم تخطيطي
والبديل من مخطط النشاط الذي لمحات عامة في التحكم في التدفق في غضون عملية النظام أو الأعمال التجارية. ويمكن لكل عقدة / النشاط ضمن المخطط تمثل آخر مخطط التفاعل.
منخفض
كائن مخطط
يصور الأشياء وعلاقاتها في نقطة في الوقت المناسب، وعادة ما تمثل حالة خاصة من أي من الفئة (أ) رسم بياني أو رسم تخطيطي للاتصالات.
منخفض
حزمة مخطط
يوضح كيف يتم تنظيم عناصر نموذج في حزم، فضلا عن التبعيات بين الحزم.
منخفض
تسلسل مخطط
نماذج منطق تسلسلي، في واقع الأمر في الوقت الرسائل بين المصنفات. انظر
ارتفاع
دولة آلة الرسم
ويصف الولايات كائن أو قد يكون في تفاعل، وكذلك الانتقال بين الدول. وأشار سابقا إلى أنه رسم تخطيطي لدولة، دولة الرسم البياني، أو رسم تخطيطي لدولة تمر بمرحلة انتقالية.
متوسط
توقيت مخطط
يصور هذا التغيير في الدولة أو شرط من مثيل المصنف أو دور على مر الزمن. تستخدم عادة لإظهار التغيير في حالة كائن مع مرور الوقت استجابة لأحداث خارجية.
منخفض
استخدام مخطط حالة
يظهر استخدام الحالات، والجهات الفاعلة، وترابطها.
متوسط