閱讀475 返回首頁    go 阿裏雲 go 技術社區[雲棲]


阿裏正式發布《Java開發手冊》終極版!

本文講的是阿裏正式發布《Java開發手冊》終極版!,別人都說我們是碼農,但我們知道,自己是個藝術家。也許我們不過多在意自己的外表和穿著,但我們不羈的外表下,骨子裏追求著代碼的美、質量的美。而代碼規約其實就是一個對美的定義。

image

《阿裏巴巴Java開發手冊》係統性地從編程、數據庫、異常日誌、工程結構、安全、單元測試六大方麵,總結出優秀Java開發者必備的技術素養。時值手冊發布一周年之際,阿裏官方對外正式公開《阿裏巴巴Java開發手冊》終!極!版!!!

該版本將是阿裏官方對外釋放的最後一個PDF版本,也是史上內容最全、修正最為徹底的一個版本,並且史無前例地增加了單元測試規約,絕對值得珍藏。


image


image

單元測試是一件老生常談,深入人心的事情,但是喜歡寫單元測試的開發同學少之又少。單元測試似乎是功不在當下的事情,快速完成需求成為了王道。在工作量評估的時候,如果開發同學說需要花上若幹天時間來寫單測,產品可能就會磨刀霍霍殺來。

盡管如此,單元測試是一件有情懷,有技術素養,有遠期收益的工作。它能夠有效監測軟件模塊質量、促進代碼深度優化,進而降低線上故障率,長期執行有助於提升項目迭代效率,並增加重構自信,減少重構成本。簡直就是bug滅絕器有木有!

image


所以此次在終極版本中,阿裏根據內部單元測試的實踐經驗,詳細描述了單元測試的相關原則和重要建議。

AIR原則:

A:Automatic,單元測試需要測試框架自動化執行,才有意義。
I:Independent,單元測試用例之間互相獨立,不存在依賴關係。
R:Repeatable,單元測試可以被重複執行,且結果一致。

BCDE原則:

B:Border,邊界值測試,包括循環邊界、特殊取值、特殊時間點等。
C:Correct,正確的輸入,並得到預期的結果。
D:Design,與設計文檔相結合,來編寫單元測試。
E:Error,強製錯誤信息輸入(如:非法數據),並得到預期的結果。

更多關於單元測試的內容、優化項目,歡迎查閱《阿裏巴巴Java開發手冊》終極版。


image

為了幫助開發者更好提高編碼效率,阿裏巴巴基於手冊內容,獨立研發一套自動化IDE檢測插件。該插件在掃描代碼後,將不符合《手冊》的代碼按block/critical/major三個等級顯示在下方;實時編寫代碼時,還會給出智能提示,告訴你如何編寫可以更優雅;對於曆史代碼,部分規則實現了批量一鍵修複的功能。是不是很方便?

據悉,10月14日,杭州雲棲大會研發效能峰會場,阿裏將正式對外開放插件及源碼。屆時,阿裏技術公眾號將第一時間公開免費下載地址。

編碼規範的價值在業內有著廣泛的共識,但在現實中卻被否定得一塌煳塗。工程師曾經最引以為豪的代碼,因為編碼規範的缺失、命名的草率而全麵地摧毀了彼此的互信,並嚴重地製約了彼此的高效協同。工程師一邊吐槽別人的代碼,一邊寫著可能遭受同樣命運的代碼,不時的推倒重建或心驚膽戰的維護似乎成了工作的主旋律。


image


《阿裏巴巴Java開發手冊》的使命,在於幫助工程師脫離繁瑣,重燃技術激情。業務會變、玩法會變、需求會變,做好代碼質量的決心永不會變。

手冊雖有終極版,技術沒有終點站。不斷打磨技術,成為更好的自己,我們共勉。

來源:阿裏技術
原文鏈接

最後更新:2017-09-25 10:32:54

  上一篇:go  怡海軟件:ERP選型需要關注的幾點?
  下一篇:go  一個理由告訴你 為什麼互聯網團隊招新的時候要首選妹子