Trong một ví dụ đơn giản như thế này, tôi có thể bỏ qua bản thân để tham chiếu backgroundLayer vì nó rõ ràng mà backgroundLayer backgroundColor được thiết lập.Khi nào tôi nên truy cập các thuộc tính với tính năng tự động nhanh chóng?
class SpecialView: UIView {
let backgroundLayer = CAShapeLayer()
init() {
backgroundLayer.backgroundColor = UIColor.greenColor().CGColor
}
}
Nhưng cũng giống như trong Mục tiêu-C, chúng ta có thể gây nhầm lẫn mọi thứ bằng cách thêm biến cục bộ (hoặc hằng số) có tên tương tự. Bây giờ backgroundColor đang được đặt trên lớp không hình dạng:
class SpecialView: UIView {
let backgroundLayer = CAShapeLayer()
init() {
var backgroundLayer = CALayer()
backgroundLayer.backgroundColor = UIColor.greenColor().CGColor
}
}
(điều này được giải quyết bằng cách sử dụng self.backgroundLayer.backgroundColor)
Trong Objective-C Tôi luôn tránh làm ivars đối với tài sản và tài sản luôn tiền tố tự cho rõ ràng. Tôi không phải lo lắng về ngà voi nhanh chóng nhưng có những cân nhắc khác khi tôi nên sử dụng bản thân một cách nhanh chóng?
Cân nhắc chấp nhận giải pháp. –