كثيراً ما يتكرر في المجال كلمة “كود نظيف” وكثيراً ما يتم استخدامها من قبل المبرمجين ومهندسي البرمجة لكن دون وصف دقيق عن معنى الكود النظيف .
المقصود بمصطلح كود نظيف هو الكود الذي يتم برمجته بشكل منطقي سهل ويسهل على المبرمج نفسه أو مبرمجين آخرين من بعده التعامل معه .
ففي أغلب المشاريع أو معظمها يتم التعامل على البرنامج الواحد من قبل أكثر من مبرمج أو حتى قد يحتاج إلى التطوير فيما بعد ولكن يالسوء حظ المبرمج الذي يقوم بالتعديل على أكواد لم تتم كتابتها بطريقة نظيفة إذ قد يفضل في أغلب الأحيان إعادة بناء المشروع من الصفر على القيام بالتعديل عليه .
إذن ما هو الكود النظيف وما هي العوامل التي يجب مراعتها لكتابة كود نظيف؟
1)- في البداية أول ما يبحث عنه المبرمجون هو أسماء الملفات، حاول أن تجعل أسماء الملفات والمجلدات أسماء ذات علاقة منطقية بمحتواها فمثلاً لا تضع كلاس الاتصال بالداتا بيز داخل مجلد اسمه “content” من المستحيل أن يخطر على عقل مبرمج متمرس أن كلاس الاتصال بقاعدة البيانات موجود ضمن هذا المجلد ولا سبيل لإيجاده إلا من خلال البحث في المجلدات أو قراءة الأكواد للتوصل إلى مكانه!
2)- اجعل أسماء الكلاسات منطقية أيضاً، فمثلاً كلاس مهمته قص الصور عليك تسميته بـ “imagecroper” مثلاً وليس “images” السبب أنه هناك الكثير من الأدوات والوظائف التي يمكن أن يستدعيها التعامل مع الصور فإذا جعلت اسم الكلاس منطقي تسهل على من بعدك التوصل إلى المعلومات والوظائف بشكل سهل وسريع .
3)- استخدم الاوبجكتز في اكوادك وابتعد عن استخدام الفانكشنات المنفردة خارج الكلاسات مادام لا حاجة لها، ان البرمجة بمبدأ الأوبجكت يسهل عملية التطوير فيما بعد بشكل كبير .
4)- ابتعد عن تكرار اسماء الفانكشنات او اضافة حروف لا معنى لها على اسمائها، كمثال الفانكشن الأول “getPosts” والثاني “getPosts2” ما هو الفرق بين الاثنين ؟ هل يمكن فهم ذلك من خلال قراءة الاسم فقط ؟
يمكن ان تسمي الأول مثلا “getPostsByCategori” والثاني “getPostsByBrand” مثلاً إذا كانت وظائفها هكذا!
5)- الكود ليس مكان لكتابة أسماء من تحب!! تصور مرة كنا نطور على مشروع ووجدنا المبرمج السابق قام بكتابة أسماء أطفاله كمتغيرات لبعض المعلومات! هذا مضحك ومستفز فعلاً .
6)- قسم الكود الخاص بك إلى أجزاء ووظائف منطقية، ولا تجعل جميع الوظائف والعمليات داخل فانكشن واحد!
7)- اهتم بالفراغات والأسطر ابتعد عن كتابة كود طويل بنفس السطر واستخدم مفتاح التاب لجعل بدايات الأسطر متساوية وضع فراغات بين الفانكشنات لتعرف بدايتها ونهايتها بشكل سهل ومن النظرة الأولى !
8)- لا تستدعي نفس الملفات في كل الصفحات اذا لم تكن بحاجة اليها، ان مما يصيبني بالعصبية فعلاً أن أرى مبرمجاً يستدعي عشرات المكتبات بلا داعي في جميع الصفحات من مبدأ “ممكن أحتاجها” هل تدري كم تستهلك من موارد الخادم بلا فائدة؟
9)- استعلامات قواعد البيانات من أهم الأشياء التي يجب الاهتمام بها حاول تقليلها قدر المستطاع لتسرع من عمل موقعك فمثلاً إن كنت بحاجة إلى عامود الآيدي والعنوان لماذا تستدعي جميع الاعمدة ! استدعي فقط الاعمدة والصفوف التي انت بحاجة إليها فعلاً .
10)- لا تبرمج باللغة العربية او لغة أخرى! مع أننا نتقن اللغة التركية بشكل ممتاز فقط عانينا طويلاً مع مبرمجين أتراك يقومون بكتابة أسماء الفانكنشز باللغة التركية! في عالم البرمجة قد يعمل أي مبرمج من اي جنسية مختلفة على نفس الكود الذي عملت عليه لذلك اكتب كودك باللغة الانجليزية .
ليست هناك تعليقات:
إرسال تعليق