區(qū)塊鏈、NLP、AI驅(qū)動的工具、機(jī)器學(xué)習(xí)、無服務(wù)器計算和devops創(chuàng)新將在2016年改變開發(fā)者的生活。
開發(fā)人員應(yīng)該對2016年的機(jī)遇感到興奮,產(chǎn)品和工具圍繞著諸如區(qū)塊鏈、聊天機(jī)器人、無服務(wù)器功能和機(jī)器學(xué)習(xí)等技術(shù)在現(xiàn)實世界的項目中變得足夠成熟。與此同時,許多開發(fā)人員會擔(dān)心,在不影響安全性和性能的前提下,他們將無法更快地交付代碼和功能。但這方面也有好消息。
對于開發(fā)人員來說,2016年的定義是,在抓住轉(zhuǎn)型新機(jī)遇的同時,在應(yīng)對壓力的同時,要做得更多,質(zhì)量更高。以下是有關(guān)這些力量將在未來一年如何發(fā)揮作用的10個預(yù)測。
1. 利用區(qū)塊鏈的B2B交易進(jìn)入生產(chǎn)階段
企業(yè)已經(jīng)開始了解從區(qū)塊鏈啟動的交易中獲得的安全性、可靠性和效率。在未來的一年,開發(fā)人員將在整個金融服務(wù)和制造供應(yīng)鏈中實施許多區(qū)塊鏈用例。區(qū)塊鏈?zhǔn)且环N技術(shù),它可以使組織之間的高效、安全、不可變、可信的交易成為可能,而這些交易可能不會完全相互信任,從而消除中介。
考慮一家公司從一家離岸制造商訂購產(chǎn)品。這些產(chǎn)品通過船運公司發(fā)貨,通過海關(guān),通過另一家船運公司,最后到達(dá)買方。今天,每個步驟的驗證和調(diào)節(jié)主要通過電子郵件和電子表格進(jìn)行,其中涉及很多人和過程。區(qū)塊鏈通過不可撤銷的對區(qū)塊鏈分類賬的更新,消除了手工流及和解,當(dāng)最少數(shù)量的參與者說,"是的,這部分交易發(fā)生了。"
區(qū)塊鏈云服務(wù)將帶來可伸縮性、彈性、安全性以及與企業(yè)系統(tǒng)的預(yù)構(gòu)建集成,使開發(fā)人員更容易將重點放在業(yè)務(wù)用例上,而不是底層的hyperledger fabric實現(xiàn)。
2. 聊天機(jī)器人經(jīng)常與顧客和員工進(jìn)行真正的對話
人們已經(jīng)厭倦了需要多個移動應(yīng)用程序來做同樣的工作,就像三種不同的航空公司應(yīng)用程序一樣,通過不同的方式辦理登機(jī)手續(xù)并獲得登機(jī)牌。一種更好的方法是提供同樣的功能,但是通過手機(jī)消息上最流行的應(yīng)用程序。消息傳遞有三個具有吸引力的元素:即時、表達(dá)性和會話性,不需要培訓(xùn)。由于人工智能和自然語言處理技術(shù)的進(jìn)步,人們將會使用Facebook Messenger、Slack、微信、WhatsApp或像亞馬遜Alexa或谷歌Home這樣的語音助手,來問問題,并從智能機(jī)器人那里得到答案。
開發(fā)人員使用新的智能的bot構(gòu)建云服務(wù),可以快速地制造能夠理解客戶意圖、維護(hù)會話狀態(tài)的機(jī)器人,并在與后端系統(tǒng)集成的過程中智能地響應(yīng)。想象一下你在電影中看到的一件連衣裙的圖片,然后把照片傳給你最喜歡的服裝店的機(jī)器人,它使用圖像識別和人工智能來推薦相似的服裝。員工也可能是機(jī)器人的巨大受益者,比如詢問他們已經(jīng)離開了多少個假期,提交了一張幫助辦公桌的票,或者訂購了一臺替換的筆記本電腦,在那里,系統(tǒng)甚至知道員工有哪些筆記本電腦符合資格,并且可以根據(jù)他們的訂單提供狀態(tài)更新。考慮到對你自己的員工基礎(chǔ)的試驗更寬容,開發(fā)人員可能會首先利用他們的"造人"能力來建立和測試員工面對的機(jī)器人。
3. 按鈕消失了:AI變成了app界面
人工智能成為UI,意味著使用應(yīng)用和服務(wù)的同步、請求-響應(yīng)模型逐漸消失。智能手機(jī)仍然是"低智商",因為你必須去接他們,啟動一個應(yīng)用程序,要求做一些事情,最終得到回應(yīng)。在新一代智能應(yīng)用程序中,該應(yīng)用將通過推送通知啟動交互。讓我們更進(jìn)一步,使用人工智能的應(yīng)用程序、機(jī)器人或虛擬個人助手將知道該做什么、何時、何地以及如何做。就這樣做。兩個例子:
費用審批程序會注意你的報銷模式,開始自動審批費用報告的99%,只會讓你注意到需要你注意的罕見報告。
分析應(yīng)用程序了解底層數(shù)據(jù),業(yè)務(wù)用戶提出的問題,以及公司其他用戶對相同數(shù)據(jù)集的問題,并且每一天都提供了一個新的見解,分析人員可能沒有想到。當(dāng)組織收集更多的數(shù)據(jù)時,人工智能可以幫助我們了解需要問哪些問題的數(shù)據(jù)。
開發(fā)人員需要弄清楚哪些數(shù)據(jù)對他們的業(yè)務(wù)應(yīng)用程序非常重要,如何從事務(wù)中觀察和學(xué)習(xí),哪些業(yè)務(wù)決策將從這種主動的人工智能中獲益最多,并開始進(jìn)行試驗。嵌入式人工智能可以預(yù)測你需要什么,在合適的時間通過合適的媒體發(fā)布信息和功能,包括在你需要它之前,并自動完成你今天手動完成的許多任務(wù)。
4. 機(jī)器學(xué)習(xí)采用實際的、特定領(lǐng)域的用途
機(jī)器學(xué)習(xí)正從晦澀的數(shù)據(jù)科學(xué)領(lǐng)域轉(zhuǎn)移到主流應(yīng)用程序開發(fā)領(lǐng)域,這都是因為在流行的平臺上可以預(yù)先構(gòu)建模塊的可用性,而且在處理大型的歷史數(shù)據(jù)集時,它非常有用。通過機(jī)器學(xué)習(xí),最有價值的洞察力來自于背景,你以前做過什么,你問過什么問題,別人在做什么,正常的和反常的活動是什么。
但是要想有效,機(jī)器學(xué)習(xí)必須在一個領(lǐng)域特定的環(huán)境中進(jìn)行調(diào)整和訓(xùn)練,該環(huán)境包括它將分析的數(shù)據(jù)集和它將回答的問題。例如,設(shè)計用于識別安全分析師異常用戶行為的機(jī)器學(xué)習(xí)應(yīng)用程序?qū)⑴c設(shè)計用于優(yōu)化工廠機(jī)器人操作的機(jī)器學(xué)習(xí)應(yīng)用程序非常不同,這可能與基于微服務(wù)的應(yīng)用程序的依賴映射的設(shè)計非常不同。
開發(fā)人員需要更加了解領(lǐng)域特定的用例,了解要收集什么數(shù)據(jù),應(yīng)用什么樣的機(jī)器學(xué)習(xí)算法,以及要問什么問題。開發(fā)人員還需要評估特定領(lǐng)域的SaaS或打包應(yīng)用程序是否適合給定的項目,因為需要大量的培訓(xùn)數(shù)據(jù)。
使用機(jī)器學(xué)習(xí),開發(fā)人員可以構(gòu)建智能應(yīng)用程序來生成建議、預(yù)測結(jié)果或做出自動化的決策。
5. DevOps走向無操作
我們都同意devops對于幫助開發(fā)人員快速構(gòu)建新的應(yīng)用程序和特性非常重要,同時保持高質(zhì)量和性能。devops的問題是開發(fā)人員需要花費他們60%的時間在方程的操作一邊,從而縮短開發(fā)的時間。開發(fā)人員必須集成各種持續(xù)集成和持續(xù)交付(CICD)工具,維護(hù)這些集成,并隨著新技術(shù)的發(fā)布不斷更新CI / CD工具鏈。每個人都有CI,但沒有太多的人做CD。開發(fā)人員會堅持使用云服務(wù)來幫助鐘擺在2018年回歸開發(fā)。這將需要更大的自動化。
Docker提供了打包、可移植性以及進(jìn)行敏捷部署的能力。您需要CD作為Docker生命周期的一部分。例如,如果您正在使用容器,一旦您將代碼更改提交給Git,那么構(gòu)建的默認(rèn)構(gòu)件應(yīng)該是具有新版本代碼的Docker映像。此外,映像應(yīng)該被自動推送到Docker注冊表中,并將一個容器從映像部署到devtest環(huán)境中。在QA測試和部署到生產(chǎn)之后,應(yīng)該為您處理容器的編排、安全性和擴(kuò)展。商業(yè)領(lǐng)袖正在向開發(fā)者施壓,要求他們更快地提供新的創(chuàng)新;devops模型必須為開發(fā)人員騰出更多的時間使其成為可能。
6. 開源作為一種服務(wù),加速了開源創(chuàng)新的消費
開源模式仍然是創(chuàng)新的好引擎之一,但實現(xiàn)和維護(hù)創(chuàng)新往往過于復(fù)雜。例如:
您想要一個流數(shù)據(jù)/事件管理平臺,所以您可以轉(zhuǎn)向Kafka。當(dāng)您開始在規(guī)模上使用Kafka時,您必須設(shè)置額外的Kafka節(jié)點和負(fù)載平衡大型Kafka集群,隨著Kafka的新版本的發(fā)布更新這些集群,然后將此服務(wù)與您的其他環(huán)境集成起來。
您需要容器編排的Kubernetes。平臺應(yīng)該為您的Kubernetes集群服務(wù),而不是為您的Kubernetes集群處理升級、備份、恢復(fù)和補(bǔ)丁。Kubernetes每六個星期航行一次,所以這個平臺應(yīng)該有滾動部署和自我修復(fù)。
您需要為NoSQL數(shù)據(jù)庫提供Cassandra。您應(yīng)該希望備份(在計劃中是增量的或完整的)、補(bǔ)丁、集群、擴(kuò)展和高可用的Cassandra集群,由平臺來管理。
開發(fā)人員將越來越多地尋找云服務(wù),以便在處理這些技術(shù)的操作和管理方面的同時,從開放源碼中提供所有的高速創(chuàng)新。
7. 無服務(wù)器計算的架構(gòu)在生產(chǎn)中會變得很大
無服務(wù)器架構(gòu)的吸引力是顯而易見的:當(dāng)需要基于某個事件執(zhí)行我的代碼時,基礎(chǔ)架構(gòu)被實例化,我的代碼被部署和執(zhí)行,而我只在代碼運行的時候被收取費用。假設(shè)你想建立一個旅行預(yù)訂功能來預(yù)訂/取消航班、酒店和租車。每個操作都可以構(gòu)建為一個以不同語言編寫的無服務(wù)器函數(shù),如Java、Ruby、JavaScript和Python。沒有應(yīng)用程序服務(wù)器在運行我的代碼;相反,只有在需要時,函數(shù)才被實例化并在基礎(chǔ)結(jié)構(gòu)上執(zhí)行。
對于開發(fā)人員來說,將無服務(wù)器的函數(shù)串在一起執(zhí)行復(fù)雜的事務(wù)會帶來新的挑戰(zhàn):描述如何將這些函數(shù)鏈接在一起,調(diào)試分布式事務(wù),并決定如何在一個函數(shù)的鏈上失敗,從而創(chuàng)建補(bǔ)償事務(wù)來取消不適當(dāng)?shù)母?。尋找云服?wù)和開放源碼工具,比如FN項目,通過幫助開發(fā)人員輕松地管理服務(wù)器功能的編程、組成、調(diào)試和生命周期管理,并在筆記本電腦或on - prem服務(wù)器或任何云上部署和測試它們,從而繁榮發(fā)展。關(guān)鍵是要選擇一個提供大可移植性的無服務(wù)器平臺。
8. 關(guān)于容器的唯一問題是"為什么不呢?"
容器將成為開發(fā)/測試工作的默認(rèn)值,并成為生產(chǎn)應(yīng)用程序的常見內(nèi)容。在開源創(chuàng)新和行業(yè)標(biāo)準(zhǔn)的驅(qū)動下,希望在安全性、可管理性、編制、監(jiān)控和調(diào)試方面持續(xù)改進(jìn)。容器為驅(qū)動現(xiàn)代開發(fā)的許多趨勢提供了構(gòu)建塊,包括微服務(wù)體系結(jié)構(gòu)、云本地應(yīng)用程序、無服務(wù)器函數(shù)和devops。
容器在任何地方都是沒有意義的——例如,當(dāng)您需要一個更規(guī)定性的云平臺時,例如集成PaaS或移動PaaS,但是這些更高級別的云服務(wù)將自己運行在容器上,并且將是證明規(guī)則的異常。
此外,軟件許可模型用于高價值、商業(yè)、現(xiàn)場的軟件,將不得不接受容器采用的傳播。軟件的定價模型必須支持"打開"和"關(guān)閉"許可,因為容器被實例化、放大和縮小。
9. 軟件和系統(tǒng)可以自我修復(fù)、自我調(diào)節(jié)和自我管理
開發(fā)人員和生產(chǎn)操作團(tuán)隊正在從日志、web /應(yīng)用程序/數(shù)據(jù)庫性能監(jiān)視和用戶體驗監(jiān)視和配置中淹沒數(shù)據(jù)。此外,這些不同類型的數(shù)據(jù)都是豎向的,所以您必須將許多人帶入一個房間來調(diào)試問題。然后就是知識轉(zhuǎn)移的問題:開發(fā)人員花了大量的時間來講述他們的應(yīng)用程序的輸入和輸出、設(shè)置的閾值、用于監(jiān)視事務(wù)的服務(wù)器拓?fù)?,等等?br>通過聚合大量的數(shù)據(jù)到一個存儲庫(在日志、性能指標(biāo)、用戶體驗,和配置,例如),并應(yīng)用大量的計算能力,機(jī)器學(xué)習(xí),和專用算法,基于云計算的系統(tǒng)管理服務(wù)將大大緩解性能/日志/配置監(jiān)視。這些云服務(wù)將通過觀察事務(wù)來建立基線,通過觀察事務(wù)(從必須管理閾值來節(jié)省ops團(tuán)隊),并了解與事務(wù)自動關(guān)聯(lián)的服務(wù)器拓?fù)洹J褂冕槍@些基線的異常檢測,系統(tǒng)管理服務(wù)將自動能夠告訴開發(fā)人員,當(dāng)事情偏離正常的行為時,并能夠顯示特定事務(wù)的問題的根源。
開發(fā)人員需要考慮如何在編寫應(yīng)用程序時利用這種自動化,以便能夠在云中這些智能管理系統(tǒng)之上創(chuàng)建自管理應(yīng)用程序。
10. 高度自動化的安全性和遵從性努力成為開發(fā)人員的新同盟
盡管開發(fā)人員通常認(rèn)為安全性和遵從性是"其他人的工作"或"交付代碼的瓶頸",但基于機(jī)器學(xué)習(xí)和交付的綜合安全性和遵從性機(jī)制的出現(xiàn),將有助于使這些努力與快速的開發(fā)步調(diào)一致。具體地說,高度自動化的網(wǎng)絡(luò)防御將被部署到"上游",以識別和糾正開發(fā)和"下游"的潛在安全風(fēng)險,從而自動調(diào)整公司的安全配置文件,以適應(yīng)正在進(jìn)行的應(yīng)用程序和環(huán)境變化(識別攻擊、修復(fù)漏洞和評估持續(xù)的遵從性)。
在某些情況下,這種保護(hù)是必要的,持續(xù)的合規(guī)評估是GDPR和類似任務(wù)的標(biāo)志。開發(fā)人員、安全專業(yè)人員和最終用戶都將受益于在devops生命周期中更加嚴(yán)格的、自動化的安全方法。
文章標(biāo)題:10條關(guān)于2016年軟件開發(fā)的預(yù)測,不僅僅是區(qū)塊鏈
轉(zhuǎn)載來源:http://aaarwkj.com/news47/45447.html
網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營銷seo公司;服務(wù)項目有網(wǎng)站維護(hù)、軟件開發(fā)等
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)