كتابة الأكواد البرمجية امر سهل للغاية، لكن كتابة كود نظيف يؤدي غرضه بكفاءة عالية لفترة طويلة من الزمن امر غير سهل ويحتاج بذل الكثير من الوقت والجهد.

لهذا الغرض قام كريستوفر ويلسون بتأليف كتاب ( The clean architecture in PHP ) ليشرح كيفية كتابة اكواد نظيفة تعمل بكفاءة عالية، بالرغم الى ان عنوان الكتاب يشير الى لغة PHP الا ان الكاتب لايتحدث بشكل كبير عن لغة PHP ولكن يتحدث عن الهيكلة الصحيحة لكتابة الاكواد البرمجية بشكل عام.

في الفصل الاول من الكتاب، المؤلف يجعلك تدرك ان الاكواد البرمجية التي قمت بكتابتها من قبل هي في الحقيقة تتبع لهيكلة معينة حتى لو كان البرنامج بسيط ومحصور على حاسوبك الشخصي فقط، بغض النظر سواء كانت هيكلتك سليمة ام خاطئه لان هيكلة الكود بطريقة معينة ماهي الا تحديد للطريقة التي ستنتقل البيانات خلال النظام وكيف يتعامل البرنامج مع البيانات.

وفي الجانب العملي يبدأ الكتاب من ابسط الامور مثل تنظيم ملفات البرنامج وكذلك طريقة اتصال النظام بقاعدة البيانات الى الامور المعقدة مثل، الى كم طبقة Layer يمكنك تجزءة النظام. هذه الامور مهمة للغاية وإلا ستصبح اكواد البرنامج غير منظمة وغير متجانسبة مع بعضها البعض وسيصبح من الصعب عليك اختبار البرنامج وستواجه صعوبه في التعديل على البرنامج خصوصا اذا كانت هناك طلبات تعديل جديدة للعميل.

ثم بعد ذلك يقترح عليك الكتاب استخدام مايدعى بـ Decoupling Toolbox وهي عبارة عن خمسة مبادئ لكيفية كتابة كود نظيف ويعمل بكفاءة عالية.

يشرح الكتاب اهمية التعامل مع اساليب التصميم Design Patterns وتوجد هناك العشرات من اساليب التصميم لكن كبداية ينصحك المؤلف بأن تبدء بـ Factory، Repository، Adapter و Strategy، اساليب التصميم تساعدك على فصل الكود البرمجي عن الامور الاخرى المتعلقة بالتصميم مثلا وبالتالي تصبح عملية الصيانة للكود اسهل واي تغيير في كود البرنامج يصبح اسهل كذلك.

ينتقد المؤلف مصطلح Model والتي اختصارها M في اسلوب التصميم MVC ويقول انها غير واضحه ومربكه ويقترح انه من الافضل تسميتها Entities and Persistence حتى تكون اسهل للفهم.

في الجزء الثاني من الكتاب يشرح الكاتب مثال لبناء نظام مشتريات بأستخدام اطار العمل Zend Framework 2 ثم يقوم بتغيير اطار العمل الى Laravel فقط ليوضح ان الهيكلة السليمة للكود تجعله اكثر مرونة وسهولة في التغيير.

الكتاب متقدم نوعاً ما لكن موجه لكافة المبرمجين الذين يريدون تعلم كيفية كتابة كود نظيف وذو جودة عالية، الجميل في هذا الكتاب ان الكاتب لايكتفي فقط بشرح النظريات بل يوضح افكارة بشكل عملي.

تقيمي للكتاب اعطيه 4 من 5

سعر الكتاب 16$ واذا تحب تدعم مؤلف الكتاب ممكن تشتري الكتاب بمبلغ اكبر.

يمكنك تحميل نسخة مختصره من الكتاب او شراء الكتاب من الرابط التالي :

https://leanpub.com/cleanphp