零、前言

在这本书中,您将学习如何使用微软提供的 Xamarin、。net 5 和 Azure 云服务的工具集,为包括 iOS、Android 和 UWP 在内的多种平台设计和开发高度吸引人的、可维护的和健壮的移动应用。 这本书不仅提供了实践示例和演练,而且还提供了关于云计算和移动架构模式的有用见解。 您还将了解使用最新的工具和平台来管理您的移动项目的生命周期的最有效的方法,现代 DevOps 生态系统提供。

这本书是写给谁的

本书是为希望开发跨平台移动应用的移动开发人员编写的。 需要有 c#编程经验。 需要对核心元素和使用。net 开发跨平台应用有一定的了解和理解。

这本书的内容

第一章入门。net 5.0,简要介绍。net Core,同时解释。net 基础设施的不同层。 可以与。net 一起使用的语言、运行时和扩展将被讨论和分析。

第二章,Xamarin, Mono 和。net Standard 的定义,阐述了。net Core 和 Xamarin 之间的关系。 你将了解 Xamarin 源代码是如何执行 MonoTouch 在 iOS 和 Mono 运行时在 Android。

第三章使用通用 Windows 平台开发,讨论了允许 UWP 应用在 Windows 10 生态系统中可移植的组件,以及它们如何与。net Core 相关联。

第四章使用 Xamarin 开发移动应用,讲解 Xamarin 和 Xamarin。 形成开发策略,我们将创建一个 Xamarin。 表单应用,我们将在本书的其余部分进行开发。 我们还将讨论可能对我们有所帮助的架构模型。

第五章,UI 开发 Xamarin 的,需要看特定的 UI 模式,允许开发人员和用户体验设计师来用户期望之间的妥协和产品要求,以创建一个平台和跨平台产品一致的用户体验。

第六章Xamarin 定制 表格,详细介绍了 Xamarin 的定制步骤和流程。 表单不影响性能或用户体验。 将分析的一些特性包括效果、行为、扩展和自定义渲染器。

第七章,Azure 服务对于移动应用,探讨了事实有许多服务作为服务(SaaS)、平台(PaaS)或基础设施(IaaS),如通知中心,认知服务,和蔚蓝的功能, 这可以改变用户对您的应用的印象,而不需要额外的开发时间。 本章将快速概述在开发。net Core 应用时使用其中一些服务。

第八章,创建一个数据存储与宇宙 DB*,解释了宇宙范式的数据库提供了一种多模型和多 API,允许应用时使用多个数据模型存储应用数据和最合适的 API 的应用,如 SQL, JavaScript,小鬼,MongoDB。 在本章中,我们将为应用创建数据存储并实现数据访问模块。

第 9 章创建微服务 Azure App Services,介绍了 Azure App Service 的基础知识,我们将使用 ASP 为我们的应用创建一个简单的、面向数据的后端。 通过 Azure Active Directory 提供的身份验证。 其他实现将包括离线同步和推送通知。

第十章,使用。NET Core Azure Serverless,显示了如何将 Azure 功能合并到我们的基础设施来处理数据在不同的触发,以及如何整合 Azure 功能与逻辑应用将被用作一个处理单元在我们的设置。

第 11 章流体应用与异步模式,解释了在开发 Xamarin 应用与 ASP.NET Core 应用,任务的框架和响应式模块都可以帮助分发执行线程,并创建一个平滑和不间断的执行流。 本章将介绍与这些模块相关的一些模式,并将它们应用于应用的各个部分。

第十二章,管理应用数据,解释说,为了避免冲突和数据同步问题,开发人员必须要勤奋有关的程序实现根据手头的类型的数据。 本章将讨论使用 SQLite 和 Entity Framework Core 等产品可能的数据同步和离线存储场景,以及 Azure App Service 提供的开箱即开的离线支持。

第十三章,参与用户通知和图形 API*,简要解释了通知和图形 API 可用于提高用户参与度利用推送通知和图形 API。 我们将使用 Azure notification hub 为跨平台应用创建一个通知实现。 我们还将为我们的应用会话创建所谓的活动条目,以便我们可以创建一个可在多个平台上访问的时间轴。

第 14 章,Azure DevOps 和 Visual Studio 应用中心,展示了如何使用 Visual Studio 团队服务和应用中心建立一个完整的、自动化的管道 Xamarin 的应用将连接源存储库提交最后的商店。

