Hacker News new | past | comments | ask | show | jobs | submit login

> it's just papering over the problem of bloated classes with too many responsibilities.

If you're blindly coding away and using some feature just because it's there you've got bigger problems with how you go about programming, that's not special to Rails.

I find concerns to be an intermediate mechanism to use in migrating the bloat out to some other abstract level. However, adding abstractions beyond MCV has it's own problems, each level means the developer has to understanding something more, one can't escape that.

Pretending that one can fully anticipate the complexity of large project and model it perfectly via the way you organize your code is really only something done by the the beginning programmer. Concerns can be very tight, as you note, and of course any feature can be used poorly. I like concerns, we have many that haven't been touched, and lead to an ability to extremely rapidly spread functionality around a huge number of models (e.g. different annotation classes). I'm also guilty of using them in the intermediate manner above. In the long term, one sees these patterns, and doesn't fret about such things.




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

Search: