Trong lập trình hướng đối tượng, tất nhiên không có quy tắc chính xác nào về độ dài tối đa của một phương thức, nhưng tôi vẫn thấy hai trích dẫn này hơi mâu thuẫn với nhau, vì vậy tôi muốn nghe bạn nghĩ gì.
Trong mã sạch: Cẩm nang về nghề thủ công phần mềm linh hoạt , Robert Martin nói:
Nguyên tắc đầu tiên của chức năng là chúng phải nhỏ. Quy tắc thứ hai của các chức năng là chúng phải nhỏ hơn thế. Các chức năng không được dài 100 dòng. Các chức năng hầu như không bao giờ dài 20 dòng.
và anh ta đưa ra một ví dụ từ mã Java mà anh ta thấy từ Kent Beck:
Mỗi chức năng trong chương trình của ông chỉ dài hai, hoặc ba hoặc bốn dòng. Mỗi cái đều rõ ràng. Mỗi người kể một câu chuyện. Và từng dẫn bạn đến tiếp theo theo thứ tự hấp dẫn. Đó là cách chức năng của bạn nên ngắn!
Điều này nghe có vẻ hay, nhưng mặt khác, trong Code Complete , Steve McConnell lại nói một điều rất khác:
Thói quen nên được cho phép phát triển hữu cơ lên tới 100-200 dòng, hàng thập kỷ bằng chứng nói rằng các thói quen có độ dài như vậy không có nhiều lỗi dễ xảy ra sau đó là các thói quen ngắn hơn.
Và ông đưa ra một tài liệu tham khảo cho một nghiên cứu nói rằng thói quen 65 dòng hoặc dài là rẻ hơn để phát triển.
Vì vậy, trong khi có những ý kiến khác nhau về vấn đề này, có một thực hành chức năng tốt nhất cho bạn?
switch
tuyên bố với 100 case
điều kiện có thể duy trì nhiều hơn 10 cấp độ của các if
câu lệnh được lồng vào nhau.