自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何啟動(dòng)云計(jì)算應(yīng)用程序開發(fā)

譯文
云計(jì)算
如何開發(fā)云計(jì)算應(yīng)用程序?將采用哪些技術(shù)?從哪兒開始?開發(fā)人員希望找到這些問題的答案。

[[436453]]

【51CTO.com快譯】開發(fā)云計(jì)算應(yīng)用程序成為企業(yè)發(fā)展業(yè)務(wù)的必要措施。如今幾乎每一家企業(yè)都使用過基于云的應(yīng)用程序或SaaS產(chǎn)品。由于各種原因,云計(jì)算應(yīng)用程序在桌面軟件市場(chǎng)上占據(jù)主導(dǎo)地位,其主要優(yōu)點(diǎn)是可以隨時(shí)隨地使用具有網(wǎng)絡(luò)瀏覽器的任何設(shè)備訪問它們。此外,當(dāng)企業(yè)開發(fā)某一云計(jì)算應(yīng)用程序時(shí),它意味著其所有用戶都可以使用相同版本的應(yīng)用程序。這將顯著地減少引入新功能、安全更新和同步所需的時(shí)間和資源。

本文將介紹云計(jì)算應(yīng)用程序開發(fā)的優(yōu)勢(shì)。

理解云計(jì)算應(yīng)用程序的概念

云計(jì)算應(yīng)用程序是在遠(yuǎn)程服務(wù)器上運(yùn)行并由用戶通過Web瀏覽器或本地客戶端訪問的軟件,可作為呈現(xiàn)在云中處理的內(nèi)容的用戶界面。因此,用戶的設(shè)備僅用于輸入數(shù)據(jù),然后將數(shù)據(jù)發(fā)送到服務(wù)器進(jìn)行處理并發(fā)送給用戶。當(dāng)然,所有數(shù)據(jù)都存儲(chǔ)在同一個(gè)云平臺(tái)環(huán)境中,所有有權(quán)限的用戶都可以訪問。

  • 快速實(shí)施——與桌面應(yīng)用程序相比,云計(jì)算應(yīng)用程序更易于使用,因?yàn)樗鼈儾恍枰脩舻娜魏翁囟ㄖR(shí)和技能。
  • 可用性——由于與各種設(shè)備的高度集成,只要有穩(wěn)定的互聯(lián)網(wǎng)連接,就可以隨時(shí)隨地使用云計(jì)算應(yīng)用程序。
  • 維護(hù)相對(duì)容易——在采用云計(jì)算解決方案的情況下,開發(fā)人員必須在一個(gè)運(yùn)營環(huán)境中調(diào)試和更新單個(gè)版本,該版本同時(shí)為所有用戶共享,例如桌面應(yīng)用程序。
  • 可擴(kuò)展性和靈活性——云計(jì)算解決方案可以在流量趨勢(shì)增長時(shí)配置其容量,并在流量下降時(shí)降低容量。即使在非高峰時(shí)段,云計(jì)算應(yīng)用程序的使用也可以防止企業(yè)為高性能服務(wù)器支付費(fèi)用。AWS和Azure等云服務(wù)提供商具有用于自動(dòng)化資源分配的PaaS解決方案,因此應(yīng)用程序的使用者不會(huì)為未使用的資源付費(fèi)。

云計(jì)算應(yīng)用開發(fā)現(xiàn)狀

IT市場(chǎng)如今在不斷變化,因此跟蹤最流行的技術(shù)非常重要。StackOverflow調(diào)查提供了有關(guān)最常用的腳本和標(biāo)記語言的詳細(xì)信息,其中Java、Node.js、ASP.NET等語言可用于后端開發(fā)。調(diào)查中還提供了有關(guān)用于前端開發(fā)的最流行JavaScript框架的統(tǒng)計(jì)數(shù)據(jù)。

