开发者网络

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 102|回复: 0

移动App开发:详解NativeApp开发模式的特点

[复制链接]

1

主题

1

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2023-2-20 02:02:42 | 显示全部楼层 |阅读模式
如今开发出一款成功的APP已经成为公司运营的重要一环,但APP的开发模式很多,不同模式的实现机理不同,因而会在APP的开发成本、运行性能、升级维护和用户体验等方面造成不同的影响。

目前来说,APP的主要开发模式主要分为四类:

第一类是原生应用开发,即NativeApp。基于Android平台的Java语言开发和基于iOS平台的Objective-C语言/Swift语言开发。

第二类是移动网页应用开发,即WebApp。网页应用开发是利用Web技术,使用HTML、CSS和JavaScript开发用于移动端显示的网页。

第三类是把NativeApp和WebApp结合的混合开发模式,即HybridApp。

第四类是基于ReactNative框架的JavaScript语言开发的类原生应用,即ReactNativeApp。

下面主要是对比较常用到的NativeApp开发模式做一个具体的分析,希望有助于大家对于APP开发有一个了解!

NativeApp是本地开发方式,基于手机操作系统进行开发,利用Java、Objective-C或Swift语言进行程序开发,然后编译成字节码或机器码后经操作系统调度运行。

由于操作系统不同以及开发语言的不同,当今最流行的两大移动端平台Android和iOS各有自己的一套独立的开发模式,两大平台差异较大。

现以iOS平台为例简述下NativeApp的开发模式。

首先需要在MacOSX系统上安装苹果公司开发的IDE――Xcode。Xcode内拥有开发iOSNativeApp快捷高效的CocoaTouch框架,是开发原生iOS程序的不二选择。

在Xcode中创建一个SingleViewApplication工程后选用Swift语言开发,会自动生成以Main.storyboard、AppDelegate.swift、ViewController.swift开发核心的若干文件。其中Main.storyboard用于构建各个页面之间跳转关系和具体页面布局,在Xcode的右下角有可拖拽的若干控件,拖拽控件到Main.storyboard后结合AutoLayout为各个控件添加各种布局约束,来保证界面在不同大小的屏幕上的适配。

AppDelegate.swift是为iOS程序做一些初始化设置,主要用于在APP启动时为重要的数据结构进行初始化,以及响应APP运行时事件,如程序启动、程序运行内存不足、程序切换等。程序员可在AppDelegate.swift中的相关函数里对事件响应进行操作。

ViewController.swift就是iOS程序中的初始界面,是UI控件和程序逻辑的控制器。程序员主要通过ViewController.swift中的viewDidLoad和viewWillAppear等方法对iOS程序的数据层和视图层进行控制,来表达APP的业务逻辑。

NativeApp开发模式的优势在于NativeApp是编译后的文件,执行速度快,界面动画十分流畅,对网络的依赖性小,用户体验很好。基于平台层可以非常方便地调用操作系统提供的各种功能,如调用摄像头、推送信息和读取本地通讯录等。

NativeApp开发模式的劣势主要是:开发周期长,两套独立的知识体系复杂且学习成本高,依赖操作系统而无法进行跨平台开发,APP版本升级繁琐需要重新把源文件编译打包再由用户下载覆盖安装。

移动互联网的浪潮,推动着移动开发技术的不断发展,移动App的开发模式也丰富了起来。每个开发模式都有自身的优势与不足,在实际开发前应仔细权衡开发人员的知识体系和开发成本。

————————
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|开发者网络

GMT+8, 2025-4-10 04:17 , Processed in 0.103185 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表