Leaning Technologies公司于今天发布了一款使用用于Web应用集成开发的C++编译器duetto(包括前端开发和后台开发)。duetto目前是一款免费的开源软件(Github地址),不久之后也将提供闭源许可的商业版本。
无论在未来的消费者应用领域还是商业应用领域,基于浏览器的应用无疑会扮演者重要的角色。与传统应用相比,web应用有一些明显的优势。比如说原生地支持云计算和协作式服务,同时也很便携。这要特别感谢浏览器厂商对于Web兼容标准越来越多的关注和做出的贡献。现代的Web标准通常符合HTML5,非常接近原生语言,并且这个和原生语言的差距会随着时间越来越缩小。
为了弥补Javascript的缺陷和不足,人们开发了很多工具来用于大规模Web应用前端的开发。比如CoffeeScript,Microsoft TypeScript,Google Dart,Google GWT等等。最近还发布了可以将LLVM字节码编译成Javascrpt的工具emscripten。由于LLVM是C++编写的,因此emscripten也就提供了C++到Javascript的转化功能。在服务器端编程方面,比较常用的语言有PHP,Python和Ruby等。由于没有使用Javascript,后台的代码库是分离独立的。这导致了很多问题:比如代码冗余(通常会引入新的Bug),需要手动处理RPC等等,也就占据了本该用于正常开发的时间。针对这个问题,现在有一个较为流行的解决方案,就是使用node.js在服务器端用Javascript进行编程。
我们发布的用于Web开发的C++编译器duetto现在已经面向公众开放下载了。我们的方案集成并超越了现有工具的特性,并且支持使用C++同时进行前端和后台的开发,并且将前端代码编译为JavaScript,将后台代码变异为机器码。
Duetto通过允许编程人员做如下的事情,来组合emscripten和node.js的优势:
另外,duetto提供一些非常好的特性:
你对duetto感兴趣么?你现在可以尝试它。我们刚刚将整个技术作为一个FOSS项目发布,点击这里获取。此外,我们还坚持了在四月份的第一次公布后的六个月内发布的承诺。
该编译器本身是派生字LLVM/clang,并以和LLVM/clang相同的许可证(UI/NCSA)发布,并且我们计划向上游贡献普遍有用的代码。相关的头文件和库文件将会以GPLv2+标准发布。我们将同时提供闭源收费的友好授权的组件。下面是各种相关库在Github的链接:
正式发布的tar包不久后将可以在项目的Launchpad页面获取: https://launchpad.net/duetto。Launchpad也将是我们的bug报告系统,所以请您使用它来报告您发现的任何的问题。我们也将使用PPA来提供duetto的Ubuntu linux版本。我们也计划为Mac OS X和Windows提供二进制的版本,但我们仍然致力于自动化构建这些版本。
请在https://launchpad.net/~duetto-users订阅我们的Launchpad小组/邮件列表,来讨论Bugs、期望的特性以及可用性问题。你也可以在twitter (@leaningtech)上关注我们或者访问我们的网站来获取duetto相关的新闻。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务