西西河

主题:Adobe停止开发移动平台上的Flash版本 -- holycow

共:💬72 🌺116
全看分页树展 · 主题 跟帖
家园 开发效率与运行效率之争是永恒的

谁更重要没有超脱具体环境的普适答案。人们总是鱼和熊掌都想要,在二者来回摆动而已,尽力融合。

我上面提到的趋势就是最新的融合努力和目前摆的位置所在。

我个人认为虚拟机有两个阶段:

第一阶段是编译型的,如JAVA, .NET。程序员直接针对虚拟机编程。

第二阶段,是解释型的,程序员针对应用编程。如Python,Ruby,Javascript。

前者是开发效率与运行效率的折衷,是一个技术成长成熟过程的过渡性半成品。其对资源的回收需要程序员的帮助(比如.NET的using关键字),也需要程序员对GC的理解才能正确使用。比Native语言(C/C++/D)他们还有效率问题。比起第二种语言,他们又是强类型,因此还需要编译,开发效率远远落后,地位尴尬。

所以才会有新的趋势:高运行效率的Native编译型语言 + 高开发效率的脚本语言(Python,Ruby,Javascript,HTML+CSS)

在Windows平台: C/C++ + HTML5/Javascript/XAML,

Linux平台:QT5 + QML(Javascript的变种)都是当前的趋势。WebOS的编程模型也如此。

虚拟机+上内存里等待被唤醒的用户编译代码(C#, JAVA) PK 虚拟机+磁盘上待解析的文本文件(HTML)。在资源浪费和回收上也不占优势。用户也不会知道你的界面是早就编译好的,还是临时解释画出来的。

所谓基于浏览器上的操作系统,本质上正是如此。

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河