Làm sao để code không bị comment nhiều
Sau khi liên tục review code của mọi người thì nhận thấy ae hay bị comment ở những điểm dưới đây. Tuấn sẽ note lại như dưới theo tần suất comment nhiều đến ít.
- Về coding convention
- Cách đặt tên biến và tên hàm không nói lên hết ý nghĩa của biến đó, hàm đó.
Khi quyết định đặt tên cần suy nghĩ xem dùng động từ, hay tính từ, đặt tên kiểu snack case hay camel case, biến boolean thì nên bắt đầu bằng is...
Khi chọn đặt tên biến thì hãy nghĩ xem tên như này đã đúng convention chưa, đã nói lên hết ý nghĩa của biến hoặc hàm đó chưa, tên tiếng anh dùng đã chính xác chưa
Tham khảo: https://webdevetc.com/blog/laravel-naming-conventions/#section_variables
- Viết code không có comment
Ae hãy coi viết code như viết văn, viết code không phải để chạy được mà viết code để người khác đọc được hiểu được 1 cách dễ dàng vì thế nên có comment giải thích cho function hoặc những logic xử lý trong function đặc biệt là logic đặc biêt
2. Tính maintenance của code
- Copy code xong những code thừa không xoá đi
Khi code việc copy xử lý hoặc logic từ chức năng khác, file khác là thường xuyên. Tuy nhiên khi copy xong ae cần dò lại từng dòng xem dòng này mình có thực sự cần đến không nếu không cần thì không được copy
- Lặp code
Cùng 1 logic lặp lại code ở 2 chỗ khác nhau chẳng hạn. 1 logic nếu dùng ở nhiều chỗ cần tách riêng logic ra 1 function mới
- Code không theo chuẩn
Đặt URL không theo chuẩn RESTFUL
Logic nên viết ở service
Liên quan đến query hoặc scope nên viết ở model
Controller chỉ thực hiện việc điều hướng không nên xử lý logic
Việc code không theo chuẩn sẽ rất khó khăn cho việc maintenance và tính mở rộng code sau này
3. Self test và self review
- Chưa self test đúng và đủ
Đây là điểm yếu lớn nhất của dev VN. Coi việc test là của tester
Code xong không tự check lại những gì mình đã code hoặc check qua loa cho xong dẫn đến sản phẩm không đạt chất lượng
Điều tối thiểu cần check lại các case trong yêu cầu của task và phải có evidence
Những case phức tạp hoặc test mất thời gian mới để cho tester check hộ
Fix comment xong không check lại hoặc chỉ check lại những chỗ đã sửa mà không ý thức được phạm vi ảnh hưởng
- Chưa tự review source code của mình
Có rất nhiều cái khi nhìn PR là phát hiện ra nhưng ae vẫn không tự review và phát hiện ra được
Tạm thời memo lại mấy ý trên. Khi nào có thời gian sẽ memo tiếp và đưa thêm nhiều ví dụ thực tế hơn.