Tôi chỉ biết một cách để trả lời câu hỏi này, và đó là để có kinh nghiệm trong việc điều chỉnh hiệu suất. Điều đó có nghĩa là - viết chương trình, và sau khi chúng được viết, tìm tốc độ trong đó và thực hiện lặp lại. Đây là một ví dụ.
Đây là lỗi mà hầu hết mọi người mắc phải: Họ cố gắng tối ưu hóa chương trình trước khi thực sự chạy nó. Nếu họ đã tham gia một khóa học về lập trình (từ một giáo sư không thực sự có nhiều kinh nghiệm thực tế), họ sẽ có cặp kính màu chữ O lớn, và họ sẽ nghĩ đó là tất cả những gì về nó . Tất cả đều giống nhau, tối ưu hóa trước. **
Ai đó nói: Đầu tiên hãy làm cho đúng, sau đó làm cho nhanh. Họ đã đúng.
Nhưng bây giờ đối với kicker: Nếu bạn đã làm điều này một vài lần, bạn sẽ nhận ra những điều ngớ ngẩn mà bạn đã làm trước đó gây ra vấn đề tốc độ, vì vậy bạn theo bản năng tránh chúng. (Những thứ như làm cho cấu trúc lớp của bạn quá nặng, bị ngập trong các thông báo, kích thước của các lệnh gọi khó hiểu với chi phí thời gian của chúng, danh sách cứ lặp đi lặp lại ...) Bạn theo bản năng tránh những thứ này, nhưng hãy đoán xem nó trông như thế nào có kinh nghiệm: tối ưu hóa sớm!
Vì vậy, những cuộc tranh luận ngớ ngẩn cứ lặp đi lặp lại :)
** Một điều họ nói là bạn không phải lo lắng về điều đó nữa, bởi vì trình biên dịch rất tốt và máy móc ngày nay rất nhanh. (KIWI - Kill It With Iron.) Không có sự tăng tốc phần cứng hoặc hệ thống theo cấp số nhân (được thực hiện bởi các kỹ sư làm việc rất thông minh) có thể bù đắp cho sự chậm chạp của phần mềm (được thực hiện bởi các lập trình viên nghĩ theo cách này).