最近常抓一些時間出來Review別人的Code, 其實也不是真的太閒, 或是覺得自己寫的東西多好, 只是, 在強調共用性的基礎下, 看到合作的團隊寫出了一堆Naming差不多的Code時, 就會覺得該Review一下.
雖然說, Code要怎麼寫才是"好", 這種事是滿見人見智, 但如果我們把"好"定義在"彈性"上, 應該可以比較客觀一點吧?
SELECT id, type ,name, address FROM CLASS_ADDR WHERE type = 'A'
和
SELECT id, type ,name, address FROM CLASS_ADDR WHERE type = ?
這二種作法, 那一種比較有彈性一點?
一次又一次的提醒要考慮共用, 要避免hard code, 為什麼最後還是寫出這麼多亳無彈性的東西來咧?
明明是屬於特定功能的邏輯內容, 卻又為什麼要將它抽離到放置共用程式的地方呢? 取一些看似通用的名字, 其實卻是hard code, hard code, hard code...該抽離的不抽離, 不該抽離的抽了一大堆..
好不容易把相似的Class一隻一隻找出來, 請對方合併, 結果又是一次失望,
把不同Class的Code寫到同一隻Class裡, 再把Class的名字傳入, 作IF判斷式去執行那些原本寫在不同Class裡的Code, 這樣也能算合併嗎? 囧
我一點也不覺得對方團隊是笨蛋, 但為什麼就是喜歡用這種偷吃步的方法呢? 難道我就不會再去看改完的Code嗎? 囧
到頭來, 改來改去, 我的Review List還是落落長..