移动应用程序开发

One of the most popular forms of coding in the last decade has been the creation of apps, or applications, that run on mobile devices.

在过去的十年中,最流行的编码形式之一是创建在移动设备上运行的应用程序。

Today there are two main categories of mobile devices: those that run iOS and those that run Android.

如今,移动设备主要分为两类:运行iOS的设备和运行Android的设备。

移动操作系统 (Mobile operating systems) iOS(iPhone,iPad,Apple TV) (iOS (iPhone, iPad, Apple TV))

iOS is a mobile operating system developed and distributed by Apple Inc. It was originally released in 2007 with the iPhone, and today runs on many other devices including the iPod Touch, iPad, and Apple TV.

iOS是由Apple Inc.开发和发行的移动操作系统。它最初于2007年与iPhone一起发布,如今可在许多其他设备上运行,包括iPod Touch,iPad和Apple TV。

iOS shares similar roots to the macOS operating system used in modern Apple computers.

iOS与现代Apple计算机中使用的macOS操作系统具有相似的根源。

安卓系统 (Android)

Android is an open source, Linux-based mobile operating system. Android was developed by the Open Handset Alliance, which was lead by Google and featured contributions from many other companies.

Android是基于Linux的开放源代码移动操作系统。 Android由开放手机联盟(Open Handset Alliance)开发,该联盟由Google领导,并获得了许多其他公司的贡献。

While originally developed for phones, today Android powers everything from tablets and smartwatches to smart devices like refrigerators.

虽然最初是为手机开发的,但今天的Android为从平板电脑和智能手表到冰箱等智能设备的所有功能提供支持。

如何开发移动应用 (How to develop mobile apps)

Similar to the way mobile devices can be split into two general categories, there are two ways to think about modern mobile app development: Native development or cross-platform development.

与将移动设备分为两大类的方法类似,有两种方法可以考虑现代移动应用程序的开发:本机开发或跨平台开发。

原生开发 (Native development)

This method of developing a mobile app describes building it for a specific mobile operating system using specialized tooling.

这种开发移动应用程序的方法描述了使用专门工具为特定的移动操作系统构建应用程序。

To develop apps for iOS, you need to code in either Objective-C or Swift in XCode, an IDE (integrated development environment) exclusive to macOS.

要开发适用于iOS的应用,您需要使用Objective-C或XCode中的Swift进行编码,XCode是macOS专有的IDE(集成开发环境)。

Apps for Android devices are developed in Java using the Android SDK (software developer kit), which runs on Windows, macOS, and Linux.

适用于Android设备的应用是使用可在Windows,macOS和Linux上运行的Android SDK(软件开发人员套件)以Java开发的。

There are a number of reasons for developing native mobile apps for each mobile OS including speed, security, and reliability. The big downside is that, if you want to develop an app for both iOS and Android, you basically have to build the entire thing twice.

为每个移动操作系统开发本机移动应用程序的原因有很多,包括速度,安全性和可靠性。 最大的缺点是,如果要同时为iOS和Android开发应用程序,则基本上必须将整个程序构建两次。

跨平台开发 (Cross-platform development)

This type of development uses a framework to build an app once, then create versions for both iOS and Android. Here’s a list of some of the more popular frameworks:

这种类型的开发使用框架来一次构建应用程序,然后为iOS和Android创建版本。 以下是一些较流行的框架的列表:

IonicIonic is open source framework used for developing mobile applications. It provides different tools and services for building a mobile UI with a native look and feel. The Ionic framework needs a native wrapper to be able to run on mobile devices.

Ionic Ionic是用于开发移动应用程序的开源框架。 它提供了不同的工具和服务来构建具有本机外观的移动UI。 Ionic框架需要本机包装才能在移动设备上运行。

Apache CordovaFormally known as PhoneGap, Apache Cordova is a mobile development framework originally created by Nitobe. Now it’s owned by Adobe Systems. With this framework, the developer does not need to know Java or Swift, just basic HTML, CSS, and JavaScript.

Apache Cordova Apache Cordova正式称为PhoneGap,是最初由Nitobe创建的移动开发框架。 现在,它归Adobe Systems所有。 使用此框架,开发人员无需了解Java或Swift,只需了解基本HTML,CSS和JavaScript。

React本机 (React Native)

React Native is a cross platform mobile app development framework by Facebook. Like React, React Native allows developers to build mobile apps using JSX, and offshoot of JavaScript. While it has a steeper learning curve than other frameworks like Apache Cordova, React Native allows developers to utilize more native features of the device like the camera without extra plugins.

React Native是Facebook的跨平台移动应用程序开发框架。 与React一样,React Native允许开发人员使用JSX和JavaScript分支构建移动应用程序。 尽管与Apache Cordova等其他框架相比,React Native具有更陡峭的学习曲线,但它允许开发人员利用设备的更多本机功能,例如相机,而无需额外的插件。

翻译自: https://www.freecodecamp.org/news/what-is-mobile-app-development/

移动应用程序开发