<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I agree with Ilya here:<div class=""><br class=""></div><div class=""><div><blockquote type="cite" class=""><div dir="ltr" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><div class="">> but they make code editing easier at the expense of readability. <div class="">Disagree. This really depends on the example. E.g. which is more readable:</div></div><div class=""><br class=""></div><div class=""> var length: Double { return sqrt(dx*dx + dy*dy) }</div><div class=""><br class=""></div><div class=""> var length: Double { return sqrt(@dx*@dx + @dy*@dy) }</div><div class=""><div class=""><br class=""></div></div><div class=""><div class=""> var length: Double { return sqrt(self.dx*self.dx + self.dy*self.dy) }</div></div></div></blockquote><br class=""></div><div>I find that this holds true in larger classes as well (or even more). I have tons of view controllers and views that do stuff like:</div><div><br class=""></div><div>obj1.prop1 = X</div><div><div>obj1.prop2 = Y</div><div>...</div><div>obj1.prop10 = Z</div><div>superview1.addSubview(obj1)</div><div><br class=""></div><div>Adding “self.” everywhere adds a significant amount of visual noise; I've tried _property and self.property access styles in Objective-C, and find the former one to be noticeably more readable.</div><div><br class=""></div><div>To be fair, there <i class="">are</i> cases when it's not immediately clear if something is a property or a variable. That's why you can still add an explicit self. if you want. Some of those are also probably code smells.</div><div><br class=""></div><div>A.</div><div><br class=""></div></div></div></body></html>