On Friday, 22 July 2011 at 22:06:20 UTC, Andrei Alexandrescu
wrote:
[SNIP]
Walter is reluctantly on board with a change in this direction,
with the note that he'd just recommend interfaces for this kind
of separation. My stance in this matter is that we shouldn't
constrain without necessity the ability of programmers to
organize the physical design of their large projects.
I agree with Walter here, I have had good success with
interfaces and abstract classes (where speed dictated direct
field access) for largish projects, by separating
This talk[1] made me rethink how to do OO with classes and
interfaces, but as he says at the end is the key take away.
I apply the approach more on the high level architecture of the
program [2] & [3, 4, 5].
Either way the talk is really good, I recommend whole heartily
you take the time to watch it.
Cheers, Jakob.
[1]
http://www.infoq.com/presentations/It-Is-Possible-to-Do-OOP-in-Java
[2]
https://github.com/VoltLang/Volta/blob/master/src/volt/interfaces.d
[3]
https://github.com/Charged/Miners/blob/master/src/miners/classic/interfaces.d
[4]
https://github.com/Charged/Miners/blob/master/src/miners/interfaces.d
[5]
https://github.com/Charged/Miners/blob/master/src/charge/game/runner.d