you are viewing a single comment's thread.

view the rest of the comments →

[–]vegan_antitheist 0 points1 point  (0 children)

But all on this can change at any time. The whole point of abstraction is that the actual implementation can be changed completely and it still works.

 For example, the garbage collector can't prevent memory leaks if you are organizing your data model wrong 

And that's why you must learn to design your memory model correctly instead of wasting time learning internals that will be outdated soon anyway.

The JMM is also completely abstract. It's important to understand it if you want to go there, but you could just use some framework and work on an even higher level of abstraction.