在SDWebImage的首頁看到了作者做的一份漂亮的UML類圖,很清晰的就能看懂整個項目的結構. 大學UML作為選修課程學習過,當時為了應付考試都是考前突擊,學的東西早已還給老師. 當時認為60分萬歲的選修課,在工作后卻常會用到的技能. 每一門課程都應該認真對待,沒有無用的知識.
這里對UML中的類圖做一個記錄.
類

uml_class.png
接口

UML_interface.png
關系
在UML類圖中,常見的有以下幾種關系: 泛化(Generalization), 實現(xiàn)(Realization),關聯(lián)(Association),聚合(Aggregation),組合(Composition),依賴(Dependency)
泛化

UML_泛化.png
泛化關系是表示一種繼承關系,用帶三角箭頭的實線表示.
實現(xiàn)

UML_實線.png
實現(xiàn)關系是類與接口的關系,用帶三角箭頭的虛線表示.
關聯(lián)

UML_關聯(lián)2.png
關聯(lián)關系是便是一種擁有的關系,是一個類可以知道另外一個類的屬性或方法.
關聯(lián)關系的表示是帶有普通箭頭的實線.
關聯(lián)又有單向關聯(lián)和雙向關聯(lián),雙線關聯(lián)的線有兩個箭頭,或者不帶箭頭.
聚合

UML_聚合.png
聚合關系是關聯(lián)的一種,是整體與部分的關系.部分離開整體可以單獨存在.
是帶有空心菱形的箭頭線, 菱形的一是是整體,箭頭的一端是部分.
組合

UML_組合.png
組合關系也是整體與部分的關系,但是部分無法離開整體單獨存在.
是帶有實心菱形的箭頭線, 菱形的一是是整體,箭頭的一端是部分.
依賴

UML_依賴.png
依賴關系是一種表示使用的關系.即一個類的實現(xiàn)需要另外一個類的協(xié)助. 比如說 使用config初始化對象. 局部變量,方法的參數(shù)等.
用帶有虛線的箭頭表示,箭頭端是被使用者.
一個完整的類圖

SDWebImageClassDiagram.png
最后
一個線上的UML繪圖網(wǎng)站https://www.processon.com