Sở thích của bạn với việc đặt tên các lớp học ObjC là gì? Tôi là một chút không chắc chắn những gì sẽ là cách tiếp cận hợp lý nhất về điều này vì vậy nó sẽ được tốt đẹp để nghe một số ý kiến khác.Tiền tố Lớp-C Mục tiêu
Apple khuyên bạn nên bắt đầu các lớp cacao, vì ObjC không hỗ trợ không gian tên. Google ObjC styleguide (mà tôi chủ yếu là nhằm mục đích) không đi với họ, trừ khi bạn đang mở rộng (loại, mở rộng lớp, vv) một NSClass.
Sở thích của tôi KHÔNG PHẢI là các lớp tiền tố, vì tôi cũng nghĩ rằng đó là một sự lãng phí các chữ cái và không góp phần vào một nguyên nhân. Nó chỉ nên được sử dụng trong mã khung công tác để báo hiệu rằng lớp này thuộc về nó chứ không phải các lớp ứng dụng của bạn, nhưng tôi sẽ không sử dụng nó ở cấp ứng dụng.
Của bạn là gì và quan trọng nhất là TẠI SAO?
Kết luận của tôi (xin vui lòng thêm ý kiến của bạn để tạo ra các quyết định đúng đắn nhất) Cấp
Application Lớp học:
- tôi quyết định đi với 1 Tiền tố Thư (như CMyClass). Lý do chính là vì mục đích tổ chức tệp (ví dụ: nhóm tốt hơn trong Trình tìm kiếm) và nó vẫn sử dụng các chữ cái tên lớp ít hơn các tiền tố có độ dài từ 2 trở lên.
- Sử dụng tiền tố 'C' cho các lớp ca cao (ví dụ
CAudioController.h
) - Sử dụng tiền tố 'U' cho bộ sưu tập tiện ích (đồng bằng C, ví dụ như
USystemAudio.h
)
- Sử dụng tiền tố 'C' cho các lớp ca cao (ví dụ
Lớp cấp khung:
- Các lớp tiền tố có từ 2 chữ cái tùy chỉnh trở lên, độc đáo hơn, vì nó có thể sẽ được chia sẻ với các ứng dụng khác.
Categories
- Categories được đặt tên như sau:
NSClassName+ExtensionPurpose
Liên kết tới hướng dẫn về phong cách ObjC của Google: http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml#Class_Names - Họ nói: "Khi thiết kế mã được chia sẻ trên nhiều ứng dụng, tiền tố được chấp nhận và được đề xuất (ví dụ: GTMSendMessage). Tiền tố cũng được đề xuất cho các lớp ứng dụng lớn phụ thuộc vào thư viện bên ngoài. " – gregschlom