• Structurizr是一種Diagram as Code的生成工具,專為C4圖表而設的

    • 參考: Mermaid 及Plantuml也可以生成C4
  • 雖然是Diagrams as Code的工具,但你可以透過圖像化介面修改已生成的C4圖表,這點相當之有用

  • Structurizr把元件分成Model及View,一個檔案內可以有好幾個不同的View同時存在,並使用同一組Model,Model與Model之間的關係會自動寫入view中,也可以設定為不顯示,理論上可以令你快速地建立不同類型的C4圖表

  • 但現實沒有那麼美好,你未必想自動把所有關係都做進一張圖表中,找出不顯示的關係是挺花功夫的

  • 而且設計過於嚴緊,缺乏彈性,不同圖表可以使用的圖形並不一樣,也不一定能連線,看似合理的設計,實際使用時只會令人感到諸多不便

    • 例如說我想在Deployment Diagram中加入Person代表許可以用這部份的功能,但並不容許,最終我只能當成System並且把圖示修改成Person來個瞞天過海

結果:放棄使用,還是用Plantuml吧