在開始設計新的技能樹——Sherlock的同時,結合一下原有的技能樹,說說如何去設計,新的技能樹還很丑。
Graphviz (英文:Graph Visualization Software的縮寫)是一個由AT&T實驗室啟動的開源工具包,用于繪制DOT語言腳本描述的圖形。它也提供了供其它軟件使用的庫。Graphviz是一個自由軟件,其授權為Eclipse Public License。其Mac版本曾經獲得2004年的蘋果設計獎。
一個簡單的示例代碼如下:
graph example1 { Server1 -- Server2 Server2 -- Server3 Server3 -- Server1}
執行編譯后:
dot -Tjpg lz.dot -o lz.jpg
就會生成下面的圖片
接著我們便可以建立一個簡單的模型來構建我們的技能樹。
先以JavaScript全棧作一個簡單的示例,他們可能存在下面的依賴關系:
即Web前端依賴于JavaScript、HTML、CSS,而Node.js依賴于JavaScript,當然我們也需要數據的支持,大部分的網站都是數據驅動型的開發。而構成完成的開發鏈的則是前端 + 服務端。
于是我們有了這張圖:
而我們的代碼是這樣的:
digraph tree { nodesep=0.5; charset="UTF-8"; rankdir=LR; fixedsize=true; node [style="rounded,filled", width=0, height=0, shape=box, fillcolor="#E5E5E5", concentrate=true] "JavaScript" ->"Web前端" "HTML" -> "Web前端" "CSS" -> "Web前端" "Web前端" -> "Web開發" "JavaScript" -> "Node.js" -> "Web服務端" "SQL/NoSQL" -> "Web服務端" "Web服務端" -> "Web開發" }
上面舉出的是一個簡單的例子,對應的我們可以做一些更有意思的東西,比如將dot放到Web上,詳情見下一篇。