Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

How much of it you'd recommend to think of in advance when working on something vs the opposite guideline of avoiding premature optimization?


Some things you know in advance are obviously going to be computationally intensive, such as games; for those, you need all the performance you can get, so committing to data oriented design from the beginning has a lot of benefits. For everything else, you just have to decide if you think the tradeoff would be worth it. There is no easy answer here.


It's not premature optimization since this is not something you can bolt on later.


Why not? There is no reason you couldn't implement data oriented design for a small part of your application, especially a tight loop that's become a bottleneck, without changing the architecture of the entire app.


A lot of optimizations can't be easily added later without redesign. But it doesn't mean they are always necessary.

Question is, how deep to go first.


Ok, but this one is literally an upfront architecture decision.


Right, but it's optimization focused one, so that was my question.


No, it's an architecture. The speedup is a nice corollary.


It's an architecture that is specifically designed to maximize performance. I think few people would argue that it is more readable or simpler than most other common architectures.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: