Chuẩn code cho lập trình viên Magento
Magestore đã áp dụng chuẩn code của Magento vào trong sản phẩm giải pháp bán lẻ POS được một thời gian. Việc up code -> jenskin trả về kết quả báo bug trở thành quy trình chuẩn, đảm bảo chất lượng. Tuy nhiên, như vậy hơi bất tiện vì phải phụ thuộc vào hệ thống jenskin, khiến lập trình viên Magento phải đợi đến khi up code mới biết được có đạt chuẩn không? Vậy có cách nào vừa code, vừa xem được code đã pass chuẩn hay chưa không?
.jpg)
Thực chất, để quét chuẩn code, Magento dùng khá nhiều tool. Tuy nhiên, lỗi sai phổ biến nhất của mọi người nằm ở phần test PHPCS và PHPMD.
PHP Code Sniffer
PHP Code Sniffer (hay còn gọi là phpcs) là một công cụ check các coding convention. Coding convention là tập hợp những quy ước cụ thể khi viết code mà lập trình viên cần tuân theo. Việc tuân thủ những quy ước này sẽ giúp code dễ đọc, dễ quản lý.bảo trì, nâng cấp. Hiểu đơn giản là cách viết code " ĐẸP " , căn lề thế nào, khi nào cần xuống dòng, dấu cách thế nà … Có thể hiểu kiểu vở sạch chữ đẹp vậy :)) Viết code cũng như làm thơ, cần phải đẹp :))))
PHP Mess Detector
PHP Mess Detector (PHPMD) bao gồm các tính năng:
- Phát hiện lỗi tiềm ẩn
- Tối ưu code
- Phát hiện các đoạn code quá phức tạp
- Phát hiện các tham số thừa, thuộc tính, phương thức không được sử dụng đến
Hiểu đơn giản là PHPMD sẽ tối ưu code, xóa bỏ code thừa, code phức tạp. PHPMD giúp cấu trúc code của bạn rõ ràng, mạch lạc hơn.
Triển khai chuẩn code bằng PHPSTORM
Rất may là 2 công cụ PHPCS và PHPMD này đều được PHPSTORM hỗ trợ. Chúng ta chỉ việc cấu hình và dùng nó.
Đầu tiên, cần phải enable PHPCS và PHPMD, chúng ta cần thiết lập đường dẫn tới 2 file chạy này. Hãy vào Settings của PHPStorm, Language and Frameworks, PHP, Quality Tools

PHPCS: Trỏ đường dẫn tới phpcs (file nằm trong project của magento)

PHPMD: Trỏ đường đẫn tới PHPMD (file nằm trong project của magento)

Tiếp theo , ta cần chọn tập Rule Set để PHPCS và PHPMD đọc. Ruleset là một file xml mà magento đùng để quét chuẩn code. Vào setting của PHPStorm:
Đối với PHPCS:


Đối với PHPMD:


Cuối cùng bấm OK để trải nghiệm.
Và đây là kết quả (tô vàng là lỗi):
Đối với PHPCS:

PHPMD:

Chúc bạn làm được dễ dàng!
Nếu bạn thích làm sản phẩm quốc tế trong lĩnh vực bán lẻ - thương mại điện tử! Tham gia Tuyển dụng Magento Developer, môi trường làm việc từ xa, địa điểm tự do, quản lý linh hoạt theo Agile.