2011-01-26 52 views
8

Java code conventions nói:Tại sao 4 dấu cách được sử dụng làm đơn vị thụt dòng trong Java?

Bốn dấu cách sẽ được sử dụng làm đơn vị thụt lề.

Nhưng nó không có bất kỳ giải thích nào về lý do tại sao không gian được ưu tiên. Nếu tôi gõ không gian 4 lần thay vì nhấn tab chỉ một lần, tôi phải làm 3 lần nhấn phím nhiều hơn chỉ một lần. Điều đó có nghĩa là nhiều công việc hơn, bởi vì các lập trình viên sẽ viết rất nhiều mã trong một ngày. Vậy công ước này đến từ đâu, và có lý do chính đáng nào để làm nhiều việc hơn không?

+0

Không biết, nhưng bằng Python thì giống nhau. Có thể có một vấn đề về thủ công –

+2

Trong bất kỳ trình chỉnh sửa mã hợp lý nào, việc thụt lề thường được thực hiện tự động, vì vậy bạn không phải nhấn bất kỳ thứ gì, ngoại trừ "Enter".Đây là lần đầu tiên tôi nghe khoảng 4 dấu cách, luôn sử dụng chỉ 2. –

Trả lời

6

Bạn có thể thay đổi cài đặt hệ điều hành để có tab làm 4 khoảng trắng. Thay vào đó, tốt hơn hãy làm điều đó cho IDE của bạn. Bạn có thể không thích ý tưởng thay đổi cài đặt ở cấp hệ điều hành.

+8

Tôi đồng ý: Bạn không nên nhấn thanh dấu cách 4 lần, nhưng phím tab một lần - với tab được chuyển đổi thành 4 dấu cách của bạn biên tập viên. – Merijn

2

Người ta có thể tranh luận về nó cả ngày, nhưng cuối cùng thì đó là một quyết định tùy ý. Và có một tiêu chuẩn tốt hơn là để cho việc cãi nhau về nó tiếp tục cho đến cuối thời gian.

Và "nhập nhiều hơn" không thực sự là đối số hợp lệ đối với nó vì bạn có thể dễ dàng thiết lập bất kỳ công cụ chỉnh sửa mã lành mạnh nào để chèn 4 dấu cách khi bạn nhấn tab.

1

Tôi nghĩ rằng đó là chủ yếu bởi vì nó không cố định có bao nhiêu khoảng trống trong một tab dừng. Điều này làm cho mã dễ di chuyển hơn vì không dễ bị hiển thị lỗi chỉ vì các tab được hiển thị khác nhau.

Điều với Java là bạn có thể sẽ kết thúc bằng cách sử dụng một IDE anyway, mà làm cho nó lỗi thời để nhấn phím không gian ba lần.

20

Theo một số nghiên cứu tôi đã tìm thấy, 6 khoảng trống che khuất việc đọc mã và khiến bạn khó đọc hơn. Tương tự như trường hợp có 0 dấu cách,

4 khoảng trắng được cho là tối ưu để đọc rõ ràng và hiểu rõ cấu trúc phân cấp logic của một chương trình trong nháy mắt.

Code Complete Second Edition chương Steve McConnell về Layout và Kiểu:

Đối tượng ghi được cao hơn 20 đến 30 phần trăm trên một thử nghiệm của hiểu khi chương trình đã có một chương trình hai đến bốn-không gian thụt đầu dòng hơn họ đã làm khi các chương trình không có thụt đầu dòng. Tất cả các nghiên cứu tương tự thấy rằng điều quan trọng là không nhấn mạnh cũng như không quá nhấn mạnh cấu trúc logic của một chương trình. Điểm số hiểu thấp nhất là đạt được trên các chương trình không bị thụt lề. Mức thấp thứ hai là đạt được trên các chương trình sử dụng thụt lề sáu dấu cách. Nghiên cứu kết luận rằng thụt đầu dòng hai đến bốn không gian là tối ưu. Điều thú vị là, nhiều đối tượng trong thử nghiệm cảm thấy rằng sự thụt đầu sáu dấu cách dễ sử dụng hơn là các vết lõm nhỏ hơn, mặc dù điểm số của chúng thấp hơn. Đó có thể là vì sáu dấu ấn không gian có kích thước là. Nhưng bất kể nó trông đẹp như thế nào, sáu dấu cách không hoạt động trở nên ít đọc được hơn. Đây là một ví dụ về vụ va chạm là hấp dẫn thẩm mỹ và dễ đọc.

+0

"Tương tự như trường hợp có 2 dấu cách" - bạn học từ đâu trong bài viết? – Dejell

Các vấn đề liên quan