加速全堆栈 Web 及 移动应用开发_第1页
加速全堆栈 Web 及 移动应用开发_第2页
加速全堆栈 Web 及 移动应用开发_第3页
加速全堆栈 Web 及 移动应用开发_第4页
加速全堆栈 Web 及 移动应用开发_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

加速全堆栈Web

及移动应用开发三大妙招经过实证有助于团队加速现代化应用程序构建加速构建Web

应用程序和移动应用程序组织都希望通过打造出现代化的Web

应用程序和移动应用程序,来加速创新步伐,提高客户满意度,并为员工提供支持。为此,开发团队必须满足不断提高的标准,以改善用户体验和复杂的云功能,同时以低成本交付可扩展、安全、高性能的应用程序。在构建现代化Web应用程序和移动应用程序时,您需要确保团队已做好充分的准备,以便成功快速交付出可扩展的全堆栈应用程序。建议借助一些开发人员工具来缩小新手与资深开发人员之间的差距,从而让您的团队能够更快速地推出应用程序,同时充分利用与内部流程集成的可扩展选项。为了加快开发流程,您需要找到一种解决方案,来简化跨工作流对离散的分布式数据的访问。这将促使前端团队能够更快速、高效地构建出数据驱动型功能。选择合适的架构,使您的应用程序能够适应当前的需要,并灵活满足未来的需求。无论您作出什么样的决定,确保应用程序的性能和安全性仍然是您的首要任务。在本指南中,我们将与您分享以下三个加速Web应用程序和移动应用程序开发的技巧:现代工具和框架–为您的前端团队提供灵活、专用的工具和框架现代API–使用统一的GraphQL和发布/订阅API

来简化对分布式数据来源的访问现代计算技术–通过托管式服务和无服务器服务,减少管理问题并降低复杂性1232技巧1为您的前端团队提供灵活、专用的工具和框架现状前端开发人员使用JavaScript、Swift

或Kotlin

等前端编程语言,借助React、React

Native、Flutter

或Angular

等流行框架以及集成式开发环境(IDE,Integrated

Development

Environment)等工具,为各种应用程序打造差异化的用户体验。他们编写应用程序表示层的代码,通过API

访问和集成数据,并为

Web

应用程序或移动应用程序构建各种由云支持的功能,例如提供实时和离线功能的视频或聊天等。虽然前端开发人员可能是构建用户界面(UI,UserInterface)的专家,但他们通常不是云科技专家。在Web应用程序或移动应用程序中构建并连接云功能可能既复杂又耗时,会占用前端团队专注于开发用户体验的时间。解决方案利用开发工具和框架,减少完成常见应用场景所需编写的代码量,帮助您的前端团队提高工作效率。利用具有深度功能的框架,来处理最复杂的任务(如身份验证、数据访问等),并借助高级功能来处理缓存、重新连接、数据同步和冲突解决。选择合适的工具来简化开发过程,并且在自定义或扩展基于代码的应用程序功能时,不牺牲灵活性。选择能够缩短云学习过程的工具,就能加快设置、工作流程和自动化安全防御的速度,让前端团队可以摆脱束缚,专注于处理需要为客户解决的问题。3Amazon

Amplify

提供了相关工具和服务,有便于前端开发人员快速构建Web应用程序和原生移动应用程序。这些应用程序共享一个由亚马逊云科技提供支持的通用后端。AmazonAmplify库能够简化将常见应用场景(例如在云中存储图像和视频)集成到应用程序的过程,还能与流行的前端框架、语言和移动平台进行深度集成。此外,在需要时,Amplify

命令行界面(CLI,Command

LineInterface)和管理UI

还有便于开发人员能够更快速地创建出可扩展的亚马逊云科技后端。与后端即服务(BaaS,Backend-as-a-Service)产品不同,在使用

Amplify

时,开发人员可以随着应用程序使用场景的演化,利用亚马逊云科技超过200

种的服务。Amazon

Amplify

Studio

可让您在数小时内,轻松地构建出并发布完整的Web应用程序和移动应用程序,而此过程在亚马逊云科技管理控制台之外进行。借助Amplify

Studio,只需单击几次,即可快速构建应用程序后端,创建丰富的UIReact

组件,并以可视化方式将UI

连接到后端。开发人员可以使用可视化界面,来定义数据模型、用户身份验证和文件存储,而无需具备后端方面的专业知识。开发人员还可以从数十种流行的React

组件中进行选择,例如新闻推送、联系人窗体、电子商务卡片和基元(按钮、文本字段、告警),从而加快前端UI

应用程序的开发,并对这些组件进行自定义,以符合企业内部风格。利用Amazon

AmplifyStudioFormBuilder,开发人员可以从数据模型、任何JSON

对象或从头开始,通过自动生成为React代码,构建出美观ReactUI

表单,从而节省时间。

Amplify

Studio

自动生成的表单完全可以使用代码进行自定义,因此,您可以创建符合项目需求的表单,而不是让您的项目去适应表单。4Amplify

Studio

还与Figma

进行了集成,从而简化了设计师/开发人员的工作流程。利用Figma

设计稿转代码的方法,开发人员可以将设计师构建的Figma

原型,作为干净的React

代码导入到Amplify

Studio,而无需编写样板代码。Amplify会自动生成底层业务逻辑和部署代码,这样,开发人员就可以使用其首选的编程语言,来编写自定义业务逻辑代码,从而扩展应用程序。开发人员还可以使用Amazon

Amplify

Hosting

来部署并托管任何React、Vue.

js

或Next.js

的Web

应用程序。通过连接Git

工作流,或将文件上传至Amplify控制台,无缝将现有工具和亚马逊云科技服务集成,从而最大限度地提高工作效率。然后,只需配置构建设置,并直接从Amplify

控制台部署到AmazonCloudFront内容分发网络(CDN,Content

Delivery

Network)即可。利用这种一体化解决方案,您就能在每次提交代码时,持续部署静态Web

或服务器端渲染应用程序、移动应用程序登录页面,或渐进式应用程序,从而快速交付安全、可靠并能随着组织需求扩展的应用程序。通过实现上述优势,Amplify

正在帮助前端开发人员比以往更快的速度构建出功能丰富的Web

应用程序和移动应用程序。通过对适用于常见场景的最佳实操进行编码,并以个性化的方式,交付这些最佳实操,Amplify

减少了基于亚马逊云科技构建全堆栈应用程序所需的总体步骤和代码行数,同时提供了灵活性,让开发团队可以随着业务需求的发展,自定义应用程序。亚马逊云科技如何提供帮助Branch

Insurance

基于亚马逊云科技加快应用程序开发挑战BranchInsurance致力于仅使用两条简单信息(客户姓名和客户地址)便可提供捆绑定价,从根本上简化保险客户终端用户体验。然而,要实现这种简便性,就需要强大的基础设施来快速处理数据,并根据法规要求高效安全地存储数据。BranchInsurance

使用AmazonAppSync作为其后端基础设施和API服务的基础,并将其连接到Amplify库,来管理授权流程,从而最大限度地减少管理其应用程序运维所花费的时间。所使用的工具和服务Amazon

AmplifyAmazon

AppSyncAmazon

CognitoAmazon

DynamoDB成效应用程序开发时间缩短了六个月不到20

名开发人员的团队在短短三年内推出了四款产品参阅完整案例研究›“在亚马逊云科技上构建产品就像在

‘简单模式’下开展工作一样,因为使用托管服务可以简化很多工作。我们只需要编写业务逻辑和接口。这就是使用亚马逊云科技服务的巨大优势所在。”Branch

Insurance

联合创始人兼首席技术官Joe

Emison客户案例5技巧2使用统一的GraphQL

和发布/订阅API

来简化对分布式数据来源的访问现状软件架构在持续发展。各个组织正在从整体式架构,转向分布式架构,有时也会结合采用这两种架构。具体使用哪种架构取决于多种因素,其中包括技能组合、应用程序或编程模型等。选择包含独立微服务或组件的分布式架构时,组织可以加快开发速度,因为各个团队可以独立处理应用程序的不同部分。分布式架构还提高了容错能力。这样可以将某些组件的故障隔离开来,最大限度地减少对其它应用程序组件带来的影响。微服务可以简化应用程序的扩展,还能加快开发速度,推动创新并缩短应用程序的上市时间。不过,采用微服务可能需要前端团队连接多个分布式微服务和数据来源,这使得他们更难以使用到面向用户的应用程序所需的数据。后端团队在加速Web和移动开发方面,发挥着重要的作用,他们通过采取一种让前端团队更容易地在应用程序中使用数据的方式,来简化数据访问。解决方案对于跨多个后端数据来源的数据访问和集成,GraphQL等技术可以提高这些操作的速度和效率。GraphQL是一种API查询语言和运行时系统,可用于针对现有数据完成这些查询。GraphQL为您在API中的数据提供了完整且易于理解的描述,使前端开发人员能够从多个后端数据库和微服务中,准确地查询到每个API调用所需的数据。后端开发团队可以使用GraphQL,将现有数据来源抽象化为单个端点,并为前端团队提供更轻松的数据访问方式。对于一组现有API,将多个端点抽象化为单个GraphQLAPI可实现GraphQL优势,即无需迁移API或从头开始重写应用程序。使用GraphQL

