我最近一直在做一些简单的rails应用程序。我对ruby非常了解,但是当我开始“用rails的方式”做事情时,我注意到有些事情是“因为”而做的,对于一个(rails)新手来说,很难知道代码是做什么的。
rails是不是错过了要点,变成了某种第四代语言?我的意思是,为了开发rails网站,你必须做一些(你不需要理解的)事情,另一种选择是探索源代码来弄清楚什么是做什么的。
我还看到,人们向任何能做好rails教程的人支付现金……我们正在讨论一个将简单性放在首位的框架,有必要为好的教程付费吗?
不要误解我的意思,我相信rails为主流带来了非常好的想法(就像约定胜过配置),但它过于简单了(“只需将这行代码放在……它就行了!”)降低了框架试图实现的简单性?
发布于 2008-11-12 03:50:34
我认为这是一个观点问题。从更广泛的角度来看,Rails社区认为这个框架很简单。但事实是,事实并非如此。事实上,我使用Rails的次数越多,我就越不会成为一个铁杆粉丝。我不认为这是Rails的错,但我想很多人已经得到了这样的印象:编写一个Rails应用程序在某种程度上类似于挥舞魔杖(我自己也喝过这种魔术棒)。
Rails确实提供了许多承诺,因为它提供了许多功能,几乎不需要配置。像ORM,模型关系和验证这样的事情很容易设置,并且留下了更多的时间来做一些事情,比如微调应用程序逻辑和专注于设计。Rails代码也非常非常容易重构。Rails绝对可以让你用很少的代码做很多事情。
当我想走出老路时,我会感到沮丧。我可能想实现“非常具体的功能X”,但我找不到从哪里开始。我发现我对框架的了解越深,信息就越稀疏。令人遗憾的是,API的某些部分文档不足。这迫使我依赖于第三方插件,其中一些没有文档,也没有很好的维护。我被一篇博客文章困住了,告诉我把这个或那个代码复制到我的应用程序中,事情就会好起来(谢天谢地,它们通常都是这样的)。
我的一些麻烦可能与我的经验不足有关(仍在从设计师过渡到程序员),但我经常觉得,尽管Rails为构建网站提供了优秀的工具,但至少在表面上,它并没有为构建其他工具提供很好的工具。它有潜力,但你真的需要深入挖掘。
发布于 2008-11-12 03:33:03
约定重于配置的问题是,您需要了解约定。至少有了一个配置文件,你可以在入门时读到一些东西……一旦你了解了约定,它就会变得更快,但在此期间,你会遇到学习的悬崖。
发布于 2008-11-12 20:32:14
是Rails的黑盒吗?
Rails确实有一些“神奇的代码”,你只需写出教程要求你写的东西,这些东西就会神奇地工作,但它根本不是一个黑盒。
根据
中都有“魔力”
https://stackoverflow.com/questions/282825
复制相似问题