选择移动开发框架

开发人员可以通过使用跨平台方法的特定框架和模式,使用客户端技术自行构建移动应用程序。 根据他们的决策因素,开发人员可以构建:

  • 使用 Objective C 和 Java 等语言的本机单平台应用程序
  • 使用 Xamarin、.NET 和 C 的跨平台应用程序#
  • 使用 Cordova 及其变体的混合应用程序

本机平台

生成本机应用程序需要特定于平台的编程语言、SDK、开发环境以及 OS 供应商提供的其他工具。

Ios

iOS 由 Apple 创建和开发,用于在 Apple 设备(即 iPhone 和 iPad)上生成应用。

  • 编程语言:Objective-C、Swift
  • IDE:Xcode
  • SDK:iOS SDK

Android

Android 由 Google 和世界上最受欢迎的操作系统设计,用于构建可在各种智能手机和平板电脑上运行的应用程序。

  • 编程语言:Java、Kotlin
  • IDE:Android Studio 和 Android 开发人员工具
  • SDK:Android SDK

Windows

  • 编程语言:C#
  • IDE:Visual Studio、Visual Studio Code
  • SDK:Windows SDK

本机平台专业人员

  • 良好的用户体验
  • 具有高性能且能够与本机库交互的响应式应用程序
  • 高度安全的应用程序

本机平台缺点

  • 应用程序仅在一个平台上运行
  • 构建应用程序的开发人员资源密集型和成本更高
  • 减少代码重用

跨平台和混合应用程序

跨平台应用程序使你能够编写本机移动应用程序一次,共享代码,并在 iOS、Android 和 Windows 上运行它们。

Xamarin

Xamarin 归 Microsoft 所有,用于在 C# 中生成可靠的跨平台移动应用程序。 Xamarin 具有跨许多平台(例如 iOS、Android 和 Windows)的类库和运行时。 它还编译提供高性能的本机 (非解释) 应用程序。 Xamarin 结合了本机平台的所有功能,并添加了自己的许多强大功能。

  • 编程语言:C#
  • IDE:Windows 或 Mac 上的 Visual Studio

React Native

React Native于 2015 年由 Facebook 发布,是一个开源 JavaScript 框架,用于编写真实的本机呈现适用于 iOS 和 Android 的移动应用程序。 它基于React、Facebook的 JavaScript 库,用于生成用户界面。 它不是以浏览器为目标,而是面向移动平台。 React Native使用本机组件而不是 Web 组件作为构建基块。

  • 编程语言:JavaScript
  • IDE:Visual Studio Code

统一

Unity 是一个针对创建游戏进行优化的引擎。 你可以使用 C# 为 Windows、iOS、Android 和 Xbox 等平台创建高质量的 2D 或 3D 应用程序。

科尔多瓦

Cordova 允许使用适用于 Apache Cordova 的 Visual Studio Tools 生成混合应用程序,或者将Visual Studio Code与 Cordova 的扩展配合使用。 使用混合方法,可以与网站共享组件,并通过基于 Cordova 的托管 Web 应用程序方法重复使用基于 Web 服务器的应用程序。

跨平台专业人员

  • 通过为多个平台创建一个代码库来提高代码可用性
  • 迎合跨多个平台的更多受众
  • 开发时间显著缩短
  • 易于启动和更新

跨平台缺点

  • 性能降低
  • 缺乏灵活性
  • 每个平台都有一组独特的特性和功能,使本机应用程序更具创意
  • UI 设计时间增加
  • 工具限制