第 15 章,应用遥测与应用见解,观点解释了应用是一个伟大的收集候选人 Xamarin 的遥测数据使用 Azure 托管 web 服务基础架构的应用,因为它内在与 Azure 模块的集成, 以及 App Center 遥测的连续导出功能。

第 16 章,自动化测试*,讨论了如何创建单元和编码 UI 测试,以及围绕它们的架构模式。 数据驱动的单元测试、模拟和 Xamarin UI 测试是将要讨论的一些概念。

第 17 章部署 Azure 模块,演示了如何配置用于 Azure web 服务实现的 ARM 模板, 以及我们之前使用的其他服务(比如 Cosmos DB 和 Notification hub),这样我们就可以使用 Visual Studio Team services 构建和发布管道来创建部署。 在本章中,我们主要关注的是将配置值引入模板,并为创建登台环境做好准备。

第 18 章CI/CD with Azure DevOps,解释了开发者如何使用 Visual Studio Team Services 提供的工具集为构建、测试和部署创建完全自动化的模板。 在本章中,我们将为 Xamarin 建立与 Azure 部署管道一致的构建和发布管道。

为了最大限度地了解这本书

这本书主要针对的是。net 开发人员,他们对 Xamarin 和。net 的使用经验很少。 与云基础设施相关的部分大量使用 Azure 云基础设施中的各种服务。 然而,熟悉 Azure 门户的基本管理概念就足够学习更高级的主题了。

对于代码示例,整本书都结合使用了 Windows 和 macOS 开发环境。 使用示例的理想设置是将 macOS 与 Windows 10 虚拟机结合使用。 这样,就可以使用来自这两个环境的示例。

实现代码遍历的 IDE 选择是 Windows 上的 Visual Studio 2019 和 macOS 上的 Visual Studio for Mac。 支持这两个平台的 Visual Studio Code 可以用来创建脚本和 Python 示例。

如果你正在使用这本书的数字版本,我们建议你自己输入代码或通过 GitHub 存储库访问代码(链接在下一节中)。 这样做将帮助您避免任何与复制和粘贴代码相关的潜在错误。

*# 下载示例代码文件

你可以从 GitHub 上的https://github.com/PacktPublishing/Mobile-Development-with-.NET-Second-Edition下载这本书的示例代码文件。 如果代码有更新,它将在现有的 GitHub 存储库中更新。

我们还可以在https://github.com/PacktPublishing/中找到丰富的图书和视频目录中的其他代码包。 检查出来!

使用的约定

本书中使用了许多文本约定。

Code in text:表示文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄。 下面是一个例子:“IObserverIObservable接口,它们构成了可观察的和所谓的反应模式的基础。”

一段代码设置如下:

namespace FirstXamarinFormsApplication
{
    public partial class MainPage : ContentPage
    {
        InitializeComponent();
        BindingContext = new MainPageViewModel();
    }
}

当我们希望提请您注意代码块的特定部分时,相关的行或项以粗体显示:

public App()
{
    InitializeComponent();
    MainPage = NavigationPage(new ListItemView())
}

任何命令行输入或输出都写如下:

$ docker run -p 8000:80 netcore-usersapi

粗体:表示新词条、重要词汇或在屏幕上看到的词汇。 例如,菜单或对话框中的单词会像这样出现在文本中。 下面是一个例子:“ALM 过程和版本控制选项都可以在项目设置的Advanced部分中使用。”

小贴士或重要提示

出现这样的。

联系

我们欢迎读者的反馈。

一般反馈:如果您对本书的任何方面有疑问,请在邮件主题中提及书名,并发送电子邮件至customercare@packtpub.com

Errata:尽管我们已尽一切努力确保内容的准确性,但错误还是会发生。 如果您在这本书中发现了错误,请向我们报告,我们将不胜感激。 请访问www.packtpub.com/support/errata,选择您的图书,点击勘误表提交链接,并输入详细信息。

盗版:如果您在互联网上发现我们的作品以任何形式的非法拷贝,请提供我们的位置地址或网址。 请通过copyright@packt.com与我们联系,并附上资料链接。

如果你有兴趣成为一名作家:如果你有一个你擅长的话题,并且你有兴趣写作或写一本书,请访问authors.packtpub.com

评论

请留下评论。 一旦你阅读和使用这本书,为什么不在你购买它的网站上留下评论? 潜在的读者可以看到并使用您的公正意见来做出购买决定,我们在 Packt 可以理解您对我们的产品的看法,我们的作者可以看到您对他们的书的反馈。 谢谢你!

更多关于 packt.com 的信息,请访问packt.com。****