رابط إلى مقال عن الوسط
تحقق من المقالة لمعرفة المزيد عن المفهوم وأيضًا التنفيذ.
يعد Clean Architecture حلًا عمليًا لعمارة البرمجيات من الأسطوري روبرت سي مارتن (المعروف أيضًا باسم "العم بوب"). من خلال تطبيق القواعد الشاملة للبرمجيات ، يمكنك تحسين إنتاجية المطورين بشكل كبير طوال حياة أي نظام برمجي.
لماذا تعظيم عدد القرارات غير المتخذة؟ !! نحن كمطورين نعلم من خلال التجربة أن الأطر التي نختارها في بداية المشروع (قواعد البيانات أو أطر الويب على شبكة الإنترنت ، وما إلى ذلك) يصعب استبدالها خلال عمر المشروع ، وذلك بسبب اقتران ضيقة والكثير من القرارات المبكرة الأخرى ، واحدة من الأخطاء الشائعة هي أننا نبني مشروعنا بناءً على هذه الأطر ثم السماح بسطو العمل بالتجول حولهم. الجواب هو ، يجب أن نبني بنية تتيح التغيير ، نعم أؤكد التغيير. تغيير المكونات والأطر المنخفضة دون ضرب المكونات الأساسية والمكونات عالية المستوى.
يؤكد النمط على أن كل مشروع برمجي مصنوع من عنصرين فقط السياسة والتفاصيل. السياسة (المكونات عالية المستوى) هي جوهر نظام البرمجيات الذي يتضمن جميع قواعد العمل وجميع الكيانات وكل ما يجعل هوية فريدة لهذا البرنامج. مثل كيان العميل أو إجراء الخروج في منصة التجارة الإلكترونية. التفاصيل (مكونات المستوى الأدنى) هي الطرق التي يمكن للبشر بالتفاعل معها مع قواعد العمل ، وتسمية الأنماط هذه كأجهزة IO أو قواعد البيانات أو خوادم الويب ، وما إلى ذلك ، مثل زر الخروج الذي يؤدي إلى قاعدة العمل المقابلة أو استمرار كيان العميل في قاعدة بيانات أو ملف أو أي آلية استمرار.
الهدف النهائي للنمط هو فصل المكونات عالية المستوى عن المكونات ذات المستوى المنخفض ومحاولة إبقائها تعمل معًا وجعل المناعة عالية المستوى من التغييرات في التفاصيل. اسمحوا لي أن أجعل هذه الفكرة كلها ملموسة في عقلك من خلال بعض الأمثلة. تخيل البرامج التي تم تصميمها فوق قاعدة بيانات علائقية مثل MySQL وتستخدم Express JS كخادم ويب ثم بعد عام واحد يقدم أصحاب المصلحة متطلبات وميزات جديدة غير متسقة مع قاعدة البيانات العلائقية وتتطلب قاعدة بيانات NOSQL. إذا كان تطبيق البرمجيات يتبع بنية جيدة مع اقتران فضفاض بين المكونات ، فلن تحتاج إلى القيام بالثورة مع التغييرات. من السهل جدًا استبدال قاعدة البيانات أو خادم الويب أو أي تفاصيل أخرى للبرنامج يناسب الحل دون التأثير على قواعد العمل والمكونات ذات المستوى الأعلى.
يؤكد Uncle Bob على مبادئ صلبة مع نمط الهندسة المعمارية النظيفة لتشكيل حل يمكن القراءة والقابل للصيانة وقابل للتطوير وسهل النشر.