Re: [討論] 主管不認同書本的知識,說我沒學好程設

看板Soft_Job作者 (文思)時間8年前 (2016/05/08 10:27), 編輯推噓4(402)
留言6則, 4人參與, 最新討論串7/14 (看更多)
以下不見得跟 Java 有關,純粹討論一點關於函數參數過多可能 導致的問題 1.難以閱讀、修改不容易 函數的參數越多,表示一個人要使用或是編輯的時候,需要判斷 斷詞 (想不到比較好的說法) 的地方就越多,也越容易失誤。 有些編輯軟體可能會幫你 highlight 你目前編輯到的參數,或是 提供額外彈出的提示 (如自動完成) ,但不是所有的都會。也有 方法在寫的時候讓他更明確,如一個參數放一行,但也不是每個人 都喜歡這樣的 coding style。而且十個參數就是十行,也占據了 不少版面。 參數多,漏給參數的機會也增大。如果好死不死有許多類似的函數 多載 (在建構子遇到的機會應該不小?) 且參數型態又一樣,是不是 很容易呼叫到不正確的建構子呢? 此外, C++ / Java 有 namespace / package 要寫,參數型態本身 就已經夠長到不好閱讀了。 2.效能 & 空間 我不確定其他高階程式語言怎麼實作,至少在 C / C++ 裡面,某些 平台上最前面幾個 (0~4, 看平台) 參數是用 register 傳,剩下的 要放在stack 上。通常編譯器做最佳化的時候已經會直接一次把需要 的空間留下來,效能上大概不會有差,因為編譯器可以安排運算指令 讓需要傳的資料事先存在對的位址。但是堆疊的空間仍然是需要的。 在多緒執行的程式裡面,程式堆疊不一定如大家預期的是可以一直 成長的。在一些系統裡面,程式堆疊是固定大小,且這個大小還會 影響到開新的執行緒的速度。 最後,寫程式很多選擇都是取捨。要知道一個方法取什麼捨什麼, 才能真的判斷當下用這個方法適不適合。或許你的主管有他的想法 他沒講清楚 (可能他認為你還 junior? 我無從得知),也可能單純 是他鴨霸而已。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.30.76 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1462674456.A.BE6.html

05/08 11:11, , 1F
05/08 11:11, 1F

05/08 11:38, , 2F
05/08 11:38, 2F

05/08 11:45, , 3F
②效能的部份我從來沒有想到過 XD,學習了
05/08 11:45, 3F

05/08 11:45, , 4F
05/08 11:45, 4F

05/09 11:19, , 5F
從來不管效能 只在乎程式美不美
05/09 11:19, 5F

05/09 23:06, , 6F
推~
05/09 23:06, 6F
文章代碼(AID): #1NBgGOlc (Soft_Job)
討論串 (同標題文章)
完整討論串 (本文為第 7 之 14 篇):
文章代碼(AID): #1NBgGOlc (Soft_Job)