[問題] 寫程式架構的文件

看板C_and_CPP (C/C++)作者 (實況「野球」魂)時間15年前 (2010/11/10 23:59), 編輯推噓7(7043)
留言50則, 8人參與, 最新討論串1/1
我最近想要把寫的C++程式整理成一些說明文件, 就是類似方塊圖,可以很清楚知道,class的分類有哪些? 誰使用了誰之類的文件, 除了自己review方便外,別人看的也清楚, 但是不知該用什麼樣的軟體好呢? Visio裡好像有些範本可以使用, 但我不太懂那些範本modal的意思? 不知各位有沒有做過類似乎的事情, 可以推薦一下如何做呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.76.249.192

11/11 00:01, , 1F
現在不是都用UML嗎
11/11 00:01, 1F

11/11 00:03, , 2F
謝謝樓上,我要是要這個,我要來好好研究一下~~~
11/11 00:03, 2F

11/11 00:04, , 3F
比較理想的做法,好像是要先寫文件再寫程式...XDD
11/11 00:04, 3F

11/11 00:04, , 4F
就是
11/11 00:04, 4F

11/11 00:04, , 5F
不過通常是用反向工程, 先寫好程式再產生UML, 所以不
11/11 00:04, 5F

11/11 00:04, , 6F
對~~~我就是發現愈寫愈亂,所以覺得應該要寫文件才對。XDD
11/11 00:04, 6F

11/11 00:05, , 7F
用太清楚了解其中很細節的地方, 但是直接從類別圖等設
11/11 00:05, 7F

11/11 00:06, , 8F
計, 可以把你的思維跟實作細節分開, 基本上可以設計的
11/11 00:06, 8F

11/11 00:07, , 9F
的比較「完美」, 不過還是要非常有經驗才辦得到
11/11 00:07, 9F

11/11 00:08, , 10F
軟體的話可以試試 StarUML
11/11 00:08, 10F

11/11 00:09, , 11F
google 查 UML 類別圖,就會有文件了
11/11 00:09, 11F

11/11 00:10, , 12F
但是很現實的一點, 雖然這個可以做為溝通的語言, 但是
11/11 00:10, 12F

11/11 00:12, , 13F
前提要在「雙方都懂」的情況下才適用, 比如設計模式雖
11/11 00:12, 13F

11/11 00:12, , 14F
然好用, 也不是每個人都會這套
11/11 00:12, 14F

11/11 00:13, , 15F
有的時候太"良好"的設計 好像是在給別人找麻煩 XDD
11/11 00:13, 15F

11/11 00:14, , 16F
畢竟大多都是習慣看比較差的程式碼, 說真的我用 fill
11/11 00:14, 16F

11/11 00:15, , 17F
來初始化陣列會罵到臭頭, 反而用迴圈一個個 assign 就
11/11 00:15, 17F

11/11 00:16, , 18F
很受歡迎 > <
11/11 00:16, 18F

11/11 00:16, , 19F
^被
11/11 00:16, 19F

11/11 00:17, , 20F
阿搞混, 現在是講架構...Orz
11/11 00:17, 20F

11/11 00:18, , 21F
應該說的是, 很多人只要「現在」完成他們的需求就好,
11/11 00:18, 21F

11/11 00:18, , 22F
是被公司同事罵?
11/11 00:18, 22F

11/11 00:19, , 23F
架構好壞都沒什麼差別, 所以未來加入新需求時才會抱
11/11 00:19, 23F

11/11 00:19, , 24F
連連, 而且不會追求根本的解決方法, 只有惡性循環而已
11/11 00:19, 24F

11/11 00:20, , 25F
「program for the future」真的很重要, 當初罵我的是
11/11 00:20, 25F

11/11 00:21, , 26F
其實就是這樣接手的人很痛苦,又沒有guts砍掉重練....0rz
11/11 00:21, 26F

11/11 00:21, , 27F
教 C++ 的老師, 現在是我BOSS...
11/11 00:21, 27F

11/11 00:22, , 28F
喔,瞭解
11/11 00:22, 28F

11/11 00:23, , 29F
不過UML市面上的書有越出越多,應該前景良好啦
11/11 00:23, 29F

11/11 00:24, , 30F
感謝l大的說明,獲益良多呀~~~
11/11 00:24, 30F

11/11 00:24, , 31F
順便再問一下,staruml跟visio哪個比較好用呢?
11/11 00:24, 31F

11/11 00:25, , 32F
哈哈...教得好真的會讓你有種「學這些就夠了」的感覺
11/11 00:25, 32F

11/11 00:25, , 33F
UML的書越出越多阿... 應該是在騙錢吧 XD
11/11 00:25, 33F

11/11 00:26, , 34F
那麼多UML有的沒的 真的畫UML的 有幾個有實作的經驗?
11/11 00:26, 34F

11/11 00:26, , 35F
visio 我沒用過耶, staruml 真的蠻適合新手的, UML 可
11/11 00:26, 35F

11/11 00:26, , 36F
多的是review補class 幫Boss畫圖 那個有用嗎?
11/11 00:26, 36F

11/11 00:27, , 37F
VISIO只有很基本的功能,完全不推薦
11/11 00:27, 37F

11/11 00:27, , 38F
以參考 Martin Fowler 的 UML精華
11/11 00:27, 38F

11/11 00:27, , 39F
UML的使用應該是在coding之前 對class的互動有大概的定義
11/11 00:27, 39F

11/11 00:28, , 40F
而不是畫的漂漂亮亮的 當成作業還是烤雞的加分 真是...
11/11 00:28, 40F

11/11 00:29, , 41F
其實一部分畫圖是跟寫碼同時進行的, 只有在實作的時候
11/11 00:29, 41F

11/11 00:29, , 42F
才能更明確知道該怎麼設計, 所以軟體開發法才會有某幾
11/11 00:29, 42F

11/11 00:29, , 43F
種特別受歡迎
11/11 00:29, 43F

11/11 01:20, , 44F
手動畫太累了吧, 直接 doxygen 就一次全部生出來了 @"@
11/11 01:20, 44F

11/11 01:23, , 45F
手畫還會畫錯, 改程式還要手動改圖 XD 當然是用程式作
11/11 01:23, 45F

11/11 01:23, , 46F
call/caller/collaborate graph 還有繼承樹一次到位
11/11 01:23, 46F

11/11 01:27, , 47F
產生 document 我還是比較習慣用 XML 寫 XD
11/11 01:27, 47F

11/11 05:07, , 48F
推doxygen
11/11 05:07, 48F

11/11 07:01, , 49F
doxygen 在我印象中,對一些 #ifdef 之類的東西會出錯。
11/11 07:01, 49F

11/11 07:01, , 50F
但是還勉強可以用,只是有些地方不能太相信它。
11/11 07:01, 50F
文章代碼(AID): #1Csi5YF9 (C_and_CPP)
文章代碼(AID): #1Csi5YF9 (C_and_CPP)