以上已經(jīng)提到,企業(yè)選擇開發(fā)云計(jì)算應(yīng)用程序是為了降低成本、節(jié)省時(shí)間、實(shí)現(xiàn)高效率,以及提高性能。許多IT行業(yè)巨頭推出了自己的平臺(tái)即服務(wù)(PaaS)產(chǎn)品,為獨(dú)立軟件開發(fā)商(ISV)和企業(yè)提供可靠和安全的云托管服務(wù)??蛇x擇范圍很廣,可以滿足任何規(guī)模的云計(jì)算應(yīng)用程序的開發(fā)需求,且它們都有自己的優(yōu)勢(shì)和特點(diǎn)。因此選擇云計(jì)算服務(wù)提供商與選擇后端或前端技術(shù)一樣重要。除了節(jié)省成本等顯而易見的好處之外,它還會(huì)影響DevOps使用的難易程度、應(yīng)用程序的可擴(kuò)展性等。

例如,從歷史上看,Azure更好地與ASP.NET后端配合使用,而AWS更好地與JavaEE配合使用并且具有更好的微服務(wù)支持(例如Docker),這對(duì)于高負(fù)載Java Web應(yīng)用程序至關(guān)重要。

以下是廣受歡迎的一些PaaS提供商:

  • 亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)
  • Oracle Cloud
  • IBM Cloud
  • 谷歌云
  • Heroku

這些只是一些全球知名的云計(jì)算巨頭,當(dāng)然還有很多云計(jì)算服務(wù)商。而如今幾乎每家企業(yè)都在采用云計(jì)算服務(wù)。

在技術(shù)棧方面的年變化不大。JavaScript在Web技術(shù)中處于領(lǐng)先地位,而Python、Java和PHP則是后端編程語言中的佼佼者。諸如Dart之類的創(chuàng)新語言正變得越來越流行。它列入了最常用的語言列表中,而在2019年只有1%的程序員使用它。而在2018年,它根本沒有在任何StackOverflow的統(tǒng)計(jì)數(shù)據(jù)中提及。與此同時(shí),之前用于原生開發(fā)的Swift、Kotlin、Objective-C當(dāng)時(shí)也不為人所知。

在談到開發(fā)云計(jì)算應(yīng)用程序時(shí),人們需要了解三種主要的軟件交付模型:

  • 軟件即服務(wù)(SaaS)
  • 平臺(tái)即服務(wù)(PaaS)
  • 基礎(chǔ)設(shè)施即服務(wù)(IaaS)

SaaS應(yīng)用程序面向最終用戶。這意味著一旦構(gòu)建并設(shè)置了SaaS產(chǎn)品,它就完全可供客戶使用。只要互聯(lián)網(wǎng)連接穩(wěn)定,客戶就可以從任何設(shè)備獲得現(xiàn)成的產(chǎn)品,并且非常適合協(xié)作工作,例如Google Docs和Google Drive。

PaaS應(yīng)用程序大多是基于各種執(zhí)行環(huán)境、操作系統(tǒng)和數(shù)據(jù)庫的開發(fā)環(huán)境。它們要求開發(fā)人員部署應(yīng)用程序代碼,而供應(yīng)商執(zhí)行所有其他流程。PaaS支持通過輕松的私有或公共部署快速開發(fā)可擴(kuò)展的應(yīng)用程序。PaaS產(chǎn)品包括Heroku、Force.com、MSAzure、AWS等。

對(duì)于IaaS應(yīng)用程序,客戶需要的是中間件和支持,而供應(yīng)商負(fù)責(zé)數(shù)據(jù)存儲(chǔ)、虛擬化、網(wǎng)絡(luò)和服務(wù)器。這一選項(xiàng)的顯著弱點(diǎn)是客戶僅限于云計(jì)算服務(wù)商提供的云應(yīng)用程序開發(fā)工具。IaaS通常被Google Compute Engine、Amazon EC2等采用。

綜上所述,SaaS主要面向最終用戶,PaaS主要面向開發(fā)人員,而IaaS通常面向系統(tǒng)管理員。

云計(jì)算應(yīng)用程序的開發(fā)流程