创建统一的API

层,可以对REST

API

策略起到补充作用,从而有助于前端开发人员简化与分布式服务架构的交互。通过扩展API,使之包含订阅,GraphQL

用户还可以将来自任何事件来源的实时数据,更新发布到已订阅的

Web、移动和物联网(IoT,Internet

of

Things)客户端。6亚马逊云科技如何提供帮助AmazonAppSync支持开发人员使用安全、无服务器且高性能的GraphQL和发布/订阅API,将应用程序连接到数据和事件,从而简化了现代化Web应用程序和移动应用程序的开发。AmazonAppSync可处理安全连接到Amazon

DynamoDB、Amazon

EventBridge

和Amazon

Lambda

等数据来源所涉及的繁重工作。AmazonAppSync

提供完全托管式GraphQL

API

和发布/订阅API

设置、管理、自动扩缩和高可用性,具有内置安全性、监控、日志记录和跟踪功能,以及用于实现低延迟的可选缓存。AmazonAppSync现在还提供私有API,让用户能够设置限制条件,以便只能从指定的虚拟私有云(VPC,Virtual

Private

Cloud)端点,才能访问他们的API。Amazon

AppSync

GraphQL

API

通过提供单个端点来安全地查询或更新来自多个数据库、微服务和API

的数据,简化了应用程序开发。通过使用GraphQL,只需一个网络请求,即可为您的应用程序提供来自一个或多个数据来源的正确数据,并将多个数据来源整合为单个GraphQL

API。AmazonAppSync发布/订阅API通过无服务器WebSockets连接,自动将数据更新发布到订阅的API客户端,从而简化了创建能够吸引用户的实时体验的过程。通过扩展GraphQLAPI,使之包含订阅,将来自任何事件来源的实时数据,更新发布到Web、移动和IoT

的订阅客户端。或者,您也可以从没有GraphQL

的简单发布/订阅API

入手。无论采用哪种方式,AmazonAppSync都可以处理无服务器WebSockets连接的创建、消息广播,以及扇出到多达数百万个已连接的客户端。Amazon

AppSync

提供与其它亚马逊云科技服务的集成,可以轻松地保护、监控API

并进行故障排除。这些服务包括:Amazon

CloudTrail,用于实时监控审计日志Amazon

CloudWatch,用于管理指标和日志Amazon

X-Ray,用于跟踪分布式应用程序的行为Amazon

WAF,用于保护API

免受常见Web

攻击7提升ADP

在MyADP

和ADP

移动应用程序中的单一全球体验挑战AutomaticDataProcessing(ADP)希望对其旗舰桌面和移动解决方案MyADP和ADPMobile进行现代化改造,从而为1700万用户打造无缝的用户体验(UX,UserExperience)。为实现这一目标,ADP

致力于整合其应用程序,并对应用程序进行标准化和现代化改造。ADP

不得不进行创新,这样才能在不引入错误的情况下,为不同的记录系统创建单一体验。ADPDevOps

高级总监Devi

Ramachandran

表示:“薪酬报表的打开速度应该与福利登记的打开速度相同,但这是两个不同的内容来源,并且基于两套不同的基础设施。这一直以来就是我们所面临的挑战,而自从将我们的系统迁移到亚马逊云科技后,一切都变得更加简单了。”为了简化这些不同基础设施提供的应用程序API

访问方式,ADP

使用Amazon

AppSync

将来自各种后端和来源的数据,全部汇集到一个端点中。最终,ADP

得以简化后端的数据聚合,并为用户创造更出色的体验。所使用的工具和服务Amazon

AppSyncAmazon

ECSAmazon

FargateAmazon

Lambda成效应用商店评分保持在4.5分以上实现全球用户体验的可移植性通过多区域架构提高恢复能力通过基于延迟的路由降低延迟针对流量激增情况进行扩展,以便消除限流和错误的情况发生参阅完整案例研究›“我们采用亚马逊云科技是因为我们希望成为一个产品开发团队,而不是一个基础设施管理团队。”ADPDevOps

