是否可以考虑只提供JS的binding

19 views
Skip to first unread message

建镔 陈

unread,
Jan 15, 2011, 10:58:53 PM1/15/11
to onering
现在的onering还需要提供各种语言的binding以支持其他语言来编写App Backend。
如果onering能够顺利发展起来,各种语言的binding的维护将是一块很大的工作量。

是否可以考虑只提供JS的binding,让更多的事情由onering.js来做。就像现在onering.js提供的menu接口一样。让
onering.js提供更多的系统API,甚至包括UDP通信能力等等。
原先由App Backend负责的业务逻辑部分转由JS负责。
可以考虑融合node.js的思想,App Backend 部分也由JS实现。(或者有其他更好的方式)

这样的好处在于不用再提供各种语言的binding,减少不少的工作量(即使这部分工作量往往由自愿者承担)。也避免了参差不齐的binding质量造
成的负面影响。

同时,开发者的门槛也变低了。从原先至少需要一门X语言+JS+HTML+CSS到现在只要JS+HTML+CSS,更加纯粹地运用web技术来开发桌
面应用。可以吸引更多的开发者。

onering也可以开发一套打包方式。类似于py2exe 和 py2app。

我不知道我是否表达清楚了...有疑问的话我们一起讨论一下吧。

lee Alexander

unread,
Jan 15, 2011, 11:41:25 PM1/15/11
to onering...@googlegroups.com
两年前参加过电信的手机wedget引擎的项目,是一个电子科大的教授牵头搞的,思路和你的差不多,提供一套js的API,将js,html,这些打包成应用程序。思路是不错拉,不过js没有Python好玩


--
您收到此邮件是因为您订阅了 Google 网上论坛的“onering”论坛。
要向此网上论坛发帖,请发送电子邮件至 onering...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 onering-deskt...@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/onering-desktop?hl=zh-CN 访问此网上论坛。




--
Alexander.Li
+86 15308006505
mail: superp...@gmail.com/superp...@hotmail.com
site:http://alexander-lee.cnblogs.com

张沈鹏

unread,
Jan 16, 2011, 12:39:52 PM1/16/11
to onering...@googlegroups.com
我是电子科大的

我有同学毕业以后就去搞手机上的这个了

貌似还是手机操作系统呢

不过原理类似了

不过我当时表示不看好

因为感觉是玩不过android的

lee Alexander

unread,
Jan 16, 2011, 8:07:41 PM1/16/11
to onering...@googlegroups.com
确实不看好,当时电信打算上这个的原因是当时CDMA智能机还没有这么普遍,这东西非智能机只要厂商愿意也能集成进去,而电信集团采购的量大,厂商能够接受这样的定制,且这种方式容易集成电信的各种现有业务。但是android的井喷让CDMA智能机的低端下延到了1000元以下这个区间(比如华为c8500),所以相比android来说就杯具了,不过貌似还是在搞,因为毕竟电信还有大量的CDMA非智能机存在而这个平台在android上还是可以共存的。不过最终智能机才是王道。


--
您收到此邮件是因为您订阅了 Google 网上论坛的“onering”论坛。
要向此网上论坛发帖,请发送电子邮件至 onering...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 onering-deskt...@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/onering-desktop?hl=zh-CN 访问此网上论坛。

Qiangning Hong

unread,
Jan 16, 2011, 10:47:51 PM1/16/11
to onering...@googlegroups.com
2011/1/16 建镔 陈 <the11...@gmail.com>
现在的onering还需要提供各种语言的binding以支持其他语言来编写App Backend。
如果onering能够顺利发展起来,各种语言的binding的维护将是一块很大的工作量。

因为onering binding需要实现的接口异常简单,因此binding的工作量应该不大。例如目前 python binding的代码一共只有48行python和168行C(含注释和空行)。当然由于Python有WSGI规范,简化了不少事情。

是否可以考虑只提供JS的binding,让更多的事情由onering.js来做。就像现在onering.js提供的menu接口一样。让
onering.js提供更多的系统API,甚至包括UDP通信能力等等。
原先由App Backend负责的业务逻辑部分转由JS负责。
可以考虑融合node.js的思想,App Backend 部分也由JS实现。(或者有其他更好的方式)

对于功能集相对小的移动设备而言,这种思路可行,比如 PhoneGap http://www.phonegap.com/ 应该就是在走这条路。

但对于桌面环境而言,由于系统API过于庞大和多变,把所有的API都用js包装起来无论是工作量还是技术上都不太现实。我觉得还是用现在的方法,即 onering 只提供最核心的 API 封装,其余部分交给app完成,两者通过类ajax和pubsub接口实现通讯,最终业务逻辑还是在页面的js来做。

没有研究过node.js,但如果node.js支持C API调用的话,完全可以用它做一个onering的binding,就可以用js写backend了。
 

这样的好处在于不用再提供各种语言的binding,减少不少的工作量(即使这部分工作量往往由自愿者承担)。也避免了参差不齐的binding质量造
成的负面影响。

同时,开发者的门槛也变低了。从原先至少需要一门X语言+JS+HTML+CSS到现在只要JS+HTML+CSS,更加纯粹地运用web技术来开发桌
面应用。可以吸引更多的开发者。

onering也可以开发一套打包方式。类似于py2exe 和 py2app。

我不知道我是否表达清楚了...有疑问的话我们一起讨论一下吧。

我目前更想把onering做成一个生态系统,由一个小的core,和一大群可选的外围app plugin组成。用户可以根据自己的需求挑选现成的app组合,然后写一些js就可以完成任务。如果现成的app都不行,可以用onering支持的任何一种语言binding写自己的app。


--
洪强宁 Qiangning Hong
http://www.douban.com/people/hongqn/
twitter: @hongqn
Reply all
Reply to author
Forward
0 new messages