近期开发几个项目,牵涉到android的几种开发模式。对于原生态开发、web 应用开发以及混合模式开发,本人觉得并非哪一种就是最好的,哪一种就是最差的,这个全然是依据项目的实际需求,选择一种合适的开发模式。他们同一时候具备自己的长处,同一时候也有自身的缺点,我们依据实际情况,取当中的长处,尽量避免掉缺点,才是最好的开发模式。以下,我们就一同看看,这三种开发模式,究竟有什么差别。以下结合现有网上资料,感觉还是非常不错,和大家分享一下。
一、原生应用 (也称本地开发 Native App)
你使用过微软PowerPoint 或者 Word吧?这些可直接在你电脑上执行或者在智能手机上执行,简单来说,原生应用是特别为某种操作系统开发的,比方iOS、Android、黑莓等等,它们是在各自的移动设备上执行的。
长处:
- 可訪问手机全部功能(GPS、摄像头);
- 速度更快、性能高、总体用户体验不错;
- 可线下使用(由于是在跟Web相对地平台上使用的);
- 支持大量图形和动画; easy发现(在App Store里面)和又一次发现(应用图标会一直在主页上);
- 应用下载能创造盈利(当然App Store抽取20-30% 的营收)。
缺点:
- 开发成本高;
- 支持设备很有限(通常是哪个系统就在哪个平台专属设备上用);
- 上线时间不确定(App Store审核过程不一);
- 内容限制(App Store限制);
- 获得新版本号时需又一次下载应用更新。
举例:Yellow Pages Group 就开发了是几个版本号(iOS、黑莓、Android),他们在每个原生应用市场都有上架。
二、Web 应用
Web应用本质上是为移动浏览器设计的基于Web的应用,它们是用普通Web开发语言开发的,能够在各种智能手机浏览器上执行。
长处:
- 支持设备广泛;
- 较低的开发成本;
- 可即时上线;
- 无内容限制;
- 用户能够直接使用最新版本号(自己主动更新,不需用户手动更新)。
缺点:
- 表现略差(对联网的要求比較大);
- 用户体验没那么炫;
- 图片和动画支持性不高;
- 没法在App Store中下载、无法通过应用下载获得盈利机会;
- 要求联网;
- 对手机特点有限制(摄像头、GPS等)。
对于这些缺点,假设能把HTML 5的长处用到Web上的话就会得到非常大改善,虽然技术在提高, 眼下它还不能做原生应用能够做的每件事。
有些公司,比方金融时报继原生应用后也开发了Web应用,用户通过浏览器来訪问他们的应用,由于他们的应用要採取应用内购买,而App Store是不同意应用内购买的,不然它们就无法拿到那20%-30% 的抽成了。
三、混合应用(HyBrid App 开发)
混合应用大家都知道是原生应用和Web应用的结合体,採用了原生应用的一部分、Web应用的一部分,所以必须在部分在设备上执行、部分在Web上执行。
只是混合应用中比例非常自由,比方Web 占90%,原生占10%;或者各占50%;再或者原生占80%,Web占20%。
长处:
- 兼容多平台;
- 顺利訪问手机的多种功能;
- App Store中可下载(Wen应用套用原生应用的外壳);
- 可线下使用。
缺点:
- 不确定上线时间;
- 用户体验不如本地应用;
- 性能稍慢(须要连接网络);
- 技术还不是非常成熟。
比方Facebook如今的应用属于混合应用它能够在很多App Store畅通无阻,可是掺杂了大量Web特性,所以它执行速度比較慢,而如今为了提高性能FB又决定採用原生应用。
结论
如今假设你在想哪种应用是最好的,那答案就是,看情况而定:
- 比方,你的预算是多少?预算充足的话能够开发几个本地应用加一个Web应用。
- 你的应用须要什么时候面市?Web应用能够非常快地开发然后直接推出来。
- 你的应用须要包括什么特点和功能?假设跟手机的某些功能深度整合了,比方摄像头,须要呈现大量图形和动画就选原生应用好点。
- 在现实开发过程中,非常多开发者往往是自己熟悉那种开发就会用自己擅长的,也是情理之中的。可是,由于自己擅长,就肯定是最好的,排斥其它不熟悉的开发模式,这样下结论,就有点目光短浅和草率了。
相关推荐
Cordova 环境部署和优缺点分析 Cordova 是一个基于标准 Web 技术(HTML、JavaScript 和 CSS)的混合型框架,能够将 Web 应用程序转换为原生应用程序,支持多平台开发。下面是对 Cordova 环境部署和优缺点的分析。 ...
在移动应用程序开发中,有三种主要的开发模式:原生开发、H5开发和混合开发。每种开发模式都有其优缺,了解它们的区别对于开发者来说非常重要。 原生开发是指使用官方提供的开发语言、开发类库、开发工具进行App...
### Hybrid APP 与原生开发优缺点 随着移动互联网的发展,各类应用程序(Applications,简称App)已成为连接企业和用户的桥梁。为了满足不同用户的需求以及更好地利用各种设备资源,开发者们不断探索新的开发方式。...
移动应用开发通常分为原生应用开发、混合应用开发和Web应用开发三种方式,每种方式都有其优缺点,适用于不同的场景和需求。 移动应用开发的关键技术和工具 移动应用开发涉及到多种关键技术和工具,包括但不限于以下...
原生开发、H5开发和混合开发是当前市场上三种主流的开发模式,每种模式都有其优缺点。本文将对这三种开发模式进行详细的比较和分析。 一、原生开发 原生开发(Native App开发)是指在Android、IOS等移动平台上利用...
在移动互联网时代,Web 应用(H5 应用)与原生应用(如 iOS 和 Android 应用)之间的交互变得越来越重要。其中一种常见的场景就是从 H5 页面跳转到相应的原生应用,这通常被称为“唤起”原生应用。本文将详细介绍...
**定义**:混合应用结合了原生和Web应用的特点,其核心是Web技术,但通过容器(如Cordova或React Native)将其封装成原生应用。 **优点**: - **成本效益高**:一次编写,多平台部署,减少了开发和维护的成本。 - *...
本文将深入探讨“Hybrid Native Mobile App Comparison”主题,特别关注使用Cordova框架构建的混合应用,以及与之对比的原生Android和Windows移动应用程序。 **Cordova框架** Cordova是由Apache软件基金会开发的...
移动互联网终端应用开发技术是当前信息技术领域的重要研究方向,它涉及的技术和模式包括但不限于原生应用开发模式、Web应用开发模式和混合应用开发模式。下面将针对这些技术点展开详细阐述。 原生应用开发模式...
Facebook的早期版本就是一个典型的混合应用案例,结合了Web技术和原生技术,以平衡开发效率和用户体验。 #### 五、总结与建议 选择合适的移动应用开发方式取决于多个因素,包括预算、项目时间表、所需功能和目标...
Cordova 的核心思想是将 Web 应用程序封装在原生应用壳中,使得这些应用程序能够通过应用商店分发,并能够访问和利用手机的硬件特性,如地理位置、加速度计、联系人列表、音频和振动等。通过 Cordova 提供的 API,...
本文将探讨四种常见的移动应用开发技术:Android原生开发、HTML5+MUI+HBuilder、Weex以及React-Native。 1. **Android原生开发**: Android原生开发使用Java或Kotlin语言,结合Android Studio进行。原生开发的最大...
最大的缺点就是性能远不及原生应用,交互上也做不到原生的那么自然。 目前非常多的电商或应用APP,只有8Mb这么小,本质就是使用了套壳业务,里面是html5的界面。 如果在制造业企业里面,可以开发内部使用,如平板在...
本文将详细介绍这三种技术的特点、优缺点,并进行一定的对比分析。 #### 原生开发技术(Native app) 原生开发是指针对特定的操作系统或平台进行开发的方式,如iOS平台上的应用通常使用Swift或Objective-C语言编写...
首先,文章分析了移动应用开发的三种模式,包括原生应用开发模式、Web应用模式以及混合应用开发模式。接下来,文章重点研究了如何根据Cordova开发框架来实现跨平台开发,最终达到满足农产品电商发展的需求。 移动...
整体来看,文档详细介绍了应用调起技术在现代移动Web与Native应用开发中的多种实践方法,包括不同技术手段的优缺点,以及在实际应用中的具体实现。通过这些技术,开发者可以有效地解决性能、开发效率、迭代速度等...
移动应用可以分为原生应用、Web 应用、混合应用三种模式,每种模式都有其优缺点。 移动应用的安全机制可以从移动终端安全机制和网络安全机制两个方面考虑。移动终端安全机制包括终端操作系统安全机制、防病毒、系统...
本文将深入探讨原生开发、Web App 和 Hybrid App 三种不同类型的移动应用开发方式,以及混合式开发(Hybrid App)的优缺点,特别是对 DSBridge 这种 JS Bridge 技术的介绍。 首先,原生开发(Native App)是指针对...
混合学习框架是一种结合了原生应用(NativeApp)和网页应用(WebApp)开发模式的技术方案,它允许开发者在一个统一的架构下整合多种技术的优点,以应对不同场景的移动应用开发需求。混合学习框架特别适合对混合开发模式...
标题中的“APP几种开发方式借鉴”指的是探讨移动应用开发的三种主要途径:原生APP(Native APP)、Web APP和混合APP(Hybrid APP)。这三种方式各有优缺点,适用于不同的开发需求和场景。 1. 原生APP(Native APP)...