专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 其他开发语言

【议论】一种语言一个框架适用于web、移动和桌面的技术讨论

发布时间:2011-06-30 07:19:37 文章来源:www.iduyao.cn 采编人员:星星草
【讨论】一种语言一个框架适用于web、移动和桌面的技术讨论!
本帖最后由 speedneeder 于 2014-02-18 03:14:56 编辑
大家好,我是个喜欢看各种杂书但都研究不深的程序员,下面所说的是我这些年来的一些想法,可能有种种不对的地方,可能已经有人做出了项目而我却不知道,欢迎大家指出,更欢迎大家一起讨论一下!

1.想法的产生

我一直有一种想法有没有一种语言一个框架能够适用于包括web、移动和桌面尽可能多的场合呢?

以前的这个想法可能会被人讥笑,但是node.js出现之后,js这一系的各种技术异军突起,于是有人做出了appcan、phonegap这样的框架,webos和firefoxos是更进一步的解决办法,但基本没什么用户,这些虽只限于移动端,但也给我打开了思路。

一个本地程序按照mvc的框架划分分为3部分,一个网站/web应用按照前后端的划分也有一个界面,类似豆瓣所采用的以onering为基础的架构,却恰恰是用web的方式来开发本地应用,把mvc之中的view看做网站的浏览器,然后m和c看做网站的服务端,这种方式不正是一种包治百病适用于所有平台的框架吗?


2.界面/view

那么框架确定了,我开始对比各种界面技术。

以前做过几天windows c/c++开发,也做过.net包括wpf/silverlight框架的开发。c/c++确实强大,性能优秀,但没有c#那么易用,界面方面也是个问题(mfc、bolt、directUI、gtk+等等各种方案都有缺点)。而c#不能跨平台(mono基本是个试验品)很多时候还要带一个大体积的.net。后来又接触到了java,这确实是跨平台的,但相对来说感觉用swing来做桌面开发的非常少。然后又接触了flash/flex/air这一系的技术,优点是flash普及率极高,air运行时也比较小,还有很多的资源,缺点就是本地功能太弱。

所以比较之后,在我看来html+js这样的设计界面的方式几乎是没什么缺点的(除了js的丑陋,这个后面再说),简单易用,开发者接受度高,结合jquery/bootstrap/angularjs等各类技术可无缝过度到mvc和响应式的开发模式,v8内核出现之后速度也不是瓶颈,html5/webgl/threejs等各类技术如果成熟之后即使用来开发3d游戏也不是问题。界面这一块html/js可以用来作为一个解决方案。

3.后台/服务端/view/controler

然后就是m和c或者说网站的后台部分,既然要做的是一种同时适用于web和桌面/移动开发的技术,那么就可以一视同仁,其实伴随node.js出现的一系列新技术比如clouda和meteor也已经给出了答案,虽然这两个仅限于web和移动应用,但桌面上也有类似的东西,比如node-webkit就是一个可以简简单单的把网页做成桌面程序的技术。



4.结论

所以我觉得最终结合以上各种技术可以搞出一个终极框架,界面部分使用html+angularjs+bootstrap这样的网站前台设计方式来设计,使用类似onering的方式或者websocket之类的技术传递ProtocalBuffer这样的数据,后台则是node.js基础上架的一个类web server,既可以放在服务器上作为网站的服务器,也可以作为web应用的后台,更可以在本地作为本地程序mfc的model和controler,数据库使用mongodb,这样数据在整个应用内部,从前端到后端都是以json的形式流动和传递的。


这样一个框架整个前后端都是用一种语言js来实现的,因为js被人诟病的语法,我们也可以换用coffeescript再转为js,等到将来,甚至可以直接采用coffeescript而弃用js。

这样一个语言、一种框架、一种数据格式(json)基本上就可以实现所有桌面平台+所有移动平台+网站+web应用的程序开发,同时这种框架的前端设计可以继承数量庞大的网页开发设计人员,coffeescript也简单易学完全可以继承js的开发者。
------解决思路----------------------
每一个架构设计,都是为了解决某种场景下的某些问题。
你现在的最大问题是不知道各种不同应用会面临什么问题,才会觉得可以用这样一个统一架构在所有场合使用。
------解决思路----------------------
支持,这个想法真的不错。我也非常希望。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: