作者thinkniht (不下棋=.=)
看板Soft_Job
標題Re: [請益] 怎麼寫得清楚?
時間Sat Mar 17 01:10:20 2012
我覺得你對程式的態度與觀念是正確的
有的新手搞不清狀況
又想有產出 就直接亂動程式碼
結果產生的"副作用"一堆
不敢隨便亂動搞不清在做啥的程式是對的
對於不懂的程式使用註解和文件紀錄也是正確的
有時一行程式的撰寫原因可能會在別的檔案中
光看片段可能會有改錯的情況
所以我覺得有註解或文件可以看會比只看code要好
當然...文件的方式可以使用一些UML圖的方式來表示
先打草稿甚麼的也是正確的
有些人的做法是不做預先設計直接寫code
這樣會比較容易陷入混亂(正所謂當局者迷)
我覺得寫程式的人應該要非常清楚自己在寫甚麼
不能混亂
至於花很多時間讀別人的code是很正常的
因為很多人寫code是不考慮別人的閱讀性的
至於接收需求的方式
就要看提出需求的人了
有的人需求就隨便提
給的相關文件根本一般人都不懂
自己就覺得那樣很清楚了
軟體開發...有很多人都在亂搞
你不一定要跟著亂搞
但你應該要能讓自己在即使別人亂搞的情況下還能做事才行(茶)
※ 引述《p52189 (皮爺)》之銘言:
: 標題: [請益] 怎麼寫得清楚?
: 時間: Fri Mar 16 22:31:55 2012
:
: 大家好
:
: 菜鳥一隻想請教一下各位前輩
:
: 大家平常如何保持思路不斷,寫出來的東西清楚不亂?
:
: 我覺得自己腦容量很小....能暫存的東西非常非常少
:
: 寫小東西還好,同一支程式功能一多,就會很亂
:
: 尤其接別人寫過的東西更嚴重...
:
: 因為不敢亂動原本的碼,所以就會包起來然後東接西接
:
: 雖然是會跑,但是變得很難維護也很難debug
:
: 我現在會一邊寫一邊開個空白文件做筆記搭配註解使用
:
: 算是彌補腦容量太小的問題 冏
:
: 但覺得不是很好的解決方法
:
: 另外一個很不好的習慣(應該算是習慣吧)
:
: 就是我常漏東西
:
: 比如某A段要等到B段寫完才比較容易寫
:
: 但是不先把A段寫個輪廓然後註解,之後我會忘記要回來寫它...
:
: 或是一堆小錯誤總是一邊修一邊跑,觀察然後除錯
:
: 先打草稿是不是壞習慣?
:
: 總覺得好像是視野太狹窄的關係
:
: 我總是要花很多時間才能讀懂前人的code
:
: 然後跟讀外文文章感覺很像,就是讀到第三段的時候忘了第一段是在幹麻
:
: 要反覆讀很多次才能理解,而且到這時候根本整個都背起來了冏
:
: 後來用一邊讀一邊下註解當作翻譯,最後再review的方式,有改善了一些
:
: 我這樣是不是很奇怪...
:
: 請大家給一點除了轉行之外的建議吧
:
: 謝謝
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 114.44.16.67
: → Eior:拿個類別圖對照會不會比較好? 03/16 22:33
: → p52189:我現在寫的是PHP 前面沒有人那樣寫 我也沒有能力整個打掉 03/16 22:35
: → p52189:重寫@@ 03/16 22:35
: → milarfu:代表你還沒打通任督二脈~ 請繼續加油! XD 03/16 22:39
: → p52189:冏 寫多了會進步啊? 我希望 Q_Q 03/16 22:49
: → milarfu:不是只有寫..基本的觀念也要補齊 03/16 23:08
: → milarfu:不然你會永遠只能搬動函數, 不敢修改 XD 03/16 23:10
: → p52189:有些跟錢有直接相關的區域真的不敢亂動 03/16 23:13
: → p52189:不過並不是所有都這樣 我也在試著把眼光拉遠一點 03/16 23:14
: → andymai:如果前人寫的code有好架構~對閱讀就有幫助,反之如果連可 03/16 23:31
: → andymai:以問的人和參考文件都沒有~那當然就只好多看幾次來融會貫 03/16 23:31
: → andymai:通了~這都不是好現象~偏偏很多公司都這麼做... 03/16 23:33
: → andymai:倒也不必因此就對這行失望~轉行只是轉個面對的問題~各行各 03/16 23:35
: → andymai:業各公司都有好有壞... 03/16 23:36
: → andymai:回到原來的問題~怎樣寫才能清楚不亂?想當然爾是"歸類"~分 03/16 23:39
: → andymai:工合作~各個小功能像積木一樣組起來變成龐然大物~就像人體 03/16 23:41
: → andymai:的組成一樣~每個器官專司其職~哪邊壞就修哪邊... 03/16 23:43
: → andymai:找時間看看"深入淺出-設計模式"吧... 03/16 23:46
: 拆開是個好建議
: 不過我技術很爛XD
: 常常拆得不好 重用性太低或拆得不乾淨有些區塊部分粘死不知道該怎麼辦
: 也許拆久會比較有經驗
: 明天就回學校找找,圖書館好像有進這本
:
: → milarfu:所以就是經驗還不夠, 耦合分不乾淨, 加油! 03/17 00:21
: → milarfu:不過別太在意, 也可能真的分不乾淨~ 03/17 00:24
: 謝謝
: 好奇的問一下
: 大家拿到任務的時候
: 通常是有一份清單寫明要什麼
: 還是口頭(或MSN)告知居多?
: 我覺得自己對於聽懂需求好像有點障礙...
: 不是不知道該如何實作,而是不知道人家要什麼@@
: 阿..也是有不知道該如何實作的情況
: 不過那種的只要提示一下關鍵字就好,並不太難
: 一邊聽一邊一直問覺得不太好意思
: (但是聽不懂做錯更糟糕,只好還是硬著頭皮問)
:
: 冏
: 菜到不行,真糟
: ※ 編輯: p52189 來自: 114.44.16.67 (03/17 00:37)
: → andymai:經驗不足是一點~另外也可在分不乾淨的時候~先停下想想:你 03/17 00:32
: → andymai:真的分對了嗎??? 03/17 00:32
: → andymai:需求不懂就問很正常~除非做久了才容易在對方提什麼~就馬上 03/17 00:44
: → andymai:想到什麼~就連同樣是醫院~同樣有檢驗和檢查要做~但是每家 03/17 00:45
: → andymai:的流程和需求卻可能不同... 03/17 00:46
: → p52189:謝謝!!得到很滿足的答案!!我會繼續努力的!! 03/17 00:47
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.249.224
推 p52189:這樣乍看之下我好像做對很多事XD 但實際上我動作很慢... 03/17 10:52
推 viper9709:最後一句最中肯XD~ 03/17 11:28
→ yishin0517:繩d的是主管---所有人都完蛋了 03/17 13:18
TO p52189:
那你是想很快速的把事情做完(不見得能做好)
還是想多花點時間把事情做好呢?
要做好本來就是要花時間的...
要做得又快又好...那就是看做的人的功力與做事方式了
我覺得肯把事情做好就算不錯的了...
※ 編輯: thinkniht 來自: 122.116.39.75 (03/17 13:29)
推 p52189:我覺得自己花很多時間在鬼打牆...就是很低級的那種錯誤 03/17 18:46
→ p52189:所以即使是用最快速度來寫也比別人慢 冏 03/17 18:46