2020年軟件開發(fā)的五大趨勢
在過去的幾年中,大量的軟件開發(fā)技術(shù)已經(jīng)發(fā)生了巨大的變化。DevOps成為一種規(guī)范,世界以應(yīng)用程序為中心,而框架技術(shù)正在如火如荼地進行。Sentry公司首席執(zhí)行官兼聯(lián)合創(chuàng)始人David Cramer預(yù)測了將在2020年出現(xiàn)的趨勢,并展望未來十年的發(fā)展。
在過去的十年中出現(xiàn)了一個中心主題:世界已經(jīng)變得以應(yīng)用程序為中心。從支付到共享租車,從在線購物到社交媒體,隨著用戶要求更多和更好的數(shù)字體驗,各行各業(yè)的組織都將其資源重新集中在構(gòu)建最佳應(yīng)用程序上。這釋放了2020年及以后趨勢,特別是圍繞前端開發(fā)以及支持它的工具和框架。
在進入新的十年時,人們可以期待以下幾點:
隨著能力的轉(zhuǎn)變,前端將滿足DevOps
人們與網(wǎng)站的互動方式不再只是營銷問題。用戶界面現(xiàn)在是關(guān)鍵的應(yīng)用程序代碼,它包含核心業(yè)務(wù)邏輯。應(yīng)用程序重要性的這種轉(zhuǎn)變意味著隨著開發(fā)和運營的合并,前端開發(fā)團隊將開始看起來更像產(chǎn)品團隊。
這些團隊正在部署自己的代碼并快速進行更改,以至于他們經(jīng)常移動得太快,以致于各個操作團隊無法獲得完整的上場景來減輕應(yīng)用程序錯誤。隨著流程成為集成和交付的連續(xù)周期,人們將看到這些前端團隊的技能更加通用,并負責開發(fā)、測試和操作。這些團隊將隨時待命,并與監(jiān)控工具進行更多互動以確保正常運行。那些編寫JavaScript的開發(fā)人員將學(xué)習(xí)如何分頁的知識。
工具和框架的狂熱將繼續(xù);疲勞會加劇
過多的工具、語言和框架為應(yīng)用程序開發(fā)生態(tài)系統(tǒng)增加了極大的復(fù)雜性。IT團隊面臨著將這些不同的語言和平臺互連以構(gòu)建應(yīng)用程序的挑戰(zhàn),這些應(yīng)用程序是當今數(shù)字經(jīng)濟中企業(yè)的命脈。
盡管有著工具和框架疲勞的呼聲,但到2020年仍沒有一個明確的解決方案。實際上,可能會有更多的干擾。盡管看起來React.js即將在前端開發(fā)方面取得勝利,但仍然有許多可行的競爭對手準備改變現(xiàn)狀。在后端,盡管近年來進行了重大創(chuàng)新,但仍然沒有標準化。PHP、Ruby、Python、Node.js、Java和.Net都在使用中,但尚無明確的獲勝者,并且在2020年不會改變。隨著團隊努力將所有這些都連接起來,甚至還有更多工具-其中許多將是開源的-將會集成技術(shù),但是復(fù)雜性和控制性的挑戰(zhàn)在變得更好之前將變得更加嚴峻。
JavaScript將贏得語言辯論,并成為現(xiàn)代應(yīng)用程序的粘合劑
如今,構(gòu)建現(xiàn)代Web應(yīng)用程序沒有一種真正的編程語言選擇,但是隨著前端之戰(zhàn)的日益激烈,JavaScript越來越流行。在接下來的幾年中,人們將看到一個明顯的向JavaScript的轉(zhuǎn)變,它將普遍地成為每個平臺上用戶界面的語言選擇。
將會出現(xiàn)更多工具并適應(yīng)特定于前端的應(yīng)用程序,而JavaScript將是連接所有工具的粘合劑。
轉(zhuǎn)向合并
近年來,創(chuàng)新揭示了來自大型供應(yīng)商、初創(chuàng)公司和開源項目的大量新工具,它們各自有望解決下一個重大問題。但是,在將不同成熟度級別的技術(shù)混合在一起時,要保持合規(guī)性和控制性是一項挑戰(zhàn)。
盡管未來十年肯定會帶來更多創(chuàng)新,但隨著不堪重負的IT團隊尋求簡化堆棧和降低風險的方法人們也可以期待這種趨勢將開始轉(zhuǎn)向平臺和工具的合并。提供跨多個平臺并無縫集成到企業(yè)環(huán)境中的通用解決方案的供應(yīng)商將繼續(xù)被采用。盡管企業(yè)可能會繼續(xù)將基礎(chǔ)設(shè)施管理工作轉(zhuǎn)移給第三方(云計算供應(yīng)商和SaaS提供商等),以重新分配他們的資源來建立業(yè)務(wù),但對于僅提供1%附加值的新工具的興趣卻會落空。
工程問題將與用戶問題保持一致,從而改變監(jiān)視應(yīng)用程序的方式
隨著人們在用戶界面上的投入越來越多(這將越來越成為實際的應(yīng)用程序),將看到工程方面的關(guān)注點與客戶方面的關(guān)注點更加接近,這意味著許多工具和責任制也將發(fā)生變化。
人們將需要監(jiān)視的不僅僅是后端服務(wù)器的可用性,還將需要監(jiān)視客戶與產(chǎn)品和業(yè)務(wù)的交互方式,因為每次應(yīng)用程序迭代都會對用戶體驗產(chǎn)生積極或消極的影響。當開發(fā)團隊對用戶交互和應(yīng)用程序性能有更全面的了解時,他們可以更有效地構(gòu)建可推動業(yè)務(wù)價值的應(yīng)用程序。