無論創(chuàng)建什么樣的軟件,為哪一種平臺(tái)開發(fā),軟件開發(fā)生命周期(SDLC)都是開發(fā)過程中不可或缺的一部分。一旦專門的開發(fā)團(tuán)隊(duì)開始工作,就開始了SDLC流程。它意味著一系列的階段。瀑布、迭代、敏捷是SDLC方法。每一個(gè)階段都會(huì)影響操作的執(zhí)行方式,但無論模型如何,其階段的順序大多保持不變。

云計(jì)算應(yīng)用程序開發(fā)生命周期包括:

  • 需求分析——在這個(gè)階段,將會(huì)估算開發(fā)成本,并且設(shè)定開發(fā)時(shí)間表。如果出現(xiàn)一些組織方面問題,開發(fā)人員需要與客戶溝通解決。
  • 設(shè)計(jì)——這個(gè)階段基于設(shè)計(jì)師的工作。用戶界面(UI)/用戶體驗(yàn)(UX)專家會(huì)檢查未來程序的功能,以構(gòu)建一個(gè)涵蓋所有功能的界面。在工作完成之后,他們將其呈現(xiàn)為模型或線框。
  • 開發(fā)——這是持續(xù)時(shí)間最長的一個(gè)階段,在這個(gè)階段需要完成幾乎所有的編碼工作。程序員必須將其設(shè)計(jì)布局編碼到工作應(yīng)用程序中。IT專家通常將所有工作劃分為更小的部分,并根據(jù)事先設(shè)定的優(yōu)先級(jí)執(zhí)行任務(wù)。
  • 測(cè)試——這一階段涵蓋軟件測(cè)試生命周期(STLC)。除了SDLC外,它還包括質(zhì)量保證(QA)工程師交付最終產(chǎn)品的一系列階段。在這里,應(yīng)用程序代碼被發(fā)送給質(zhì)量保證(QA)工程師,他們使用特定的方法來測(cè)試和調(diào)試程序,使其以正確的方式工作。
  • 部署——這一階段將現(xiàn)成的程序交付給最終用戶,并在用戶的運(yùn)營環(huán)境中進(jìn)行設(shè)置。其部署包括發(fā)布、安裝、激活和版本跟蹤。
  • 維護(hù)——這個(gè)階段只有在軟件售出之后才會(huì)出現(xiàn)。它旨在解決應(yīng)用程序發(fā)布后彈出的所有問題。

云計(jì)算開發(fā)技術(shù)

[[436454]]

(1)后端技術(shù)

后端開發(fā)的技術(shù)堆棧多年變化不大,以下了解處于主導(dǎo)地位的開發(fā)語言和工具。

  • .NET

.NET是微軟公司開發(fā)的混合框架。它讓程序員有機(jī)會(huì)使用不同的語言、庫和工具來構(gòu)建可擴(kuò)展的Web、移動(dòng)和桌面應(yīng)用程序。在.NET支持的語言中,有C#、Visual Basic和F#。它還擁有自己的包管理器——NuGet,其中包含9萬多個(gè)包。.NET允許使用那些已經(jīng)存在的云計(jì)算服務(wù)器以及創(chuàng)建和部署用戶自己的云計(jì)算服務(wù)器。因此,它是云應(yīng)用程序開發(fā)的強(qiáng)大工具。

  • Java

Java是一種創(chuàng)建于1995年的成熟的多功能多用途編程語言。這些年來,Java獲得了世界各地IT人員的青睞。面向?qū)ο蟮幕陬惖恼Z言可以在開發(fā)云計(jì)算、移動(dòng)、桌面和Web應(yīng)用程序中實(shí)現(xiàn)。它有很多優(yōu)點(diǎn),例如定義明確的規(guī)范、預(yù)期的行為,從而減少開發(fā)時(shí)間、大量的工具和庫,以及無論底層架構(gòu)是什么,Java應(yīng)用程序都可以在任何設(shè)備上運(yùn)行。

