一、前言
UML分析、建模與設計 來自現實世界中的概念的抽象描述方法(摘取自《UML面向物件分析、建模與設計(第2版)》)
就我對UML分析與建模技術的認知,最早可追溯至2019年時的學習,也是在正式開發專案前,最后學習的一門設計類知識,我認為這是軟體開發者描述業務邏輯的最佳方式,
寫這篇博客,我是希望在未來,我的同事、合作者或者是交流人員,能夠擁有一定的建模習慣,或者在互相關注之后,能夠知道我的編程習慣是怎樣的,能夠擁有更好的默契和愉快的合作,
二、代碼注釋與UML語言
(代碼注釋)
在專案編碼程序中,是必不可缺的一個環節,也是作業組中合作交流的關鍵,在中大型專案中,如果個人的代碼、演算法、業務處理能力一般,但是注釋完善易懂的話,去請教大佬,還是會得到善意的幫助,就算在開發的程序中,遇到了bug,也能快速定位問題出現的位置,
但是大篇大論的語言表達總是蒼白無力,一個復雜的演算法或者業務邏輯,是很難使用語言(漢語、英語等)去表達的,就算表達出來了,理解這個邏輯也需要花費一定時間,
我舉兩個例子,
(第一個)甲和乙是室友,甲回到寢室,突然告訴乙:我丟,今天在路上遇到了一個腿長、漂亮(帥氣)的女孩(男孩),這么說乙能夠理解,無非就是表達一個身材好、吸人眼球的女孩(男孩),可以自動將思維帶入短視頻里的某一個up主或者正能量,
/ *
* 實作資料按某個要求排列,并自動將用戶愛好優先排列在最上層,(優先級:用戶愛好>某個要求)
* @引數a (什么意思,什么作用,有沒有關鍵作用)
...
* @developer [開發者]
* @see [相關類/方法]
* @since [產品/模塊版本]
* @deprecated
*/
public ...
(第二個)甲、乙、丙是室友,甲和乙回到寢室,甲對丙說:今天我們兩在商業街看到一個小姐姐,身材目測無限接近于黃金比例(0.618)、微胖、事業線驚人,可惜穿搭上有所欠妥,沒有完全展示出她的優點,但氣質彌補了這一問題(然后又描寫氣質),這樣表達也確實詳細,但是關注點太多,腦海生成出一個這樣的人,就比較緩慢,這時乙拿出手機將拍到的照片給丙看,這一切就明朗了(現實生活中可不能這么來,乙的行為是錯誤的,應該大膽上去加微信,大膽訪問空間),而個照片可以看做是UML分析、建模與設計,
/ *
* 呼叫了(方法1)(方法2)能夠實作對攝像機內頭像的實時捕獲,并同步生成什么樣的人臉資料,這個資料要進行什么樣的操作和匯出,才能完成對比
* @引數a (什么意思,什么作用,有沒有關鍵作用)
* @檔案b 資料是什么型別 識別轉換的資料排列方式
....
* @developer [開發者]
* @see [相關類/方法] [class1.java、class2.java、class.java]
* @since [產品/模塊版本]
* @deprecated
*/
public ...
(UML分析、建模與設計)
一般執行于專案編碼之前,是對一個模塊(功能)的具體(影像流程)分析與描述,開發程序能否順利,測驗結果能否過關,憑借于UML的設計嚴謹程度,當然也有一些厲害的、業務邏輯熟練的開發作業者,對于建模只是一張草圖而已,甚至建模軟體都不用打開,就能完整的開發出一個功能來的,也是非常常見,
就我22年2月份找的那份作業,一個負責金融交接功能模塊的小組,全小組就一個人,非常厲害的一位大佬,聽說是上海回來,之后回不去了,只好在本地老家就業,在一次聚餐時,因為兩個人都吃不了辣(我是因為打了疫苗,大佬是因為習慣了上海的飲食),有幸結識了這位大佬,進行了技術交流,聽他說,他處理這套邏輯已經7,8年,兼容不同的開發框架也有五、六種,反正對業務邏輯非常熟悉,全公司就他一個人熟悉金融交接,注釋隨便寫,建模就算了,
如果在我的組里,組長告訴我哪個功能模塊出現了bug,需要我去修改一下,注釋和建模描述不清,我可能會出于行內禮貌,重新定義一個方法、介面去取代他那個有問題的模塊,但如果全是黑黢黢的代碼,不好意思,請這位靚仔(靚女)和我進行作業銜接時,注意頭上那所剩不多的幾根毛的存在意義,當然替換了新方法,有可能回出現連鎖反應,導致其他方法出現故障,這個時候還是要盡量去重新定位和觀察被取代的代碼,貿然將自己的方法交上去,導致了這個問題,一般公司會完完整整的將問題全算你的頭上,如果只是重構,問題沒有得到解決,可以拖著這位同事來分擔火力,一切的一切都是他不寫注釋、不建模而導致我對這個問題不清楚,


三、開發作業中的UML
根據軟體三大生存周期:軟體定義時期、軟體開發時期和軟體維護時期,
UML分析、建模與設計的作業處于軟體定義后期和開發前期,分布于專案說明書的需求分析、總體設計、概要設計三個標題中,主要作用是為了用戶(領導)能夠淺顯看懂內部邏輯(拿了工資,幫他實作了這個功能沒,一般都是看頭看尾看大概)、開發期同事兼容其他功能、維護期維護人員能夠快速理解內部邏輯,
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/504491.html
標籤:其他
下一篇:用JavaScript撰寫JSX
