Đối với đóng gói tốt, phong nha Objective-C
lập trình viên đưa private
ivars của họ trong một tin extension
khai báo trong file thi hành chính, như thế này:Thêm ivars trong @implementation
// MyClass.m
@interface MyClass() {
float value;
}
@end
@implementation MyClass
@end
Nhưng gần đây, tôi tìm thấy một cách đơn giản hơn để ẩn private
ivars: ivars thể được khai báo trong một khối {}
sau @implementation
, như thế này:
// MyClass.m
@implementation MyClass {
float value;
}
@end
Nó thực sự tiện dụng khi không có phương pháp riêng nhưng chỉ private
ivars cần phải được ẩn.
Tuy nhiên, tôi không chắc về hiệu lực cú pháp của nó. Bất cứ ai có thể xác nhận hoặc vô hiệu hóa nó với một số tài liệu tham khảo kinh điển?
Link bị hỏng. : P – cHao
@cHao có apple cập nhật cấu trúc liên kết của họ tại một số điểm và đã phá vỡ rất nhiều liên kết cũ từ bài đăng SO. Gây phiền nhiễu để nói rằng ít nhất. – Brynjar
Đây là liên kết được cập nhật: https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/EncapsulatingData/EncapsulatingData.html - tìm tiêu đề phụ "Bạn có thể xác định biến thể không có thuộc tính" cách nhỏ xuống trang. – jowie