4 ms·
> MVC in rails breaks for larger apps. This. Rails is perfect for fast development of CRUD in MVC, but if you're building anything complicated, you need someth
by DJHenk 8y ago
> MVC in rails breaks for larger apps.
This. Rails is perfect for fast development of CRUD in MVC, but if you're building anything complicated, you need something that supports more options than MVC. People can laugh at PHP all they want, but a framework like Symfony runs circles around Rails. You can do both simple and complex in it. I haven't tried Hanami yet, but while the frameworks concept seems much more promising than Rails, it's community is much smaller.
Still Rails is very populair, also here on Hackernews. Probably because the things we need to do in real life are actually not that complicated as we often make them out to be.
- meesterdude 8y ago> Symfony runs circles around Rails Ok Which circles, specifically, does Symfony run around Rails?
- wolco 8y agoSpeed, periformance, scaling. But rails can be more fun.
- canhascodez 8y agoProbably, the ability to dump arbitrary 3000-line classes into arbitrary directories. If you happened to start out working with Zend and then moved to Symfony, you might have strange ideas about how Rails is structurally too opinionated.
- radus 8y agoI've not used Rails, but I don't think that the idea that one can place an arbitrary file in an arbtrirary directory is strange at all.
- canhascodez 8y agoHow much of that do you think is a good thing? Zend was essentially an unstructured collection of arbitrary classes which were more-or-less interoperable. Class names needed to be globally unique, and namespaces didn't exist, and there were no conventions about where third-party code should go, or a very effective class registry, and dependency management often meant PEAR, which was like CPAN, but terrible. The idea of having arbitrary files in arbitrary places is something that any framework should be able to accommodate, but having some sort of well-defined folder structure is really quite necessary (in my opinion). It was not really the norm in Zend, and the tools and libraries and conventions and language are all much improved since then, but it's still possible to write ad-hoc-structured code using Symfony, and there are developers who prefer this.
- dasil003 8y agoYes, ActiveRecord is not a good pattern for large-scale apps. The reason it's in Rails is because it's very good for simple cases and prototypes. But there is absolutely nothing in Rails stopping you from adding a service layer in whatever shape you see fit, I'm a fan of interactors (https://github.com/collectiveidea/interactor https://github.com/collectiveidea/interactor), but use whatever you want, it's easy to plug in new directories into the app structure and get magic loading and spec running automatically. I agree that Rails enables a lot of messes, but I don't think the solution is to make your framework prescriptive about every single detail. I'd rather have the flexibility and enforce some standards per project than expect the framework dictate everything, because once you hit scale you have to do your own thinking and architecture anyway.