華為云軟件開發(fā)云VS開發(fā)痛點(diǎn)=?

在軟件開發(fā)的過程中,是不是總會遇到這些問題:

搭建一個開發(fā)環(huán)境,用了九牛二虎之力,悲催的是竟然用不了……

團(tuán)隊同事突然出差,他寫的代碼出現(xiàn)問題,我卻不會改……

提升軟件件質(zhì)量靠代碼,交叉看、找大拿,簡直太累了……

頻繁修改提交代碼,本地記錄自己看著都頭疼……

……

這些問題盡管不是軟件開發(fā)過程中出現(xiàn)的全部障礙,但的確是開發(fā)者在工作過程中碰到的“神坑”,怎么規(guī)避?可以聽一聽華為云軟件開發(fā)云的專家怎么說!

關(guān)于開發(fā)環(huán)境不兼容的痛

據(jù)了解,華為云軟件開發(fā)云提供的是一站式云端DevOps平臺,其中包含的是端到端的工具服務(wù),這樣就會覆蓋不同的角色,包括管理、開發(fā)還有運(yùn)維,筆者理解其實這樣的一個平臺可以極大可能地解決整個鏈條上出現(xiàn)的諸多問題,例如開發(fā)環(huán)境不兼容、代碼檢查與整合等,而不用再尋找更多的解決方案分段解決問題。

在軟件開發(fā)云上,云端的開發(fā)環(huán)境被稱為CloudIDE。簡單來說就是打開一個瀏覽器,在瀏覽器中完成代碼的編寫和調(diào)試,不用特別安裝IDE的環(huán)境。據(jù)悉,這款云端的開發(fā)環(huán)境已經(jīng)可以做到12種主流語言的支持,并可以做到一鍵式自主選擇開發(fā)的技術(shù)框架棧,快速構(gòu)建開發(fā)環(huán)境,這就很好地解決了開發(fā)者在開發(fā)過程中勞心的問題。

華為云軟件開發(fā)云運(yùn)營總監(jiān)張勇

更重要的是,開發(fā)好的環(huán)境可以復(fù)制到團(tuán)隊其他程序員手中,避免了二次開發(fā)的時間浪費(fèi),既然可以復(fù)制就可以有效解決環(huán)境不一致的問題,就算團(tuán)隊中的成員突然出差,代碼出現(xiàn)問題需要補(bǔ)充以及修改,只要直接在自己的電腦上打開瀏覽器,就可以完成代碼的開發(fā)和修復(fù)工作,有效解決了開發(fā)者在開發(fā)過程中的勞力問題。

華為云軟件開發(fā)云高級產(chǎn)品經(jīng)理馬兵東對筆者說,這個環(huán)境中還集成了代碼倉庫、代碼檢查、代碼評審等相關(guān)功能,最終實現(xiàn)的目標(biāo)就是可以將開發(fā)環(huán)境的配置時間極大程度地縮短,由天級降到分鐘級,目前來看這個改變是有效的。

舉個例子,中譯語通(青島)有限公司企業(yè)大數(shù)據(jù)事業(yè)部副總經(jīng)理安青這樣總結(jié)CloudIDE在業(yè)務(wù)實踐中的表現(xiàn)?!按蠹铱梢钥吹?,我們公司做的國家級平臺比較多,在多平臺的開發(fā)環(huán)境搭建中,由于業(yè)務(wù)的多樣化屬性往往出現(xiàn)需要構(gòu)建多個開發(fā)環(huán)境的問題,這種情況非常耗時耗力,有時候由于環(huán)境版本和框架要求不同,會存在兼容性差的缺陷。”

解決這種問題,中譯語通選擇采用華為云軟件開發(fā)云,主要是由于其支持java、PHP、Python等多種主流開發(fā)語言,同時支持大數(shù)據(jù)、APP、web等多種應(yīng)用開發(fā)環(huán)境。統(tǒng)一的開發(fā)環(huán)境構(gòu)建功能為多種業(yè)務(wù)并行所要求的復(fù)雜的開發(fā)環(huán)境構(gòu)建提供了可能性,并同時降低了環(huán)境配置的成本。

客戶難以實時參與的痛

在敏捷開發(fā)的時代,一個好的產(chǎn)品、項目的標(biāo)準(zhǔn)就是要滿足客戶的需求并且及時響應(yīng)客戶的變化。在這方面大連華數(shù)大數(shù)據(jù)科技有限公司深有體會。

大連華數(shù)是一家專注于為工業(yè)、金融、政務(wù)等行業(yè)領(lǐng)域客戶,提供大數(shù)據(jù)技術(shù)產(chǎn)品、行業(yè)應(yīng)用、咨詢規(guī)劃一體化服務(wù)的高科技公司。CEO李闖向筆者介紹,其公司開發(fā)數(shù)控機(jī)床智能運(yùn)維云服務(wù)平臺時,便遇到了這種客戶無法實時參與項目、了解項目進(jìn)展、把控項目風(fēng)險、需求反饋不及時的情況。