高级总监Devi

Ramachandran客户案例8技巧3通过托管式服务和无服务器服务,减少管理问题并降低复杂性现状德勤报告称,80%的IT资源专注于业务运营,而仅有20%专注于创新。如要提高该比率,并将更多IT资源用于创新,最快的方法就是减少花在管理基础设施等非核心业务活动上的时间。由于采购周期的原因,管理服务器、存储、联网和操作系统既费时又费钱,而且操作复杂。管理基础设施会让您的团队花费越来越多的时间(这也是优化创新并对创新进行再投资的关键机会)。解决方案要“减轻运营负担”,最简单的方法之一,就是为您的基础设施采用托管式服务或无服务器服务,让云提供商来承担运维工作。减少在预置、管理和修补服务器方面所花费的时间,您的开发人员就可以将更多时间用于创新,为产品编写和迭代代码,提升客户满意度。使用无服务器计算,便无需预置或管理基础设施。您的基础设施按使用单位,而不是按服务器单位进行自动扩展。通过无服务器技术,贵组织只需为所使用的计算量付费,该技术本身就具备可用性和容错功能。无服务器计算消除了服务器运维负担,因此,贵组织能够专注于构建应用程序,而无需管理和扩展基础设施来支持应用程序。9亚马逊云科技如何提供帮助Amazon

Lambda

是一个很好的切入点。这是一种无服务器计算服务,将代码作为高度可用、可扩展、安全、具有容错能力的应用程序运行,同时将底层计算环境完全抽象化。这样,您就能主要关注应用程序开发,缩短上市时间,并降低总拥有成本(TCO,Total

Cost

ofOwnership)。Lambda

函数可以由事件触发,这意味着它在事件被触发之前,一直处于空闲状态,待触发之后,系统才开始运行。事实上,您可以从200

多种亚马逊云科技服务、HTTP

调用和软件即服务(SaaS,Software-as-a-Service)应用程序中,自动触发Lambda函数,而无需编写一行集成代码。一旦事件被触发,资源就会根据任务的需要,以毫秒级速度,自动启动或停止运行。您无需预置或配置基础设施,只需为所使用的服务付费。也就是说,您可以在尽可能降低TCO

的同时,加快投产速度。Lambda

可最大程度减少操作,从而尽可能提高敏捷性,但在某些情况下,您可能希望使用容器编排工具来运行容器。这样一来,您就能灵活地运行无服务器或微调基础设施,从而增加您的业务价值。您的团队可以在Amazon

Fargate

这种无服务器容器服务上,使用Amazon

Elastic

ContainerService(Amazon

ECS)来补充AmazonLambda。10ProSiebenSat.1

Media

SE

使用亚马逊云科技无服务器解决方案提供交互式电视体验挑战Seven.OneEntertainmentGroup是一家创新型数字集团ProSiebenSat.1MediaSE

的全资子公司,有机会构建极具吸引力的交互式电视解决方案,来更好地取悦和吸引客户。该公司决定使用无服务器架构,将其本地观众参与度提升方案,迁移到亚马逊云科技,来应对基于事件的流量高峰。通过采用Amazon

AppSync

等托管服务,Seven.One

Entertainment

Group

可以开发GraphQLAPI,而无需再执行大规模安全地连接到DynamoDB数据这一繁重工作。该公司的无服务器架构,由Lambda的事件驱动型计算提供支持,也可以进行扩展,来为事件期间的观众交互提供支持。通过AmazonAppSync

实时订阅,该公司可以向数百万粉丝提供近乎实时的结果。在亚马逊云科技的助力下,该公司将其解决方案的每月成本降低了60%,并使员工能够专注于差异化任务,创造令人耳目一新的新功能,而不是将时间花费在自行管理基础设施上。所使用的工具和服务Amazon

AppSyncAmazon

DynamoDBAmazon

CloudFrontAmazon

Lambda成效将其解决方案的每月成本降低了60%在高峰时段实现13

毫秒的延迟减少分发视频内容的时间通过提高可扩展性,使API

得以用于终端用户流量参阅完整案例研究›“在亚马逊云科技的助力下,我们得以专注于我们最擅长的事情,也就是编写代码,而不需要担心修补操作系统或扩展事宜。”Seven.One

Entertainment

Group

元数据系统主管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论