iT邦幫忙

1

請問ruby on rails何謂框架?

各位大家好,我上網查了所謂的ruby語言

然後看到ruby on rails的名詞

大家都說rails叫做ruby寫成的框架

到底甚麼叫作框架,我不就寫ruby嗎?框架是用來作甚麼的呢?

謝謝各位

2 個回答

2
賽門
iT邦超人 1 級 ‧ 2017-01-18 13:40:46
最佳解答

框架是一套標準或規則,你要用框架,就得在框架規範的標準或規則下開發你的網站。
椢架很多,在PHP的環境裏一大堆框架
Ruby下只有Ruby on Rail所以你只要遵照RoR規範的標準寫就行了。那個標準就叫框架。

看更多先前的回應...收起先前的回應...
sparrow iT邦新手 5 級 ‧ 2017-01-19 23:58:34 檢舉

所以我也可以不用照框架來寫,只要我的RUBY程式可以跑就好了,是這意思嗎?

我以前寫php也只是照書寫,也沒在管框架,所以雖然知道是標準,但還是很抽象

我的認知就是有個notepad可以寫程式就好了...

kingc iT邦新手 5 級 ‧ 2017-01-20 06:57:04 檢舉

你是可以不用照和用框架来写,但是会很苦逼,原因是:

  • 所有的原始HTTP Request/Response都要自己处理(想想GET,POST,PUT,DELETE),以及cookie, CORS, 跟用户authentication相关的http headers handling;
  • 对后台Database的访问需要自己拼接SQL语句,并且查阅资料做各种防范SQL注入;
  • 要render给browser的页面也需要自己做原始的文本替换和evaluation的处理,或者自己来一套模板方案;
  • 如果稍微想对用户友好一点,玩玩ajax/json,得自己搞定object<->json string的双向转换, 里面可能涉及到Object之间的循环引用,并不是想象的那么容易;
  • 后台页面运行时的热调试支持, 你可以查查pry能干啥;
  • .....等等等等
    而框架是前人针对这些各个领域90%常见scenario提供的事实标准解决策略(MVC, ORM, Routing, Authentication...)的组合,有些组合得紧密,有些能够让你随便乱换(尤其是ruby的duck typing特性),并且经过业界与社区的code review和实际测试.
    所以时代已经前进了,20年前的搞法不是不行,天底下并没有新鲜事儿,但如果是严肃地考虑自己的产出要满足一定的质量标准和进度要求,学习掌握理解和运用修改框架是现今开发人员的基本要求了.

另外notepad写程序跟使用框架并没有什么冲突,只不过如果有一个IDE能帮你在编写程序时用intellisence更快地堆代码, 写错时直接告诉你这里有问题(fail as early as possible),保存代码时直接通知browser刷新界面运行test,而且这个美美的IDE还不要钱,为什么还留恋notepad呢?

賽門 iT邦超人 1 級 ‧ 2017-01-20 12:09:36 檢舉

想推樓上Kingc的回應,可惜沒法按讚...
/images/emoticon/emoticon12.gif

sparrow iT邦新手 5 級 ‧ 2017-01-20 14:13:28 檢舉

謝謝您們的回答!

我要發表回答

立即登入回答