Java適用于需要高難度計(jì)算和數(shù)據(jù)處理的企業(yè)級(jí)項(xiàng)目。然而,盡管具備諸多優(yōu)點(diǎn),Java開發(fā)人員認(rèn)為使用Java成本昂貴,并且在啟動(dòng)時(shí)使用這種語言被認(rèn)為是不體面的。

  • PHP

PHP設(shè)計(jì)用于在各種領(lǐng)域創(chuàng)建軟件。因?yàn)樗拇a是在Web服務(wù)器上用特定的解釋器處理的,所以它使PHP成為自定義云計(jì)算應(yīng)用程序開發(fā)的一種絕佳選擇。它經(jīng)常用于中型項(xiàng)目或初創(chuàng)公司。PHP擁有多達(dá)500萬名專業(yè)人員支持的開發(fā)者社區(qū),幫助用戶解決學(xué)習(xí)階段或后期出現(xiàn)的問題。其非常清晰的文檔簡化了學(xué)習(xí)過程。

由于數(shù)據(jù)庫集成是后端開發(fā)的關(guān)鍵方面之一,它使PHP成為最佳選擇之一,因?yàn)樗梢赃B接到各種數(shù)據(jù)庫,例如MySQL、PostgreSQL、Redis、MongoDB等。此外,PHP的托管服務(wù)成本低廉,因?yàn)镻HP應(yīng)用程序使用的組件(MySQL數(shù)據(jù)庫、HTTP服務(wù)器等)是免費(fèi)的。

  • Node.js

Node.js是一個(gè)執(zhí)行JavaScript代碼的開源運(yùn)行時(shí)環(huán)境。它的特殊性在于將整個(gè)軟件開發(fā)過程統(tǒng)一在一種語言(JavaScript)上,而不是在后端和前端使用多種技術(shù)。填補(bǔ)服務(wù)器端和客戶端之間的空白可以節(jié)省時(shí)間和資金等重要資源。Node.js允許構(gòu)建具有出色性能的高度可擴(kuò)展的應(yīng)用程序。它特別適合創(chuàng)建高流量的企業(yè)應(yīng)用程序,其中包括提出更高要求的網(wǎng)絡(luò)游戲或在線聊天。它具有廣泛的框架,可以簡化工作。

使Node.js在開發(fā)人員中非常受歡迎的另一件事是它很容易學(xué)習(xí),尤其是考慮到它擁有一個(gè)龐大的支持社區(qū)。

  • RoR

Ruby on Rails是一個(gè)用于后端開發(fā)的應(yīng)用程序框架。它的目標(biāo)是簡單的開發(fā)。由于類似英語的語法和易于理解的文檔,它相對(duì)容易掌握。這種簡單性可以最大限度地縮短開發(fā)時(shí)間。其高可讀性使更新和維護(hù)更容易,這反過來又使RoR開發(fā)極具成本效益。此外,Ruby on Rails有許多專門針對(duì)它的測(cè)試框架,這使得測(cè)試更快更容易。

[[436455]]

(2)前端技術(shù)

  • Angular

最流行的JavaScript框架之一是Angular。它于2016年發(fā)布,但其質(zhì)量已在IT社區(qū)中得到廣泛認(rèn)可。它是由2010年創(chuàng)建AngularJS的同一團(tuán)隊(duì)在TypeScript的基礎(chǔ)上構(gòu)建的。與其前身相比,Angular具有更簡單的基于組件的架構(gòu)以及JavaScript,其系統(tǒng)更加模塊化,并且支持異步編譯。

然而,盡管有良好的文檔和支持性社區(qū),但有IT專家通常不會(huì)選擇這項(xiàng)技術(shù),因?yàn)槠鋵W(xué)習(xí)曲線可能有點(diǎn)復(fù)雜。谷歌公司在谷歌云平臺(tái)或Ad Words等解決方案中使用Angular,這一事實(shí)證明了它的質(zhì)量。

  • React

