الخلفية: فهم مبادئ SOLID

سنخبرك من اخترعهم وما هم. دعنا نتحدث أيضًا عن انتقاد هذا النهج - حول سبب رفض بعض المطورين اتباع منهجيات SOLID.





صور - nesa - Unsplash



اختصار



SOLID - يشير إلى المبادئ الخمسة الأولى للبرمجة الشيئية:





إذا اتبعت هذا وقمت بهيكلة الفئات والوظائف الخاصة بك بحيث تكون مبادئ SOLID صحيحة ، فمن المحتمل أن تحصل على كود قوي ومفهوم ويمكن صيانته بسهولة. بالمناسبة ، هناك أمثلة هنا لتوضيح كيفية عمل كل مبدأ.



الذي أحضر SOLID



كما توقعت ، كان العم بوب هو المسؤول عن الجزء الأكبر من المبادئ . لقد وصفها بشكل شامل في مبادئ التصميم وأنماط التصميم لعام 2000 ، ثم اقترح المهندس مايكل فيذرز الاختصار SOLID نفسه لاحقًا. إذا كنت مهتمًا ، فإن مايكل لديه كتاب يقدم فيه نصائح حول كيفية "إحياء" النظام القديم وعدم الشعور بالجنون على طول الطريق.





Photo - Oskar Yildiz - تتمثل



مهمة Unsplash SOLID في المساعدة في تطوير التطبيقات التي يسهل صيانتها وتوسيعها بمرور الوقت. لكن غالبًا ما يتم انتقاد هذه المجموعة من الإرشادات.



ما ينتقد ل



تسمى هذه المبادئ أحيانًا "بالغموض" ، مما يجعل استخدامها صعبًا في الممارسة العملية. أشار المبرمج والكاتب جويل سبولسكي أيضًا في أحد إصدارات The StackOverflow Podcast إلى أن منهجية SOLID مثالية جدًا وتجبر المطورين على قضاء بعض الوقت في التعليمات البرمجية الزائدة من أجل وضع علامة.



وهو يعتقد أنه لا داعي للمحاولة مسبقًا لمراعاة جميع السيناريوهات الممكنة والقيام ببساطة بالبرمجة وتصحيح أوجه القصور تدريجيًا وعدم الاعتماد على "نظام أمني" وهمي. لا ينفي Spolsky أهمية المبادئ ، بل يصفها بأنها مفرطة.



هناك رأيأن كود SOLID متماسك بشكل ضعيف وسهل الاختبار ، ولكن من الصعب جدًا فهمه (يستخدم النقد كلمة "غير واضح"). يتعين على المبرمج أن يكتب الكثير من الواجهات التفصيلية والفئات الصغيرة التي تشتت الانتباه وتشوش أكثر من المساعدة في إنشاء نظام. يشترك في هذا البيان العديد ممن يعتقدون أن التركيز على بساطة الكود يكفي للمطورين الآخرين لدعمه.





صور - كيفن كانلاس - Unsplash



Hacker News Topics Speakوأن اختيار الهندسة المعمارية والمكدس التكنولوجي وإدارة تبعية المشروع هو أكثر أهمية بكثير ، وليس المبادئ الأساسية التي بنيت عليها كتاباته. هنا مرة أخرى يشيرون إلى التعقيد غير الضروري في البدء بتصميم نظام متكامل ، مشيرين بالفعل إلى مبدأ YAGNI أو " لن تحتاجه ". إلى حد ما ، هذا هو ريمكس آخر لنهج KISS الكلاسيكي .



علينا أن نعترف بأن هناك العديد من البيانات التي تدافع عن SOLID. لذلك ، يقول أحد سكان HN إن اتباع هذه المبادئ سيساعد على استبدال المكتبة الشرطية بسرعة إذا حدث خطأ ما على مستوى التجريد. سيكون كافيًا التأكد من أن الاختبارات جارية للتطبيق الجديد ، وهذا كل شيء ، الحد الأقصى هو التحقق الإضافي من التبعيات للإصدار القديم من الفصل ، وعند الضرورة ، استخدام الإصدار المعدل حتى تجتاز الاختبارات بنجاح. عندها لن يكون هناك "تعقيد غير ضروري" في الكود ، وأولئك الذين سيتعاملون معه لاحقًا لن يواجهوا ما يسمى بمتلازمة رفض تطور شخص آخر .



من المهم أن تتذكر أن مبادئ SOLID هي مبادئ توجيهية فقط وليست قواعد صارمة. وستكون هناك دائمًا حالات يكون من الأفضل الالتزام بها ومتى يتراجع.






1cloud.ru:



— HTTP-

,

UTF-8






:









All Articles