用“Web的思想”做PC客户端

一直在想,用HTML搭建前端页面这么方便,而且效果这么炫,为什么在PC端的软件要如此麻烦呢?就连C#也是,更何况C++了。 尽管C++有DirectUI这样优秀的图形库,但是开发起来仍然非常吃力。C#的WPF虽然工具链完善,但是要熟悉仍需要一段时间。而HTML则是大多数人能够容易入门的语言,用Web的思想来搭建PC端,移动端的客户端应该会更加容易。(当然,速度比Native语言肯定是有点差别的) 刚刚在CSDN上看到了一篇”豌豆荚2.0重构“的文章,在重构时,豌豆夹团队同样选择了Web的方式作为客户端前端,后端逻辑则使用C++。 所谓基于Web的方式,就是在整个应用内部,绝大部分的UI设计和通信模式都和Web应用类似,用HTML以及CSS、JS来绘制界面,通过Ajax等调用来获取数据。 在豌豆荚的实现中,豌豆荚团队使用了Chromium中抽取了一套UI框架定义的Webkit和C++语言作为前后端的实现基础,用Protocal Buffer来描述通信协议的数据。 [caption id="attachment_852" align="aligncenter" width="593" caption="豌豆夹2.0技术架构图"]豌豆夹2.0技术架构图[/caption] 这让我想到了最近的工作。我们同样使用了HTML+CSS+JS来构建前端页面,后端采用Ojbect-C来处理大规模的逻辑计算。通过我们内嵌的Webkit容器,将命令传递给后端来进行处理。 看到豌豆夹使用了豆瓣的开源框架OneRingOneRing是一个跨平台的桌面应用框架。类似的开源还有:thrift 准备研究一下...
原文地址:https://www.cnblogs.com/trying/p/2863835.html