跨平台桌面应用开发:基于Electron与NW.js - (EPUB全文下载)

文件大小:0.36 mb。
文件格式:epub 格式。
书籍内容:

跨平台桌面应用开发:基于Electron与NW.js
第1部分 欢迎来到 Node.js桌面应用开发的世界
第2部分 深度剖析
第3部分 精通Node.js桌面应用开发
第4部分 准备发布
附录A 安装Node.js
第1部分 欢迎来到 Node.js桌面应用开发的世界
说到使用 Node.js 构建桌面应用就不得不提这两个框架:NW.js 和 Electron。本书第1章将为你介绍这两个框架,以及它们相比其他框架的优势在哪里,还会介绍如何使用 NW.js 和 Electron 快速构建一个 Hello World 应用,然后介绍已有的使用这两个框架构建的应用有哪些。
第2章通过构建一个文件浏览器应用,介绍如何使用这两个框架。我们会从头开始构建这个应用,并逐步添加更多的特性,构建过程中会介绍 NW.js 和 Electron在实现这个应用上的区别。
第3章我们会继续为这个文件浏览器应用添加更多的特性,比如,搜索文件和打开文件。随后在第4章我们会完成这个应用并针对 Mac OS、Windows 和 Linux 构建应用的可执行版本。读完第1部分后,你就会对 NW.js 和 Electron 有所了解,并可以将你学到的知识用于实际应用的开发中。
1 Electron和NW.js入门
本章要点
■ 介绍为何 Node.js 桌面应用近期热度如此之高
■ Node.js 桌面应用开发框架 Electron 和 NW.js 一览
■ 使用 Node.js 以及这两个框架构建跨平台桌面应用
■ 介绍两个框架的异同
■ 介绍市面上使用 Electron 和 NW.js 开发的应用
Node.js 是一种编程框架,它可以让开发者使用 JavaScript 来构建服务端应用。自 2009 年诞生以来,它衍生出许多流行的 Web 框架,比如,Express 和 Hapi,还有像 Meteor 和 Sails 这样的构建实时应用的 Web 框架。它还可以让开发者使用像Facebook 的 React 这样的工具开发复杂的 Web 应用,React 是近几年在 Web 开发领域影响非常大的 UI 库。对 Node.js 的第一印象固然是它是用于 Web 应用开发的,然而事实却是它远不止于此。
Node.js 还可以用来构建跨平台的桌面应用,而且也许你现在就在使用它构建出来的应用。如果你工作的时候用的是 Slack,编辑代码的时候使用的是 GitHub的 Atom 编辑器,或者看电影的时候用的是 Popcorn Time,那么你实际上就在使用Node.js 开发的桌面应用。越来越多的开发者,特别是没有桌面应用开发经验的Web开发者,开始尝试使用 Node.js 来开发桌面应用——甚至连微软都已经在用 Node.js开发它的IDE (Visual Studio Code)了。
在 Node.js 的生态中,有两个主流的桌面应用开发框架: NW.js 和 Electron。这两者都得到了大公司的支持( NW.js 背靠英特尔和 Gnor Tech,Electron 则背靠GitHub),它们都拥有庞大的社区,而且在实现支持构建桌面应用方面都采用类似的解决方案。也许你会为它们有众多共同点而感到惊讶——实际上,它们有过一段共同的历史,这部分会在后续章节中进行介绍。现在,让我们来看看使用 Node.js 开发桌面应用之所以这么流行其背后的原因到底是什么,以及它们会在你工作的哪些方面起到帮助。
1.1 为什么要用Node.js构建桌面应用
要回答这个问题,我们得先来看看软件在过去一代进程中发生了怎样的变化以及它们将会如何发展下去。
1.1.1 桌面应用到Web应用,再回到桌面应用
2000年年初,绝大多数软件都是以桌面应用的形式存在的,它们被放在一个包装盒里,通过像百思买这样的商店进行售卖。你还得看它对系统的要求,确保它兼容你使用(绝大部分人用 Windows)的操作系统(OS)。然后,从包装盒中取出 CD光盘,并将它安装到你的计算机中。
随着时代的发展,改变也渐渐开始了:Web浏览器的崛起,网速的提高,网络访问便捷性的提升,以及软件的开源思潮,都对软件的构建和分发方式产生了巨大的影响。AJAX 的优势,让软件进入了一个以Web应用进行分发的新时代。这类应用不需要下载任何东西到你的计算机中,而且还可以在不同的操作系统中运行。像谷歌和脸书这样的公司在业界激发了Web应用作为强大平台的崛起,而且随着人们在线免费使用这些应用成为习惯之后,迫使传统软件服务商也开始提供线上版本。
看似Web应用已经获胜,然而随着移动设备的兴起,引领了针对苹果的 iPhone手机和 Android 手机开发的原生应用的潮流。业界又发生了一轮改变,开发者们发现他们需要让他们的产品也支持这样的设备。
反观十多年的软件开发进程,你会发现业界发生了巨变,作为开发者,我们渐渐觉得支持多计算平台的时代正在慢慢来临:桌面系统、Web浏览器、移动设备,甚至更多。我们正处于多平台计算的时代。
那么桌面应用呢?桌面应用已经成为我们在日常生活中使用的计算平台之一。自21世纪以来,发生了很多变化。那时,微软的 Windows 系统是桌面计算机操作系统领域绝对的霸主,后来苹果公司的操作系统以它的创新性和专业性削弱了Windows 的统治力。不仅如此,在 2016 年第一季度,谷歌的 Chromebook 成为全美最畅销的笔记本电脑。或许属于 Linux 系统的时代也终将会到来。关键是:现如今,你已经不能开发只支持 Windows 系统的应用了——还得让你的应用支持 Mac OS 和Linux。
跨平台的桌面应用并不是什么新鲜的东西;像 Mono 和 Qt 这样的框架早就可以让你开发出支持主流操作系统的应用了。通常,有像C、C++,以及 C# 这样编程语言经验的开发者会选择这样的框架来开发软件,其他像Web开发者,面对这样的框架时则需要新学一门语言,可见开发桌面应用对他们来说多少有些门槛。
NW.j ............

以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » 跨平台桌面应用开发:基于Electron与NW.js - (EPUB全文下载)