Quy ước đặt tên cho hằng số trong Mục tiêu-C (hoặc cách được sử dụng rộng rãi nhất để đặt tên cho chúng) là gì?Làm thế nào để đặt tên một hằng số trong Objective-C?
Có tiêu chí khác cho các hằng số extern
không?
Một số phong cách tôi đã thấy:
NSString* const kPreferenceFirstRun = @"FirstRun";
// Replace "XY" by a prefix representing your company, project or module
NSString* const XYPreferenceFirstRun = @"FirstRun";
Tôi nghĩ rằng lợi ích của tiền tố hai chữ cái và tiền tố k là gấp đôi: 1) tiền tố hai chữ cái cho phép bạn dễ dàng lọc các lựa chọn tự động hoàn thành của bạn chỉ với nhóm các hằng số bạn đang tìm kiếm 2) khi xem mã, bạn biết chính xác tên miền liên tục đến từ đâu. Hãy tưởng tượng nếu bạn đang làm việc trên một dự án sử dụng nhiều dự án anh chị em trong Xcode và tất cả chúng đều sử dụng k làm định danh duy nhất cho hằng số - bạn sẽ bị sắp xếp thông qua danh sách tất cả các hằng số từ tất cả các dự án anh chị em. Cách khác, nếu mỗi dự án sử dụng tiền tố tên miền hai chữ cái của riêng nó thì nó trở nên dễ dàng hơn nhiều. – memmons
Điểm rất thú vị và câu trả lời rất thú vị. Và nó sẽ là tốt hơn để có các hằng số khai báo trên mỗi tập tin tiêu đề (MyClass.h), hoặc nó sẽ là tốt hơn để có một tập tin .h toàn cầu (Constants.h hoặc tương tự) độc quyền có chứa tuyên bố liên tục? Tôi đã thấy thực hành cuối cùng này trong nhiều dự án C/C++, vậy tại sao không ở objC – voghDev
Cần lưu ý rằng rất nhiều thư viện của Apple đang sử dụng kPrefixConstantNamingConvention. Vì vậy, cho dù bạn đi cho một hay khác là chủ yếu là tùy theo sở thích cá nhân. Tôi thường sử dụng kPrefix, nhưng tôi cũng có xu hướng tránh các hằng số toàn cục, vì vậy việc đặt tên các hằng số trở nên ít quan trọng hơn. –