مانيفستو
مبادئ هندسية
هذه ليست قواعد. هذه قناعات نَحَتَتها سنوات من بناء الأنظمة وكسرها — قابلة دائمًا لمراجعة من شيفرة جديدة، أو من خطأ جديد.
- 01
التقنيات الناضجة أولاً
اختر الأداة الناضجة ما لم يكن هناك سبب جوهري لاختلافها. الجدّة تكلفة يدفعها كل من سيلمس الكود لاحقًا — بما فيهم أنت. ادّخر الإثارة للمشكلة نفسها.
- 02
الوضوح قبل البراعة
الكود يُقرأ أضعاف ما يُكتب. السطر الذكي اليوم هو الخطأ الغامض غدًا. اكتب النسخة الواضحة، سَمِّ المتغير، اترك النوع، وامضِ قُدُمًا.
- 03
اشحن بحجم صغير ودوريّ
الدفعات الكبيرة تخبئ أخطاء كبيرة. التغيير الذي يُشحن يوميًا يُختبر يوميًا. ابنِ خط الشحن بحيث يمكن لإصلاح من سطر واحد أن يصل الإنتاج قبل الغداء.
- 04
الاختبارات توثيق
الاختبارات تشرح كيف يُفترض أن يعمل الكود لأي قارئ. استهدف اختبارات تُقرأ كمواصفات، لا كمزاعم حول تفاصيل التنفيذ.
- 05
احذف أكثر مما تكتب
كل فرع ميّت، كل دالة مساعدة لا تُستخدم، كل غلاف يلفّ غلافًا — احذفه. أنقى المراجعات في سجلّي هي تلك ذات الصافي السلبي في عدد الأسطر.
- 06
الأنظمة بشر أيضًا
كل قرار معماري يصوغ طريقة عمل الفريق. اختر تجريداتٍ تُسرِّع انضمام الزملاء، وتوضّح الملكية، وتُبقي مساء الجمعة هادئًا.
- 07
إمكانية المراقبة ميزة
إن لم تكن قادرًا على رؤيتها وهي تعمل، فأنت لا تملكها فعلاً. السجلات والقياسات والتتبّع — متضمَّنة من اليوم الأول، لا مُلحَقة بعد أول حادثة.
- 08
اقرأ المصدر
Stack Overflow نقطة بداية لا نهاية. الحقيقة تعيش في مصدر المكتبة — وقراءتها تجعلك أسرع في كل مشكلة قادمة.
- 09
الفضول غير قابل للتفاوض
أكثر المهندسين الذين أحبّ التعلّم منهم لا يكفّون عن التساؤل. اِحجز وقتًا — يوميًا، محميًا — لتتعلّم شيئًا لا يحتاجه المشروع تحديدًا.
- 10
وأحيانًا — اكسر الأشياء عمدًا
اختبار اختراق نظامٍ لم تبنه يعلّمك عن شيفرتك أكثر مما تعلّمك أي مراجعة كود. اعتمد عقلية المهاجم يوم السبت يصبح تفكيرك الهندسي أحدّ يوم الإثنين.