英语原文共 17 页,剩余内容已隐藏,支付完成后下载完整资料
混合应用开发模式:
是否标志着原生应用开发模式统治的结束?
摘要
目的/目标 尽管市场上有数以百万计的应用程序,但开发一款可以使用相同代 码跨平台运行的移动应用程序仍然具有挑战性。
背景 本文通过介绍混合应用程序方法来探讨一种开发跨平台应用程序的 潜在解决方案。
方法论 本文首先对不同的移动应用程序开发方法进行了简要的介绍,并与 混合应用程序开发方法进行了比较。然后,它关注一个特定的被称 为 Ionic的混合应用程序开发框架。
贡献 本文将混合应用作为移动应用发展的一个新趋势,并对其优势和教 学意义进行了总结。
调查结果 混合应用程序方法减少了学习曲线,并提供了允许代码重用的工具, 以便为不同的移动设备创建应用程序。
对从业人 本文所描述的使用Ionic框架创建混合应用的经验可以应用于
员的建议 网页设计或移动应用开发课程。
社会影响 总体而言,混合框架的进步以及对开源框架(尤其是Inoic框架) 的日益认可,可能提供了一种替代传统应用控制的方法,并可能在 未来几年内引发混合应用的迅速崛起。
关键词 混合应用程序、移动应用程序开发、跨平台Web应用程序、Inoic 框架
介绍
根据Huynh和Ghimire(2015;2017)最近发表的关于移动应用程序开发的论文,目前还没有一个完美的方法来创建移动应用程序。尽管有数以百万计的应用程序在市场上,设计和开发一个可以在使用相同代码的平台上运行的移动应用程序仍然具有挑战性。仅在几年前,使用本机软件开发工具包(sdk或devkit)是创建移动应用程序的唯一方法。每个平台(如Android、iOS和Windows)都需要不同的SDK,并且每个平台也使用不同的编程语言进行编码。用Java或Objic C开发一个不用编码的应用程序的想法似乎很遥远。最近,随着混合移动应用框架的出现,移动应用的发展格局发生了显著变化(Arora,2016年)。在本文中,我们将探讨一种新兴的方法,它可能为跨平台移动应用程序开发中的这一困扰问题提供解决方案。
为了理解混合方法的重要性,我们先退后一步,看看这些年来不同方法的出现。本节简要介绍了不同开发方法的演变,从“独立站点”的Web设计策略到本机应用程序开发的爆炸式发展。接下来是混合移动应用程序方法的引入。在这一部分中,我们将描述混合移动应用程序方法的背景及其与其他方法相比的优势。下一步,我们将关注被视为混合移动应用程序开发的顶级框架之一的Inoic。我们还将简要介绍如何设置和使用离子。论文的最后部分将对Inoic框架进行反思,并对混合应用的潜力进行展望。
一瞥移动设备上交付Web内容的不同方法的演变
根据皮尤智能手机研究中心(Pew Research Center on Smartphone)最近的一项研究(Smith,2015年),近三分之二的美国人现在是智能手机用户。在智能手机用户中,千禧一代(18-34岁)是迄今为止技术最先进的用户群体,拥有95%的手机所有权。今天的大多数手机都是智能手机。智能手机广泛应用于各种重要的生活活动中,从搜索健康信息、使用教育资源、找工作、阅读新闻、与他人分享内容、遵循驾驶方向、执行任务、与世界保持联系,以及许多其他用途。对于许多用户来说,这些设备是进入在线世界的关键入口(Smith,2015年)。使人们越来越“依赖智能手机”的主要驱动力之一是丰富的网络资源。
最初,随着智能手机和平板电脑用户的数量开始增长,网页设计师通常遵循“独立网站”的网页设计策略。目标是创建一个允许用户从移动设备访问Web内容的网站。通常,这个版本的移动网站是与桌面网站不同的版本。这种方法的主要优点是能够向移动和桌面网站用户提供最佳用户体验(UX),因为每个网站都是专门针对各自的设备类型设计的。换言之,当移动用户来到该网站时,他们将被重定向到移动网络版本,并且显示将是移动友好的。例如,移动网络版本上的图像比桌面网络版本上的图像要少。移动网络版本上的文本将以适当的大小显示,而无需放大和缩小。如图1所示,在移动Web版本上导航会更简单。
然而,这种方法需要设计、开发和维护两个独立的网站。因此,一个后果是成本的增加以及开发和维护两个网站的工作量的增加。这种方法的另一个缺点是,由于市场上有大量不同的设备,很难检测到移动设备。移动网站通常依赖于Web服务器通过浏览器嗅探技术(如嵌入式JavaScript代码)检测移动浏览器的能力。但是,为了检测新设备,必须经常更新此代码;否则,它将无法检测市场上的新移动设备。由于这一缺点,“独立网站”的Web方法逐渐演变为当前的响应式Web设计(RWD)方法。
图1 “独立网站”网站设计提供不同版本的网站设备类型
在RWD方法中,目标是为多种设备类型(包括智能手机、平板电脑、笔记本电脑和台式机)优化网站内容的访问和显示。关键是使网站能够响应不同的屏幕大小,而无需创建网站的多个版本。随着HTML5和CSS的出现,响应式Web设计技术不再那么复杂,因为它不需要脚本语言(如javascript、php等)。HTML5和CSS提供的标记足以提供调整、隐藏、收缩、放大或移动内容的能力,使其对任何屏幕大小都能做出响应,如图2所示。
RWD方法的主要吸引力在于它在编码和维护网站方面的简单性。只有一个版本需要开发和维护。因此,这就转化为网站的开发和营销。然而,RWD方法显示了典型网站的固有局限性。虽然RWD网站对不同的设备有响应,但它本质上只是一个显示信息的网站。它的工作环境依赖于Web服务器和客户机的浏览器。因此,不同屏幕尺寸和设备类型的高级UX此时不可能实现。此外,向RWD网站添加更多功能由于其开发框架的能力有限通常不是可行的。
随着拥有移动设备的成本降低,移动技术不断进步,越来越多的用户用移动设备和平板电脑取代台式电脑甚至笔记本电脑。访问网络内容和使用移动设备的需求日益增长,而不是依靠台式计算机访问网络。这就是专门为移动设备(通常称为应用程序)设计的应用程序发挥作用的地方。最主要的是“本地应用程序”。事实上,本地应用程序的增长是惊人的。据估计,就在几年前,市场上有200多万个移动应用程序。最近,从Google Play Store和Apple App Store的统计数据来看,用户每年都下载了数十亿次所有应用程序(Malavolta、Ruberto、Soru和Terragni,2015年)。根据2014年美国移动应用报告(Lella和Lipsman,2014年),仅使用移动应用程序占数字媒体参与总数的52%。原生应用已经成为企业的主导策略,它不仅提供用户连接,访问他们的网络内容,与企业进行交流和互动,开展工作,还建立品牌和管理客户关系。本机应用程序是指使用谷歌和苹果等硬件/设备提供商提供的工具和应用程序接口(API)编写的应用程序,并专门与谷歌Android、苹果iOS、微软Windows等特定平台绑定(Lutes,2012年)。
图2 响应式Web设计根据屏幕大小的类型提供不同的显示
尽管本地应用程序开发方法目前占主导地位,但由于以下原因,它并不完美。首先,每个本机应用软件开发工具包都绑定到一个特定的平台上。例如,iOS的SDK与Android完全不同。因此,开发一款可以在Android、iOS和Windows设备等跨平台上运行的本地应用程序在技术上具有挑战性。在一台设备上工作的内容不一定在其他设备上工作(Huynh和Ghimire,2017年)。另一个原因是,存在允许本机代码访问设备存储、传感器和数据的较低级别API(Charlandamp;Leroux,2011年),并且所有这些API在不同设备之间都是不同的。从资源的角度来看,要在本地应用程序开发中取得成功,经济上是非常困难的,尤其是对于小型开发人员来说。也就是说,尽管有这么多可用的应用程序,但只有一小部分应用程序的盈利百分比。此外,本地应用程序市场主要由大型和成熟的公司主导。因此,来自小公司和/或个人的应用程序将很难竞争和成功(Brodsky,2015年)。最后一个原因是不同硬件平台固有的专有特性。Android、iOS和Windows应用程序都是基于专有硬件平台设计的。操作系统或硬件的任何更改都会呈现应用程序不可操作或不兼容(Huynhamp;Ghimire,2017年)。
为了提供一种替代主流本地应用程序开发方法的方法,还有其他方法。其中之一是huynh和Ghimire(2017)。提议的浏览器应用程序方法是对“独立网站”网页设计策略和RWD技术的局限性的回应。Huynh和Ghimire(2017)在他们的文章中描述了浏览器应用程序方法的关键功能,包括:可交付应用程序从任何移动浏览器运行,以支持不同的设备,而不是依赖于平台,开发基于开源标准,并强调代码的可重用性,利用“只写一次,随时随地运行”(wora)的概念。在使用现有代码创建一系列没有陡峭学习曲线的StoreRetrieve显示(SRD)应用程序的简单过程中,展示了所提议的浏览器应用程序方法的潜力。但是,浏览器应用程序方法Huynh和Ghimire(2017年)指出,这两个国家出现了2次短缺。例如,从技术角度来看,尽管这些浏览器应用程序可以在任何移动设备上工作,但实际上它们还不是真正的移动应用程序。它们不可下载,因为浏览器应用程序主要从浏览器访问和运行。因此,如果没有互联网连接,它们就无法正常工作。在文章的最后,Huynh和Ghimire(2017)指出了一个有前途的策略,叫做“混合移动应用”。这种“混合移动应用”方法将是我们将要在论文的其余部分展示的重点。
混合移动应用程序方法介绍
在前一节中,我们简要介绍了在移动设备上交付Web内容的不同策略的演变。随着智能手机的激增,用户越来越多,他们访问网络内容的需求也在增长。随着技术的进步,增加了更多的功能。目前,本地应用程序策略是一个主要的选择。然而,这远不是一个完美的解决方案。开发在跨平台上运行的本地应用程序有许多挑战。在本节中,我们将更详细地介绍一种称为混合移动应用程序方法的替代方案。
了解混合移动应用程序方法
近年来,混合移动应用程序方法已经成为一种新兴的、有希望的本地应用程序开发方法的替代方法。这种方法允许开发人员使用Web标准创建一个称为混合应用程序的单一移动应用程序,并在多个移动平台上一致地分发它,无需(最小到)更改(Malavolta等人,2015年)。混合应用程序本质上是一个用HTML、CSS和JavaScript编写的小型网站。它不同于普通网站,因为它只在浏览器外壳中运行,并且可以访问本机平台层。要像本地应用程序一样运行,它依赖于本地包装,如cordova。因此,混合应用程序的设计和编码类似于一个网站,但它随后被包装成访问本地平台功能的能力。其结果是一种强大的替代方法来构建基于Web技术但功能和外观类似于本地应用程序的移动应用程序。因此,混合移动应用程序方法提供了一种机制,可以将基于浏览器的应用程序转换为可编译为二进制可执行文件的移动应用程序,可以从应用程序商店下载到用户的设备上,并且可以在线和脱机运行。
混合移动应用程序方法与其他选项的比较
随着越来越多的用户使用移动设备,对应用程序的需求不仅在于交付Web内容,还在于执行更高级的功能。这导致了移动应用的出现。根据与行业专业人士的讨论,Agrawal和Gill(2013)建议,移动应用程序的开发基本上有三种主要选择。第一种选择是使用平台特定的开发人员工具来开发平台特定的应用程序。第二种选择是使用html/jquery和css创建浏览器应用程序(Agrawalamp;Gill,2013年)。最后一个选项是使用RAD工具创建具有Web应用程序和本机应用程序特征的混合应用程序。
第一个选项,使用特定于平台的开发人员工具,结果是交付本机应用程序。本地应用程序通常用编译的编程语言编码,如Java、Objective C或C#。本地应用程序通常很健壮,因为它们可以访问特定于设备的功能(Lutes,2012年)。所有本地应用程序都是通过应用程序商店(如Apple App Store、Google Play Store)获得的。直接安装在设备本身上的本地应用程序在本地可用,因此可以在不连接到网络的情况下运行
第二个选项使用html/jquery和css,结果是交付了MobileWebBrowser应用程序。浏览器应用程序的功能本质上类似于为移动设备优化的用户界面设计的网站。它不依赖于设备,因为它通常使用基于标准的Web浏览器技术(如HTML、CSS、JavaScript、PHP而不是编译的程序语言进行编码。尽管它的工作方式类似于本地应用程序,但浏览器应用程序不需要下载或安装在设备上。移动设备上的Web浏览器通过指定的URL调用它。因此,运行它需要Internet连接。
最后一个是开发混合应用程序。这种应用程序利用了本地应用程序和移动Web应用程序的特性。就像一个移动网络应用程序,它是用HTML,CSS,JavaScript或PHP,但它被编译成本地应用程序,通过供应商应用程序商店进行分发。从用户的角度来看,原生应用程序和混合应用程序没有什么区别。只要设备有网络浏览器,混合应用程序就可以像本地应用程序一样运行。从开发人员的角度来看,混合应用程序确实是跨平台的。
混合移动应用程序方法的优势
使用混合移动应用程序方法有很多优点。混合移动应用允许开发人员使用标准化的Web技术,如HTML5、CSS和JavaScript。在混合移动应用程序中,开发人员还包括向平台API提供所有服务请求的能力。本部分要求使用混合开发框架(如Apache Cordova、Ionic框架等)来提供包含基于Web的代码的本机包装器,以及将基于W
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[439569],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。