开发者

RoR has too much choice? what is meant by that? [closed]

开发者 https://www.devze.com 2023-01-16 19:28 出处:网络
Closed. This question needs to be more开发者_如何学C focused. It is not currently accepting answers.
Closed. This question needs to be more开发者_如何学C focused. It is not currently accepting answers.

Want to improve this question? Update the question so it focuses on one problem only by editing this post.

Closed 9 years ago.

Improve this question

I read somewhere (I can't recall where exactly) that RoR has too many choices, I don't know much about RoR so I wondering if someone could explain this for me (or maybe its not true?).

Where exactly in the framework are the choices?

Can someone summarize the more popular plugins for RoR for me?

I gather these 'choices' are in:

  1. ORM
  2. template engine
  3. libs for common tasks?

A summary of the various areas would be great.


Your question is quite broad (and hence difficult to answer) but I will try to address the point of why someone might raise this as a criticism, which I guess is part of what you are asking.

When Rails first came out a couple of things about it were:

  • It was a full stack framework (ORM, MVC framework, template engine, collection of helper methods which all worked well together) - this removed the need for the developer to choose a package in each of these categories and to get them to work together.
  • It was opinionated software which again meant that a lot of decisions were made for you, ranging from the folder layout for your project to the default names for database tables and fields when using ActiveRecord. Again, this helped free the developer from making these choices and let him or her concentrate on the specifics of the project at hand.

Much of this still stands but there are certainly more potential choices now than in the past. e.g. if you prefer a different template engine, don't need an ORM for your project and so on. This is generally a good thing as mentioned in the post that tokland linked to.

You mentioned that you don't know much about Rails. If it's something you're interested in learning more about then I would start a project with the default choices and see how that works for you. Then you could post follow up questions like "Can someone recommend an alternative template engine I could use - I don't like erb because of specific reason XYZ"


I rather found opinions that RoR has too much convention. I come from Java world where you have 'overchoice', so now I prefer new RoR 3 open convention.

Recently Rails 3 added more thanks to architecture redesign focused on interface clarification and plugability. But in RoR 2 even alternative HAML view implementation used monkey patching to work as ERB alternative. Choosing alternatives caused headaches on every Rails upgrade.

0

精彩评论

暂无评论...
验证码 换一张
取 消