يقدم
في أنظمة البرمجيات ، نواجه أحيانًا إنشاء "كائن معقد" ، والذي يتكون عادةً من كائنات فرعية لكل جزء باستخدام خوارزميات معينة ؛ بسبب التغيرات في المتطلبات ، غالبًا ما تواجه الأجزاء المختلفة من هذا الكائن المعقد تغييرات جذرية ، لكن الخوارزمية التي تجمعها معًا مستقرة نسبيًا. كيف تتعامل مع هذا التغيير؟ كيفية توفير "آلية تغليف" لعزل التغييرات في "كل جزء من الكائنات المعقدة" من أجل الحفاظ على "خوارزمية البناء المستقرة" في النظام من التغيير مع الاحتياجات؟ هذا ما يجب ذكره نموذج البناء.
يمكن أن يفصل نمط المنشئ بناء كائن معقد عن تمثيله ، بحيث يمكن لعملية البناء نفسها إنشاء تمثيلات مختلفة. وهذا يعني ، إذا استخدمنا وضع البناء ، يحتاج المستخدم إلى تحديد الأنواع التي يجب إنشاؤها للحصول عليها ، ولا تحتاج عملية البناء والتفاصيل المحددة إلى معرفة.
نص
هذا النمط بسيط نسبيا. الرجاء إدخال الرمز أولاً ثم شرحه
نسخة الكود كما يلي:
وظيفة getBeerById (معرف ، رد الاتصال) {
// استخدم المعرف لطلب البيانات وإرجاع البيانات.
Asyncrequest ('get' ، 'beer.uri؟ id =' + id ، function (resp) {
// استجابة مكالمات رد الاتصال
رد الاتصال (resp.sponsetext) ؛
}) ؛
}
var el = document.queryselector ('#test') ؛
El.AdDeventListener ("Click" ، getBeerbyidbridge ، false) ؛
وظيفة getBeerbyidbridge (e) {
getBeerbyid (this.id ، وظيفة (بيرة) {
console.log ('requested beer:' + beer) ؛
}) ؛
}
وفقًا لتعريف المنشئ ، فإن مرحلة الجدول هي رد اتصال ، أي كيفية عرض البيانات ومعالجتها بعد الحصول عليها تعتمد على وظيفة رد الاتصال. في المقابل ، لا تحتاج وظيفة رد الاتصال إلى الانتباه إلى كيفية الحصول على البيانات عند معالجة البيانات. يمكن أيضًا رؤية نفس المثال في طريقة Ajax of JQuery. هناك العديد من وظائف رد الاتصال (مثل النجاح ، رد الاتصال الخطأ ، وما إلى ذلك) ، والغرض الرئيسي هو فصل المسؤوليات.
دعونا أيضًا لدينا مثال آخر على jQuery:
نسخة الكود كما يلي:
$ ('<div class = "foo"> bar </iv>') ؛
نحتاج فقط إلى تمرير أحرف HTML ليتم إنشاؤه ، دون النظر إلى كيفية إنتاج كائن HTML المحدد.
لخص
يستخدم نموذج البناء بشكل أساسي "إنشاء كائن معقد في خطوات" ، حيث "الخطوات" عبارة عن خوارزمية مستقرة ، في حين أن الأجزاء المختلفة من الكائنات المعقدة غالباً ما تتغير. الميزة هي أن "عملية المعالجة" لنموذج البناء قد تعرضت ، مما يجعل نموذج البناء أكثر مرونة ، وأن نموذج البناء يتفكيك عملية التجميع وإنشاء مكونات محددة ، بحيث لا يتعين علينا الاهتمام بكيفية تجميع كل مكون.