Re: [討論] 因為空格~我離開了一間公司
※ 引述《twoseven (Tse)》之銘言:
: 當然這還是要看愈到的情況
: 除非真的是個別的條件又有個別的支線要處理 我才會想包起來
: 我曾經看過一個vb6用包起來只是判斷條件就包了10層..還好很整齊
: 不過要是哪天突然碰到要維護光是要決定改第幾層就很頭大
: 新手上路..請盡量鞭策:)
就我個人三種風格都碰過的經驗來說,用Nested if有個很明顯的問題,就是
維護性。
軟體有種自我繁殖的惰性,所以當一個程式碼用了三層的if來做validation,
很難不保證未來接手的人會讓他長出第四五六層。
這時候guard condition或者short circuit evaluation在維護性上就有其優勢。
所以在我們公司裡面做code review時我反而會要求相反的趨勢,把Nested if改
成guard condition或者short circuit evaluation......
維護過慢慢長出十層if+else的程式後,我一直覺得Nested if是趕專案加上懶惰
造成的產物,懶惰會付出代價的......
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 50.156.87.148
※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1410077823.A.0D7.html
→
09/07 17:12, , 1F
09/07 17:12, 1F
→
09/07 17:15, , 2F
09/07 17:15, 2F
→
09/07 17:16, , 3F
09/07 17:16, 3F
→
09/07 17:17, , 4F
09/07 17:17, 4F
→
09/07 17:20, , 5F
09/07 17:20, 5F
推
09/07 17:52, , 6F
09/07 17:52, 6F
→
09/07 17:57, , 7F
09/07 17:57, 7F
推
09/07 18:04, , 8F
09/07 18:04, 8F
→
09/07 18:05, , 9F
09/07 18:05, 9F
→
09/07 18:06, , 10F
09/07 18:06, 10F
推
09/07 18:07, , 11F
09/07 18:07, 11F
→
09/07 18:08, , 12F
09/07 18:08, 12F
→
09/07 19:07, , 13F
09/07 19:07, 13F
推
09/07 19:43, , 14F
09/07 19:43, 14F
→
09/07 19:44, , 15F
09/07 19:44, 15F
→
09/07 20:23, , 16F
09/07 20:23, 16F
→
09/07 20:24, , 17F
09/07 20:24, 17F
推
09/07 20:31, , 18F
09/07 20:31, 18F
→
09/07 20:32, , 19F
09/07 20:32, 19F
→
09/07 20:32, , 20F
09/07 20:32, 20F
→
09/07 20:33, , 21F
09/07 20:33, 21F
→
09/07 20:34, , 22F
09/07 20:34, 22F
推
09/07 20:47, , 23F
09/07 20:47, 23F
推
09/07 20:56, , 24F
09/07 20:56, 24F
推
09/08 00:00, , 25F
09/08 00:00, 25F
→
09/08 00:01, , 26F
09/08 00:01, 26F
推
09/08 00:03, , 27F
09/08 00:03, 27F
推
09/08 22:14, , 28F
09/08 22:14, 28F
→
09/09 00:24, , 29F
09/09 00:24, 29F
推
09/09 13:27, , 30F
09/09 13:27, 30F
討論串 (同標題文章)
完整討論串 (本文為第 11 之 21 篇):
討論
19
65