VISIO, EA, STARUML,ROSE都用過, 感覺出來的圖中規中矩, 都不夠現代.不知道2.0時代有什么新一點的好看一點的工具?
PS: 當然,畫UML,一般情況下是關注內涵. 不過某些情況下需要找一些Q一點的靚一點的工具.
## 訴求是什么?
在當年提問的那個時間點,UML 備受追捧。但這幾年下來,不太迷信 UML 了,而是更關注於用適當易懂的方式去傳達意圖。
那么,作為一個研發工程師,日常需要畫的圖主要有:
- 原型圖:偶爾畫,僅在一桿到底做一些自用的生產力平台時需要兼職寫下需求文檔。
- 思維導圖:經常畫,用於整理思路或編寫大綱。
- UML(用例圖、流程圖、時序圖、架構圖):經常畫,用於編寫系分文檔。
在我的評價體系里面,好不好用的關鍵點是:
- 易用、美觀:顏值很重要,見文如見人,產出的文檔和代碼,必須要賞心悅目。
- 高效、協作:團隊協作很重要,故需要有版本管理,並隨時可以被同事接手繼續修改。
## 這些年折騰過的繪圖工具
### 第一階段:古代
這個階段,市面上的產品基本都是單機的,只能導出圖片來插入到 Word 文檔中,團隊協作只能通過 Git,無法 Diff 和解決沖突。
如 Enterprise Architect 是很不錯的 UML 工具,長相中規中矩,支持模塊之間的連線,不過只支持 Windows。

AxureRP 是產品經理用的較多的原型圖工具,簡單易用。我那時候更喜歡用 Balsamiq Mockups,線框圖風格,支持語法表達。

### 第二階段:近代
這個階段,生產力工具換為 Mac 了,文檔編寫開始使用 Confluence 進行在線協作。
- 用過 Keynote,易於上手,但屬於純圖形,不支持連線維持,不便於維護,僅用於做 PPT 匯報。
- 曾短暫用過 ProcessOn 這類在線繪圖服務,圖標類型和長相都還不錯,但存在的問題主要是收費及安全問題,畢竟企業內部的一些流程圖和架構圖,不適合放公網服務。
- 最后咬牙買了 OmniGraffle 這個 Mac 上最貴最好用的繪圖工具,確實很不錯,大部分的圖都可以很容易畫出來。

這個階段最大的問題還是流程的割裂上,因為文檔編寫已經開始在線協作化,但圖片繪制沒法融入進去,還是必須導出圖片貼進去,以及 Git 共享圖片源文件。
### 第三階段:當代
這階段,開始了 Egg 的開源,也愛上了使用 Markdown 來寫文檔,是 GitHub 的重度用戶。
同時,語雀 出生了,它的產品理念和形態都很像文檔界的 GitHub,並支持類似 Typora 的所見即所得的 Markdown 編輯器,一見鍾情。
由於 Markdown 是純文本的,於是順其自然的發現了 PlantUML,這是一個很 Geek 的圖形表達語言,它吸引我的地方:
- 類 Markdown 那樣讓你自然的畫圖,絕大部分情況下,你不需要太關注語法和布局,很自然的畫即可,心智體驗非常舒服。
- 可多人協作,可版本跟蹤,可以直接寫在 Markdown 中,避免文檔維護的割裂。
- 它是一種「繪圖語言」而不是「繪圖工具」,生態不錯,受到廣泛支持,各大 IDE 和 語雀 等知識系統都支持。
如下圖,一個簡單的示例,一句 User -> Browser 就能表達一個時序,多么直觀簡潔啊。

但 PlantUML 的缺點是:
- 畫時序圖、類圖等很簡單,但其他圖就有點復雜,稍微有點 Geek。
- 顏值默認過關,但定制性不夠,稍微修飾下就會導致源文件很大,有違初心。
小結下,這個階段:
- 大部分文檔都在語雀編寫,時序圖等用 PlantUML 直接內嵌在語雀文檔中,支持團隊在線協作。
- 一部分架構圖用 OmniGraffle 畫,導出圖片貼進去,通過釘盤共享,但協作不便。
- 思維導圖,用於整理大綱,使用 XMind,導出圖片(這階段語雀腦圖還不好用)。
- 原型圖大都用 AxureRP 或 Sketch,語雀支持導入且可以在線評審。
### 第四階段:未來
前幾天,語雀最新版本發布了 『合體!思維導圖+流程圖+繪圖=?』
試用幾天后,感覺幾乎完美契合了我的所有訴求:
- 易用、美觀:不錯的顏值,打開即用,心智體驗舒服。
- 高效、協作:在線多人協作,可版本跟蹤,和文檔融為一體。
我終於可以在語雀一站式的完成整個系分文檔的編寫,並和同事進行協作,也不用擔心沖突問題,體驗非常的自然舒爽。

思維導圖也可以直接用語雀編寫了,由於是自由畫板,比起 XMind 會更舒服,可以任意組合。

不過畢竟是剛出來,還存在不少待優化的問題:
- 編輯能力比起 OmniGraffle 還有不少差距,需要持續迭代。
- 內置模板和組件還太不夠豐富。
不過,我對語雀有信心,『一站式、高效率、在線協同編輯』就是未來。
再 Show 幾張最近畫的圖:

流程

