Tôi có nên gắn bó với các quy ước mã Java của Sun cho mã PHP không?Quy ước mã hóa nào tuân theo PHP?
Trả lời
Đối với PHP, tôi muốn đề nghị làm theo Zends suggestions
Như bạn đã biết, Zend is the most widely used framework!
Nếu bạn đang ở trong một doanh nghiệp theo các quy ước mã số kinh doanh.
Nếu nó cho một dự án cá nhân, bạn có thể nhận được đặc tả ngôn ngữ cụ thể (nếu bạn làm Java hơn Java, nếu bạn làm Php hơn PHP). Nếu đó là dự án cá nhân của bạn, bạn có thể thay đổi vài thứ nếu bạn muốn ...
Nếu bạn làm dự án nguồn mở, bạn nên xem những gì đã có sẵn.
Có nhiều quy ước mã hóa khác nhau ở đó. Hãy xem những gì người khác sử dụng (đọc một số mã ví dụ và xem cách dễ dàng để hiểu những gì đang được thực hiện) và chọn lựa của bạn.
Phần quan trọng là chọn một và dán vào nó.
Bạn có một số tùy chọn:
Zend: http://framework.zend.com/manual/en/coding-standard.html
Pear: http://pear.php.net/manual/en/standards.php
Wordpress: http://codex.wordpress.org/WordPress_Coding_Standards
Nhưng giống như Prakash cho thấy, Zend là một lựa chọn tốt.
Cập nhật: người cũng sử dụng PSR ngày nay rất nhiều
Zend Framework và PEAR tiêu chuẩn là khá nhiều công ước mã hóa phổ biến nhất. Nếu công ty của bạn đã thông qua một công ty khác, hãy tuân theo quy ước của công ty bạn. Tốt hơn là không có quy ước nào cả. Và họ chỉ làm việc nếu mọi người dính vào họ.
Xem thêm:
- Which Coding convention to follow for PHP?
- PHP best practices for naming conventions
- PHP coding conventions?
Về cơ bản, tất cả các khuôn khổ lớn có một quy ước mã hóa nơi nào đó trong tài liệu hướng dẫn của họ. Chính thức (nhưng IMO chủ yếu là chưa biết) Hướng dẫn Mã hóa PHP có thể được tìm thấy tại
Nếu bạn cần phải xác nhận mã chống lại một quy ước mã hóa, xem xét sử dụng CodeSniffer. Một số IDE cũng cung cấp định dạng mã nguồn tự động theo mẫu. Ví dụ Zend Studio có các hướng dẫn mã hóa ZF tích hợp, vì vậy nó chỉ là một cú nhấp chuột để định dạng mã cho quy ước đó.
Như Gordon nói, các tiêu chuẩn Zend và PEAR là tiêu chuẩn công nghiệp hiệu quả. Tuy nhiên, mã của công ty khá có thể được đặt trước, do đó tùy thuộc vào kích thước của cơ sở mã, có thể có ít giá trị trong việc đầu tư thời gian để chuyển sang một trong số các mã này. (Điều đó nói rằng, nếu họ muốn sử dụng các công cụ phân tích mã tĩnh, bạn có thể sử dụng điều này như một động lực để cân nhắc việc chuyển sang Zend, v.v.) họ dính vào không có vấn đề thực sự ở đây - bạn sẽ thấy mình điều chỉnh cách bạn "xem" mã cho phù hợp.
+1 'miễn là chúng có một tiêu chuẩn hợp lý mà chúng dính vào không có vấn đề thực sự ở đây - bạn sẽ thấy mình điều chỉnh cách bạn" xem "mã phù hợp." –
Kiểu mã hóa khác nhau giữa các nhóm và không phải là một kích thước phù hợp với tất cả mọi thứ. Điều quan trọng nhất là có một tiêu chuẩn được tuân thủ một cách nhất quán và không bị quá tải. Quá nhiều quy tắc có thể chỉ tệ như không đủ.
Tôi đã sử dụng kiểu K & R (kiểu thứ hai). Sau khi phải điều chỉnh theo kiểu Allman (sở thích của bạn), bây giờ tôi cảm thấy rằng nó làm cho mã dễ đọc hơn và đã thay đổi sở thích của tôi.
Điều này Wikipedia article là một nơi phù hợp để bắt đầu. Nó cũng bao gồm một liên kết đến các tiêu chuẩn mã hóa PEAR, trong số những thứ khác.
Có ưu và khuyết điểm đối với bất kỳ kiểu mã hóa nào. Tôi dành rất nhiều thời gian làm việc với mã từ nhiều nguồn tích hợp vì vậy đôi khi kết thúc thấy nhiều phong cách khác nhau trong một ngày (các quy ước đặt tên khác nhau, vị trí niềng răng, tab vs không gian v.v.)
Theo như tôi quan tâm - Điều quan trọng nhất nếu bạn đang làm việc với mã hiện có là làm theo phong cách của mã mà bạn đang chỉnh sửa. Nếu bạn không làm cho mọi thứ khó khăn hơn cho bất cứ ai theo dõi sau bạn.
Nếu bạn đang viết mã mới, bạn nên tự do làm điều đó theo cách làm cho bạn hiệu quả nhất.
tôi thấy rằng công ty mã hóa chủ trương thường xa để chi tiết và kết thúc bằng việc bị lãng quên sau một vài năm và một chút khuấy trong đội phần mềm ;-)
Bạn nên sau một trong những tiêu chuẩn PSR cho PHP sự chấp thuận của Framework Interop Group
- PSR-0 - Nhằm mục đích cung cấp một tập tin, lớp học và namespace ước tiêu chuẩn ..
- PSR-1 - Nhằm mục đích đảm bảo một mức độ cao về khả năng tương tác kỹ thuật giữa mã PHP chia sẻ.
- PSR-2 - Cung cấp Hướng dẫn kiểu mã hóa cho các dự án tìm cách chuẩn hóa mã của họ.
- PSR-3 - Mô tả giao diện chung cho các thư viện ghi nhật ký; các
LoggerInterface
cho thấy tám phương pháp để viết nhật ký cho tám cấp RFC 5424. - PSR-4 - Mô tả đặc điểm kỹ thuật cho tự động tải lớp từ đường dẫn tệp. Nó có thể tương thích hoàn toàn và có thể được sử dụng ngoài bất kỳ đặc tả tự động nạp khác, bao gồm PSR-0.
- 1. "Mã hóa theo quy ước" là gì?
- 2. C# quy ước JSON.NET tuân theo quy ước đặt tên thuộc tính Ruby?
- 3. Làm cách nào để kiểm tra mã PHP đối với một tập hợp quy ước mã hóa cụ thể?
- 4. iPhone 5 - quy ước đặt tên những hình ảnh mới phải tuân theo là gì?
- 5. Quy ước đặt tên thông số url hoặc tiêu chuẩn để tuân theo
- 6. Phong cách và quy ước mã hóa Scala?
- 7. Quy ước mã hóa chức năng "riêng" của Python
- 8. Chọn hai hàng tuân theo quy tắc
- 9. Cấu hình hợp nhất theo quy ước
- 10. Java Enum Loại Mã hóa ước
- 11. Quy ước đặt tên cho Traits PHP?
- 12. Xcode và kiểm tra quy ước mã số
- 13. quy ước mã python sử dụng pylint
- 14. Công cụ để định dạng mã với quy ước mã hóa Java Sun
- 15. Kiểm tra mã hóa và quy ước đặt tên của mã C/C++
- 16. Quy ước mã PL/SQL Oracle
- 17. Quy tắc FxCop "phải tuân theo" cho bất kỳ nhà phát triển C# nào?
- 18. Quy ước mã hóa trong Javascript: sử dụng khoảng cách giữa các khoảng trống
- 19. Quy ước đặt tên - Làm việc với PHP và MySQL
- 20. Điều kiện PHP được tuân theo bằng cách đóng thẻ
- 21. Quá tải một hàm PHP gốc để mã hóa dữ liệu cho tuân thủ HIPAA
- 22. Quy ước về CSS/Mô hình bố cục mã số
- 23. phương pháp mã hóa PHP đúng mã hóa PHP?
- 24. tại sao C# và C++ sử dụng _ <variableName> quy ước mã hóa?
- 25. Quy ước về cấu trúc thư mục/tệp?
- 26. Có bất kỳ quy ước/quy tắc/tiêu chuẩn mã HTML nào
- 27. Các thư viện Scala có tuân thủ cùng quy ước miền ngược để đặt tên các gói như Java không?
- 28. Làm cách nào để liên kết bằng cách sử dụng GCC mà không có đường dẫn mã hóa cứng cho một thư viện không tuân theo quy ước đặt tên libNAME.so?
- 29. Quy ước về mã JavaScript - khai báo biến số
- 30. Mã hóa tệp PHP
Quan trọng hơn, Zend là công ty viết động cơ PHP ... do đó PHP5 sử dụng công cụ Zend, phiên bản 2. – Powerlord
Chính xác những gì họ đã viết Công cụ Zend phải làm gì với việc tuân theo các quy ước mã hóa của khuôn khổ của họ? – Franz
-1 Bởi vì mọi người nên quảng bá PHP-fig là tiêu chuẩn đang được phát triển mà Zend là thành viên của. Xin vui lòng upvote câu trả lời php-sung dưới đây và thúc đẩy dự án này - nó sẽ có lợi cho tất cả mọi người trong cộng đồng PHP. – rgvcorley