Skip to content

Latest commit

 

History

History
135 lines (72 loc) · 11.5 KB

File metadata and controls

135 lines (72 loc) · 11.5 KB

零、序言

正如其标题(JavaFX 8 Essentials所示,本书是一本实用的书,为您提供了一套强大的基本技能,将引导您变得足够自信,以快速构建高性能 JavaFX 8 客户端应用。这些应用通过硬件加速的图形利用了现代 GPU,同时为客户提供了引人注目、复杂且奇特的富客户端 GUI,这将给他们留下深刻印象。

学习 JavaFX 8 essentials 是创建最重要的在任何平台上运行的应用的第一步,从台式机、Web、移动设备、平板电脑嵌入式设备,如ArduinoRaspberry Pi和多核开发。遵循 Java 的编写一次,在任何地方运行范例,JavaFX 也保留了相同的功能。因为 JavaFX8 完全是用 Java 语言从头开始编写的,所以您会感到宾至如归。

大部分章节都是快节奏的指南,将帮助您在 Java GUI 编程、利用 JavaFX8 以及在任何平台上部署和运行方面取得领先。

在阅读本书的示例时,您会发现代码是在 Java8(是的,JavaSE8)上使用 JavaFX8 编写的,因此新的 API 和语言增强功能将帮助您成为一名更高效的开发人员。话虽如此,探索所有新的 Java8 功能将非常方便(我鼓励您这样做)。

最后,同样重要的是,您将能够使用 JavaFX 开发与 Leap motion 设备交互的惊人的非接触式交互式运动应用。

这本书涵盖的内容

第一章JavaFX8 入门是对 JavaFX8 的介绍。它讨论了 javafx8 作为一种技术,为什么您应该关注它,它的历史,核心特性,以及在哪里可以使用它。

因此,是时候准备好使用正确的工具并完成必要的步骤来安装 JavaFX8 及其支持的开发工具了。在本章中了解可提高读者工作效率的其他工具。最后,我们将用一个简单的 Hello JavaFX 应用来结束本章,以验证我们是否走上了正确的道路。

第 2 章JavaFX 8 Essentials 和创建自定义 UI讨论了没有什么比接受复杂建议作为问题解决方案更令人沮丧的了。正因为如此,我总是把重点放在要点上。为了在 JavaFX 场景中渲染图形,您需要一个基本的应用、场景、画布、形状、文本、控件和颜色。

此外,您还将了解 JavaFX8 的基本应用结构,这些结构可以作为任何未来应用的主干。最后,我们还将探讨一些 JavaSE8 特性(如 Lambda、Streams、JavaFX 属性等),以帮助提高代码可读性、质量和生产率。

在获得了创建结构化 JavaFX8 应用的实践经验之后,如果您可以在不改变其功能的情况下更改应用的 UI,那不是很好吗?在本章中,您将学习主题化以及如何通过应用各种主题(外观)和 JavaFXCSS 样式的基本原理来定制应用。

您将使用场景生成器以图形方式创建和定义 UI 屏幕,并将其保存为 JavaFXML 格式的文件。最后,您将了解如何创建自定义控件。

第 3 章开发 JavaFX 桌面和 Web 应用介绍了如何开发引人注目的桌面和 Web 应用,该应用利用多核硬件加速 GPU,以提供具有惊人外观的高性能基于 UI 的应用。

由于 JavaFX 完全是用 Java 从头开始编写的,一些 JavaSE8 内置的核心库将用于为我们的应用提供动力。此外,您还将学习如何将应用打包为要启动和分发的独立应用。

此外,我们还将介绍 JavaFX8 所使用的任何 web 应用中的基本核心 web API,如javafx.scene.web.WebEnginejavafx.scene.web.WebView

我们还将讨论 JavaFX 和 HTML5 之间的关系,这很重要,因为它们相互补充。JavaFX 的富客户端 API,加上 HTML5 丰富的 web 内容,创造了一种类似于 RIA web 应用的用户体验,具有本机桌面软件的特点。

第 4 章为 Android开发 JavaFX 应用,随着非 pc 客户端的增长,手机和平板电脑正在赢得市场份额。JavaFX8 可以为 Web 和桌面提供富客户端应用。如果编写 JavaFX 应用,请确保希望它在尽可能多的设备上运行。本章将为您提供有关 SDK 的基本实践经验和知识,这些 SDK 允许用户为 Android 手机创建本机应用。

第 5 章为 iOS开发 JavaFX 应用是对上一章的扩展。如果您为 Android 编写 JavaFX 应用,请确保希望它在尽可能多的 iOS 设备上运行。本章将为您提供有关 SDK 的基本实践经验和知识,使您能够为 Apple iOS 创建本机应用。

第 6 章在 Raspberry Pi上运行 JavaFX 应用,将为您提供开发在信用卡大小的计算机 Raspberry Pi 板上运行的 JavaFX 8 应用所需的所有技能和知识。随着物联网(IoT)成为近来的热门话题。Java 是为物联网而设计的。

第 7 章用 JavaFX监控 Arduino,涵盖了另一种物联网。Arduino 是一个开源电子产品原型平台,提供低成本原型平台,以支持“自己动手”概念和制造商运动。

本章将为您提供所有必要的技能和知识,以便快速使用 JavaFX 和 Arduino 板开发桌面应用,以监控来自真实世界的数据或控制真实设备。

第 8 章互动跳跃动作应用与 JavaFX将让您了解手势识别。您将发现一个很棒的小工具,Leap Motion 设备,它将允许一种无需触摸的方法来开发增强的 JavaFX 应用。

机器用户输入界面越来越不以鼠标为中心,支持多点触控甚至无触控输入。如今,手势是人类与机器自然交流的方式之一。

附录成为 JavaFX 大师,将让您找到许多有用的链接和参考资料,帮助您进一步了解 JavaFX 的所有内容。

在本章的最后,请务必查看今天生产中使用 JavaFX 的许多框架、库和项目。

这本书你需要什么

本书中给出的示例使用了编写本书时最新发布的 JavaSE8,即 JavaSE8 更新 45JDK 版。从 JavaSE8 开始,它与我们在整本书中使用的 JavaFX8 预先捆绑在一起。此外,NetBeans IDE 8.0.2 版用作集成开发环境,JavaFX 设计器工具 Glion Scene Builder 8 版用作通用软件和工具。

由于每一章的性质都是独特的,需要特定的软件和硬件才能正常运行 JavaFX8 示例,因此本书提供了所有必需的软件、工具和硬件,并详细说明了如何安装和配置它们,以便顺利运行 JavaFX8 示例。

这本书是给谁的

如果您是 Java 开发人员、经验丰富的 Java Swing、Flash/Flex、SWT 或 web 开发人员,希望将客户端应用提升到下一个层次,那么本书适合您。这本书将让你走上正确的道路,开始创建一个奇特的、可定制的、引人注目的用户界面。

此外,您还将学习如何快速创建在任何平台上运行的高性能富客户端应用,无论是桌面、web、移动还是嵌入式系统,如 Raspberry Pi、Arduino,以及基于无触摸 Leap Motion 的应用。

这本书是一本快节奏的指南,它将帮助您在利用 JavaFX8、在任何平台上部署和运行的 JavaGUI 编程方面取得领先。

公约

在这本书中,你会发现许多不同类型的文本可以区分不同类型的信息。下面是这些风格的一些例子,并解释了它们的含义。

文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 URL、用户输入和 Twitter 句柄如下所示:“我们可以通过使用include指令来包含其他上下文。”

代码块设置如下:

btn.setOnAction(new EventHandler<ActionEvent>() {
  @Override
  public void handle(ActionEvent event) {
    message.setText("Hello World! JavaFX style :)");
  }
});

任何命令行输入或输出的编写方式如下:

$ gradle build

新术语重要词语以粗体显示。例如,您在屏幕上、菜单或对话框中看到的文字会出现在如下文本中:“单击安装开始安装”。

警告或重要注释显示在这样的框中。

提示

提示和技巧如下所示。

读者反馈

我们欢迎读者的反馈。让我们知道你对这本书的看法你喜欢或可能不喜欢什么。读者反馈对于我们开发您真正从中获益最多的标题非常重要。

要向我们发送一般反馈,只需向<[feedback@packtpub.com](mailto:feedback@packtpub.com)>发送电子邮件,并通过邮件主题提及书名即可。

如果您对某个主题有专业知识,并且您有兴趣撰写或贡献一本书,请参阅我们的作者指南,网址为www.packtpub.com/authors

客户支持

既然您是一本 Packt 图书的骄傲拥有者,我们有很多东西可以帮助您从购买中获得最大收益。

下载示例代码

您可以下载您在账户购买的所有 Packt 书籍的示例代码文件 http://www.packtpub.com 。如果您在其他地方购买了本书,您可以访问http://www.packtpub.com/support 并注册,将文件直接通过电子邮件发送给您。

下载本书彩色图片

我们还为您提供了一个 PDF 文件,其中包含本书中使用的屏幕截图/图表的彩色图像。彩色图像将帮助您更好地了解输出中的更改。您可以从下载此文件 http://www.packtpub.com/sites/default/files/downloads/8026OS_ColorImages.pdf

勘误表

虽然我们已尽一切努力确保内容的准确性,但错误确实会发生。如果您在我们的一本书中发现错误,可能是文本或代码中的错误,如果您能向我们报告,我们将不胜感激。通过这样做,您可以使其他读者免于沮丧,并帮助我们改进本书的后续版本。如果您发现任何错误,请访问进行报告 http://www.packtpub.com/submit-errata ,选择您的书籍,点击勘误表提交表链接,输入您勘误表的详细信息。一旦您的勘误表得到验证,您的提交将被接受,勘误表将上传到我们的网站上,或添加到该标题勘误表部分的任何现有勘误表列表中。通过从中选择您的标题,可以查看任何现有勘误表 http://www.packtpub.com/support

盗版

在互联网上盗版版权材料是所有媒体的一个持续问题。在 Packt,我们非常重视版权和许可证的保护。如果您在互联网上发现我们作品的任何形式的非法复制品,请立即向我们提供地址或网站名称,以便我们采取补救措施。

请致电<[copyright@packtpub.com](mailto:copyright@packtpub.com)>与我们联系,并提供可疑盗版材料的链接。

我们感谢您在保护我们的作者方面的帮助,以及我们为您带来有价值内容的能力。

问题

如果您对本书的任何方面有疑问,请致电<[questions@packtpub.com](mailto:questions@packtpub.com)>与我们联系,我们将尽力解决。