采用華為云軟件開發(fā)云后,基于軟件開發(fā)云提供的一站式云端DevOps平臺,覆蓋了管理角色、開發(fā)角色還有運(yùn)維的角色,把這些角色放在開發(fā)閉環(huán)里面,使得項目完成度一目了然的,從而幫助項目管理者、最終客戶實現(xiàn)管理透明,項目透明。

代碼檢查太復(fù)雜的痛

都知道想要提升軟件質(zhì)量很重要的一方面就是代碼寫的好,但是代碼的優(yōu)化不能單純依賴人力,實際上更多的還要靠一些管理手段,華為云軟件開發(fā)云對此配置了代碼檢查的功能。華為云軟件開發(fā)云運(yùn)營總監(jiān)張勇表示,目前我們的代碼檢查可以在一定程度上替代人力,可以有效緩解有些緩解規(guī)模比較小的企業(yè)通過交叉檢查、聘用高水平人才替代檢查造成的效率較低的情況。

從現(xiàn)實出發(fā),如果代碼量較大也不支持這種人力形式的檢查方式,同時還會出現(xiàn)代碼剽竊的現(xiàn)象,有數(shù)據(jù)顯示,軟件開發(fā)云的代碼檢查系統(tǒng)中有1800多條規(guī)則,應(yīng)對常見的代碼問題是沒問題的。

此外這種設(shè)置可以做到提前發(fā)現(xiàn)代碼編碼的問題,架構(gòu)的問題及編碼風(fēng)格的問題,有效避免冗余代碼,最后還可以輔助程序員修改代碼。

據(jù)筆者了解,代碼檢查的設(shè)置并不在代碼倉庫中,而是有一個代碼檢查的引擎幫助完成,其中涉及到一個端到端的加密通道。每次進(jìn)行檢查的工作時,會將代碼放到規(guī)則庫中過濾,觀察代碼檢查得出的結(jié)論。目前來說這個代碼檢查的規(guī)則庫還并沒有固定的檢查以及更新頻率,但是有數(shù)據(jù)可以補(bǔ)充參考下:九月初為1425條規(guī)則,到上周看應(yīng)該是1873條規(guī)則。

值得一提的是,代碼檢查的規(guī)則本身支持一些用戶自定義適合企業(yè)的檢查規(guī)則。

那么軟件開發(fā)云代碼檢查功能這些規(guī)則從哪兒來?第一個來源是不斷把業(yè)界一些先進(jìn)的代碼檢查規(guī)則以及有些先進(jìn)公司分享出來的規(guī)則做出集成;還有一部分是根據(jù)華為本身的軟件開發(fā)經(jīng)驗的規(guī)則總結(jié);另一方面則是每上線一種成熟的開發(fā)語言必須會隨之配套相關(guān)的規(guī)則。

代碼檢查除了是開發(fā)者的一項福利之外,更重要的一方面,開發(fā)者本身的編程技巧的訓(xùn)練也可以通過1800多條代碼建議進(jìn)行提升,很大程度提高了程序員的編程技巧和編寫代碼的規(guī)范。

從初級研發(fā)工程師到資深技術(shù)專家的成長過程中,華為云軟件開發(fā)云可以更好地為初級研發(fā)人員提供可協(xié)作的在線編譯構(gòu)建能力,根據(jù)研發(fā)場景自定義代碼檢查規(guī)則集以及提供華為經(jīng)典開源代碼為指導(dǎo),從而加快員工的成長速度。

查看歷史記錄與代碼整合的痛

為什么要提高代碼合并的效率?以前中央式的代碼倉庫,程序員去做代碼合并的時候都是向同一個倉庫中不斷持續(xù)的完成合并這個行為,當(dāng)一個開發(fā)者去合并這個代碼的時候,會產(chǎn)生一些新的Gap,后面的開發(fā)者繼續(xù)合并的時候需要把前面的Gap一同合并上。

使用Git時,由于本地已經(jīng)存在了完整的歷史記錄,導(dǎo)致代碼提交的頻率不會像原來那么高。對此,華為軟件開發(fā)云一般構(gòu)建Feature的分支,一段時間內(nèi)只關(guān)注Feature分支就可以,然后再做一次代碼的合并,合并后會基于分支去開發(fā)commit,這樣粒度比較小,只需要解決一些小問題。另外Git本身會帶有一些智能合并的功能。

據(jù)悉,代碼倉庫有不同的分支,在遠(yuǎn)端的云上存在的分支數(shù)不會直接導(dǎo)致每個人的代碼在云端有多個版本的代碼,如果遠(yuǎn)端有三個分支的話,本地根據(jù)需要可能只有一個開發(fā)分支。

據(jù)了解,目前華為云軟件開發(fā)云已經(jīng)在大連、青島、福州等城市成立創(chuàng)新中心,提供線下技術(shù)支持,支撐產(chǎn)業(yè)轉(zhuǎn)型升級,在服務(wù)2000多家企業(yè),5萬多名開發(fā)者的同時,與清華、北大、北航等30多所高校也建立示范性軟件學(xué)院聯(lián)盟。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容