React.js(簡稱React)是一個(gè)開源框架,特別適合開發(fā)云計(jì)算應(yīng)用程序。它是一個(gè)JavaScript庫,最初設(shè)計(jì)用于構(gòu)建單個(gè)網(wǎng)頁解決方案。它由Facebook公司于2013年創(chuàng)建,并立即被用于Facebook新聞源和Instagram。React的目標(biāo)是簡單、快速和高度可擴(kuò)展。它的特殊性是可重用的用戶界面(UI)組件,如果出現(xiàn)問題,可以節(jié)省大量時(shí)間和精力來重建整個(gè)應(yīng)用程序。

React還提供了服務(wù)端渲染,無需更新頁面。此外,與其他一些JS框架不同,React具有平滑的學(xué)習(xí)曲線,這使得那些曾經(jīng)使用過JavaScript的人很容易學(xué)習(xí)。

  • Vue.js

Vue.js是Evan You公司在2014年創(chuàng)建的另一個(gè)開源JavaScript框架。它是云計(jì)算應(yīng)用程序開發(fā)、單個(gè)網(wǎng)頁解決方案或網(wǎng)站建設(shè)的可靠選擇。Vue.js的組件庫基于HTML/CSS/JS的事實(shí)使得Vue.js非常容易掌握,因?yàn)槊總€(gè)Web和云計(jì)算開發(fā)人員都使用過這三種核心技術(shù)。高質(zhì)量的文檔也簡化了學(xué)習(xí)過程。它也非常靈活。這提供了構(gòu)建SPA(單頁應(yīng)用程序)以及一些單獨(dú)的交互式組件的可能性,這些組件可以在一些其他技術(shù)的幫助下輕松集成。

結(jié)論

很多企業(yè)采用云計(jì)算開發(fā)技術(shù)開發(fā)應(yīng)用程序,因?yàn)樗梢蚤_發(fā)出快速、可擴(kuò)展、安全的高性能的應(yīng)用程序。在決定開發(fā)應(yīng)用程序的類型時(shí),它有助于節(jié)省時(shí)間和成本,這也是決定應(yīng)用程序類型的一個(gè)關(guān)鍵因素。由于創(chuàng)新的工具、技術(shù)和通用的SDLC方法,開發(fā)方法已經(jīng)變得更好、更容易。

在確定技術(shù)堆棧、產(chǎn)品特性、團(tuán)隊(duì)組成和SDLC模型之后,開發(fā)團(tuán)隊(duì)就可以開始啟動(dòng)云計(jì)算應(yīng)用程序的開發(fā)工作。

原文標(biāo)題:How to Start Cloud Application Development,作者:Victor Osetskyi

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2011-12-06 10:10:59

云計(jì)算移動(dòng)應(yīng)用

2015-12-14 16:18:03

云計(jì)算物聯(lián)網(wǎng)應(yīng)用程序開發(fā)

2013-11-19 15:35:01

2012-02-08 15:06:31

ibmdw

2020-09-24 10:14:27

云計(jì)算云原生數(shù)據(jù)

2015-04-02 09:12:36

云計(jì)算Docker樂高積木

2023-04-25 14:33:48

2020-01-03 14:03:46

云計(jì)算開發(fā)云原生

2012-09-07 10:14:39

云計(jì)算ITJava

2022-09-19 00:37:13

SaaS云計(jì)算開發(fā)

2011-07-05 09:48:02

云計(jì)算遷移

2021-10-11 09:00:00

云原生Kubernetes安全

2020-12-28 14:40:47

云計(jì)算云應(yīng)用SaaS

2017-12-10 14:13:14

云服務(wù)云原生應(yīng)用程序

2012-07-18 11:29:32

ibmdw

2018-12-11 11:41:14

物聯(lián)網(wǎng)應(yīng)用程序IOT

2010-08-10 15:26:38

Flex應(yīng)用程序

2011-07-01 09:46:44

云計(jì)算遷移

2021-11-05 11:03:33

云計(jì)算開發(fā)技術(shù)

2019-07-18 12:37:20

高性能計(jì)算云原生公共云
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)