- Ai cũng muốn viết "mã sạch", chứ có ai muốn viết "mã bẩn" đâu?
- Nhưng nhiều người không thực sự biết "mã sạch" nghĩa là gì và phải làm thế nào. Vì vậy, bài viết đề xuất các quy tắc cho CRISP code trong ngôn ngữ Go
- Correct : mã hoạt động chính xác, không có lỗi
- Readable : mã mà người khác có thể dễ dàng đọc hiểu
- Idiomatic : mã dễ hiểu nhờ chấp nhận cách viết mang tính thành ngữ/thông lệ
- Simple : mã chỉ đơn giản thực hiện đúng những gì được nêu ra, không có side effect riêng biệt
- Performant : mã vừa hoạt động đúng, vừa dễ hiểu, đồng thời có cân nhắc đến hiệu năng
7 bình luận
Giới thiệu từ viết tắt lập trình mới, hỗn loạn (CHOSUN)!
C - Khó hiểu (Confusing): Hãy viết mã khó hiểu để trở thành người quản lý duy nhất có thể nắm được nó, qua đó củng cố vị trí của bạn trong công ty. H - Tạp nham (Hodgepodge): Trộn lẫn các mô hình lập trình, thư viện và phong cách để tạo ra tổ hợp mã độc đáo, thể hiện chất nghệ sĩ của bạn. O - Tùy tiện (Arbitrary): Đưa ra quyết định mà không có cơ sở rõ ràng về kiến trúc, cấu trúc dữ liệu hay thuật toán, giúp quá trình phát triển trở nên ngẫu hứng và kỳ quặc hơn. S - Làm rối (Obfuscation): Dùng tên biến khó hiểu, vòng lặp lồng nhau và thiếu chú thích để khiến mã khó đọc và khó hiểu. U - Vọc vạch (Tinkering): Liên tục áp dụng những thay đổi nhỏ vào codebase mà không tài liệu hóa, khiến đồng nghiệp phải dè chừng và tạo cớ để sửa những "lỗi" mà bạn âm thầm đưa vào. N - Thiếu nhất quán (Inconsistent): Sử dụng các quy tắc đặt tên, kiểu thụt lề và tính năng ngôn ngữ khác nhau trong toàn bộ mã để tạo ra những tình huống thú vị và khó lường. Hãy đi theo con đường của hỗn loạn (CHOSUN) và tạo ra một codebase độc đáo gây ấn tượng với đồng nghiệp để đảm bảo sự an toàn nghề nghiệp!
Tất nhiên, đúng như bạn dự đoán, phần nội dung về các chữ viết tắt trong lập trình ở trên là do chat-gpt viết ra 🤣🤣🤣
Nghe nhớ đến kiểu “biết ý mà làm cho gọn gàng, đúng ý” nhỉ.
haha
haha
Không có cái gọi là Clean Code
Ừ thì, nội dung bài trên cũng nói điều khá tương tự.. mà các bình luận trên HN liên quan đến chủ đề này khá thú vị.
https://news.ycombinator.com/item?id=35611710
S - Spaghetti
I - Interlinked
M - Micromanaged
P - Perplex
L - Lazy
E - Opinionated
S - Spaghetti
P - Precarious
A - Ambiguous
G - Gratuitous
H - Haphazard
E - Entangled
T - Time-consuming
T - Tangled
I - Impenetrable
SPAGHETTI đọc kỹ thì hóa ra là nội dung mỉa mai nhỉ haha