Answers
他们出现的原因是什么?
当前端从 Web Page 变成了 Web App 时,就需要前端框架了。
有什么优点?
自行 Google。
更新
在评论中,@C860 说
就目前的WEB PAGE来说,引入前端框架已经是大势所趋了。很多时候后端的一些数据处理都转移给了前端去完成,特别是在REST模式下。
就他的描述来看, 后端的一些数据处理都转移给了前端去完成 这绝对不是 Web Page,这明显已经是 Web App 了。
- Web Page 以表现为主
- Web App 以应用为主
现在我们在 web 上,已经不仅仅是去 看 了,我们更多的时候是去 用 。
大公司有没有用我不敢轻易下结论,但是我知道 TX 他们有自己写的库
看来他还真是把 Web Page 和 Web App 理解错了,TX 的公司网站是 http://www.tencent.com 我不用看他的源码,就可以猜出,这么个 Web Page 型网站,不会去使用这些 MVC 框架的。如果他提到的 TX网站 是QQ空间、WebQQ,那就是 Web App 了。
更新2
也许很多人不太理解 Web Page 和 Web App 的区别。不仅仅是 Web,就连现在的桌面软件,手机软件(呃~我提到这个词会被行家笑话的,应该叫“移动App”、“手机应用”、“……”)。
为什么我们发明了这么个新名词呢?App。
如果你有使用 VC、VB、Delphi、PB 的开发经验,就会注意到我们建立新项目时,会有几个选择 Win32、Console、桌面软件、Lib、……
换句话说:“并不是所有的软件都是 App”,软件分很多种,如果我们写一个水仙花数的解法,那么,我们编写的是“程序program”,广义的说,这其实也勉强算是一个APP吧(你可以包装一下),因为他确实是一个 应用 ,他可以 用来 解决我们的一个或者几个问题。
或者你把他再包装一下,写个文档,使用手册,……那么你可以说你开发了一个“软件software”。
如果你开发的是类库,比如你开发了一个 jquery,开发了一个 spring,那么即使你的程序编写的再好,他也不是一个 APP。
如果你开发了一个系统软件,比如编译器,比如驱动程序,比如文件系统……那么这个也不是APP。
那什么是 web app 呢?就是 Web 应用。(这不废话吗!)
Web 最初出现的时候,可以说仅仅是颠覆了传统传媒业,颠覆了报纸业,新闻业,…… 我们做了那么多网页(Web Page 翻译的多贴切,web就是网,page就是页)。
后来,java applet、flash、javascript、slivelight、flex……各种技术的出现,改变了人们发布和部署APP和software的方式,虽然悄无声息,但也绝对是软件发布方式的一次革命。