Khi đọc về các tiêu chuẩn mã hóa đường ray, có vẻ như rõ ràng là 2 không gian thường được chấp nhận như là cách để làm việc. Tại sao lại có lực kéo này? Nó chỉ là thực hành được sử dụng rộng rãi nhất và tốt nhất để sử dụng cho sự nhất quán, hoặc có lý do khác nó thực sự tốt hơn so với các tab hoặc một số không gian khác nhau?Các chuẩn mã hóa đường ray - Tại sao 2 dấu vết không gian?
Trả lời
Đó là vấn đề về quy ước. Điều thực sự quan trọng là sự nhất quán.
Hầu hết (nhưng không phải tất cả) nhà phát triển đều thích không gian để tab vì chúng trông giống nhau bất kể bất kỳ cài đặt soạn thảo văn bản/ide cụ thể nào. http://www.ecyrd.com/JSPWiki/wiki/WhyTabsAreEvil
Hai không gian trên bốn cũng là vấn đề của quy ước. Mã Ruby nhằm mục đích giảm thiểu các ký tự thừa, và tôi giả sử khoảng trắng thừa đi ngược lại xu hướng này.
Nó xuất phát từ Ruby. Có một "không chính thức" Ruby phong cách hướng dẫn ở đây:
http://www.caliban.org/ruby/rubyguide.shtml#indentation
Không có lý do thực sự là tại sao hai không gian nhịp đập tám hay bốn. Có lẽ đó là vì mã Ruby thường có dòng ngắn hơn Java và C, có xu hướng sử dụng bốn?
- Vì ruby đã hỗ trợ cho các khối ẩn danh, nhiều mã ruby kết thúc bằng lồng nhau nhiều hơn các ngôn ngữ khác. 2 khoảng trống không gian cho phép lồng nhiều hơn trong một chiều rộng nhất định.
- Spaces luôn giống nhau ở tất cả các biên tập viên (cái nhìn nhất quán và cảm nhận)
- ước
# 2 là không cụ thể cho không gian. Tính thống nhất là nhất quán cho cả tab hoặc dấu cách. – Brenden
@Brendan - Tôi đang nghĩ về trường hợp một người có thể đặt tab của họ bằng 4 dấu cách trong một trình soạn thảo văn bản và một người khác đặt tab của họ bằng 2 khoảng trống trong trình chỉnh sửa văn bản của họ. Một kịch bản với các tab trong nó sẽ không * nhìn * giống nhau trong hai trình soạn thảo văn bản. Trong khi đó, một tập lệnh có dấu cách sẽ trông giống nhau trên tất cả các trình soạn thảo văn bản nếu nó * là * giống nhau. – bwv549
- 1. Tại sao đường ray yêu cầu Thời gian chạy JavaScript?
- 2. Tại sao không có cấp độ dấu vết trong log4Net?
- 3. Tại sao Django's `urlencode` không mã hóa dấu gạch chéo?
- 4. Tại sao URL dấu phẩy được mã hóa?
- 5. Đường ray - cách thêm dấu thời gian vào mô hình?
- 6. Tại sao Dấu vết ngăn xếp hiển thị đường dẫn tệp phát triển của tôi?
- 7. Tại sao encodeURIComponent không mã hóa dấu nháy đơn/dấu nháy đơn?
- 8. Tại sao tên mangling không được chuẩn hóa
- 9. Tại sao logcat android không hiển thị dấu vết ngăn xếp cho một ngoại lệ thời gian chạy?
- 10. Đường ray, Bộ mã hóa địa lý và gần
- 11. Sự cố mã hóa đường ray trên ruby 1.9.1
- 12. Kiểu mã hóa: Cách cải thiện kiểu mã hóa và tiêu chuẩn tại một công ty
- 13. Tại sao dấu vết (..., chỉnh sửa = TRUE) không hoạt động khi ... = [.data.table
- 14. Đường ray định chuẩn ActiveRecord Queries
- 15. Tại sao nên sử dụng các dấu vết trong khi tôi đang sử dụng các dấu phẩy?
- 16. Dấu thời gian đường ray không sử dụng múi giờ đúng
- 17. Chuẩn mã hóa và chiều dài dòng
- 18. Có công tắc nào để vô hiệu hóa các dấu vết với tiếng kêu không?
- 19. Chuẩn hóa URL chuẩn - Java
- 20. Đường ray - Tìm theo với 2 trường?
- 21. Tại sao DOM thay đổi mã hóa?
- 22. ! 0 là sai trong đường ray. Tại sao?
- 23. Dưa chuột (đường ray 2) không tải jQuery
- 24. Tại sao NodeJS lại thích kiểu mã hóa dấu phẩy đầu tiên?
- 25. GDI + có CLSID bộ mã hóa hình ảnh chuẩn không?
- 26. Không thể chạy đường ray 2.x ứng dụng
- 27. Tiêu chuẩn mã hóa Erlang và các thực hành tốt
- 28. Tại sao chúng ta nên đặt dấu thời gian khi chúng tôi thực hiện việc mã hóa?
- 29. Tại sao đường ray bỏ qua .bundle theo mặc định?
- 30. Kiểu mã hóa F # và tiêu chuẩn
câu hỏi Thật thú vị;) –