- Văn bản thảo luận về 5 quy tắc lập trình của Rob Pike, cung cấp hướng dẫn về tối ưu hóa mã và lựa chọn cấu trúc dữ liệu cũng như thuật toán phù hợp.
- Quy tắc 1 cho rằng lập trình viên không thể dự đoán chương trình sẽ dành phần lớn thời gian ở đâu, điều này có nghĩa là chỉ nên triển khai các thủ thuật tăng tốc sau khi đã xác định được nút thắt cổ chai thực tế.
- Quy tắc 2 nhấn mạnh tầm quan trọng của việc đo lường trước khi tinh chỉnh để tăng tốc, gợi ý rằng chỉ nên tối ưu hóa khi một phần của mã có ảnh hưởng đáng kể đến hiệu năng tổng thể.
- Quy tắc 3 cảnh báo về việc sử dụng các thuật toán phức tạp khi kích thước đầu vào (n) nhỏ, vì chúng có xu hướng chậm hơn do hằng số lớn.
- Quy tắc 4 khuyến nghị sử dụng các thuật toán và cấu trúc dữ liệu đơn giản, vì chúng ít dễ phát sinh lỗi hơn và dễ triển khai hơn so với những thứ phức tạp.
- Quy tắc 5 cho rằng việc lựa chọn cấu trúc dữ liệu phù hợp có thể khiến thuật toán phù hợp trở nên hiển nhiên, nhấn mạnh tính trung tâm của cấu trúc dữ liệu trong lập trình.
- Quy tắc 1 và 2 của Pike phản ánh câu nói nổi tiếng của Tony Hoare: "Tối ưu hóa sớm là cội nguồn của mọi điều tồi tệ".
- Ken Thompson đã diễn đạt lại quy tắc 3 và 4 của Pike thành "khi còn nghi ngờ, hãy dùng brute force", điều này phù hợp với triết lý thiết kế KISS (Keep It Simple, Stupid).
- Quy tắc 5 thường được tóm tắt là "hãy viết đoạn mã ngốc sử dụng các đối tượng thông minh", điều này đã từng được nhắc đến trước đó trong cuốn sách The Mythical Man-Month của Fred Brooks.
1 bình luận
Ý kiến trên Hacker News