News for hackers. Stuff that matters.
Re:Notch, WebGL, Dart, and ramping up quickly by kibibu on Wednesday December 04, 2013 @02:27AM (#6845527)
> instead of using setters/getters because it "gets in the way"

In my opinion it genuinely does get in the way. I want to add a member variable to an object - in many languages (JS, C#, Python for example) you can just declare it and move along, knowing that you can switch it to a property later if you need special handling.

In Java, however, for future maintenance I have to write a `public int getPaula()`, `public void setPaula(int brillant)`. This not only violates YAGNI, it slows things down in the physical "I have to type more" sense.

Re:Notch, WebGL, Dart, and ramping up quickly by Fr0styMatt on Wednesday December 04, 2013 @02:46AM (#6845575)
While it would seem that getters and setters vs public fields are very similar, there's a catch at least in the C# world - if you have a raw public field and later decide to change it to a property, that breaks your public interface and you have to rebuild stuff against your library.

Thankfully C# makes declaring getters and setters easy from the start, so it's not an issue to use them:

public int SomeField { get; private set; }

That gives you a public property called SomeField which can be retrieved, but which can only be set privately by the class. I'd hate having to write GetBlah and SetBlah; it's damn ugly.