我觉得最后是复杂死的、臃肿死的,各种框架各种库,各种封装,我突然觉得 html、css 和 javascirpt 这三者加起来就是 web 的汇编语言、机器语言,不管什么框架什么库,最后运行的时候都要“编译”成 html\css\javascript 运行。
于是为了提高开发效率,基于 html\css\javascript 这三个汇编语言的高级语言层出不穷:rails、Bootstrap、opa,特别是这个 opalang,刚才我看了下,就是把 html\css\javascript 当做机器码了,开发者只需要编写 opalang,至于前端和后端,扔给 opa 这个“编译器”就可以了
饶了一圈,既然把 web 当机器码了,web 还有存在的价值吗?还不如直接写 native 了
说 web 死了的人多了去了,但除了少数在 web 基础上做改进的牛人以外,大多数人其实没理解 web 的牛 X,以前发过帖子说过我对 REST 的佩服之处,这些正是 Web 的精华,从里面摘两句:
REST本身不是架构,只是一种架构风格,理解它的时候要参考这个架构风格出现的环境所施加的约束条件。
REST的目的是“建立十年内不会过时的软件系统架构",所以它具备三个特点:
1. 状态无关 —— 确保系统的横向拓展能力
2. 超文本驱动,Fielding的原话是”hypertext-driven" —— 确保系统的演化能力
3. 对 resource 相关的模型建立统一的原语,例如:uri、http的method定义等 —— 确保系统能够接纳多样而又标准的客户端
从另外一个角度看,第一条保证服务端独立演化,第三条保证客户端独立演化,第二条保证应用本身的自由演化,这实在是一个极具抽象能力的方案。
mozilla 刚刚发布的一个视频,boot2gecko,一部电话完全运行在 web 上。 http://mobile.dzone.com/articles/mozillas-web-based-phone?mz=46483-html5
另外楼主把 html/css/js 当成是 Web 开发的汇编语言比较偏颇,汇编语言其实可以看作是对硬件系统建立的一个软件层接口,这里面重要的是映射机器指令,对问题域的抽象很少,而 web 的各个标准则不同,它们反映的是对问题域的抽象。如果非要作类比,我觉得倒是可以和 lisp 这种语言作对比,因为后者反映的也是图灵机这种抽象
这应该是大势所趋~~ 事实上,我认为如果不是 IE 靠非法竞争,长期霸占大量市场份额,最可恨的是一家独大不说,还自立标准,和国际标准唱反调,那么,现在 Web 估计已经取代 native 了。
Web 是大趋势
我刚下载了 Tizen SDK,试用了一下,感觉特棒,有了这玩意,开发速度那可就不是传统语言可比的了(Tizen 的接口是 HTML5)
现在电脑和移动设备的运行速度已远非昨日可比了,程序员的时间远比机器的运行时间来得重要,Web 一次编码随处运行,节约的就是开发和维护成本,节约的是程序员的时间,我认为这是大趋势
Native 还是需要的,譬如一些大型的工具类软件那是必须 Native 的,但这类软件只占极少数,Web 可以囊括除去这极少数的绝大多数应用
总之我是很看好 Web 的发展前景的 :)
主席这么晚还没睡啊,顺带呼叫下,嘿嘿 @zw963