[問題] 命名習慣為何完全用readXXX取代getXXX

看板java作者 ( U U)時間6年前 (2018/01/11 21:55), 6年前編輯推噓4(4018)
留言22則, 11人參與, 6年前最新討論串1/4 (看更多)
小弟多年前在一家公司上班,負責寫Android App 公司裡的神級前輩規定,寫Java要避免使用getXXX/setXXX作為method的命名習慣 要改用readXXX/writeXXX,或retriveXXX/putXXX...之類的都可以 當時試著詢問原因,不過只被冷眼酸了一頓 雖然現在已經不在該公司了,不過仍然好奇可能的理由是什麼,不曉得有沒有人知道呢? p.s. 神級前輩似乎是死硬的微軟派,對於Java十分不屑 也許跟C#/.net的命名習慣有關?... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.162.46.120 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1515678902.A.EC2.html

01/11 21:57, 6年前 , 1F
好像是有技術上的理由才這樣做,不是純粹意氣用事
01/11 21:57, 1F

01/11 21:57, 6年前 , 2F
是完全不用還是看情況用?
01/11 21:57, 2F

01/11 21:58, 6年前 , 3F
完全不用就很扯,某些場合不用還能理解
01/11 21:58, 3F

01/11 21:59, 6年前 , 4F
XDDDD
01/11 21:59, 4F

01/11 21:59, 6年前 , 5F
我接收到的指示是「完全不用」
01/11 21:59, 5F

01/11 22:00, 6年前 , 6F
可能的理由喔 腦袋有洞不知變通吧
01/11 22:00, 6F

01/11 22:02, 6年前 , 7F
讓我想起C也有完全不用goto派 寧願寫出波動拳的…
01/11 22:02, 7F

01/11 22:04, 6年前 , 8F
但我覺得 不肯和別人(特別是新來的)說明才是最糟的…
01/11 22:04, 8F
真的...讓人想到猴子+香蕉+電擊的那個實驗

01/11 23:05, 6年前 , 9F
也有可能是統一格式,要大家寫的方法都一樣?
01/11 23:05, 9F
也許是...不過為何不採用常見的getXXX/setXXX,仍然覺得奇妙

01/11 23:46, 6年前 , 10F
微軟沒有這種風格,不管NFC還是.NET都沒聽過
01/11 23:46, 10F

01/12 02:31, 6年前 , 11F
getter/setter是對應.NET的property,不是一般的method
01/12 02:31, 11F

01/12 02:34, 6年前 , 12F
很多library也會預設這種method就是property
01/12 02:34, 12F

01/12 02:37, 6年前 , 13F
你說的規定是要避免使用這套規則?
01/12 02:37, 13F

01/12 02:38, 6年前 , 14F
另外read/write常見於IO類的Buffer、DataInput/Output
01/12 02:38, 14F

01/12 02:42, 6年前 , 15F
同理其他的動詞也有常見的命名邏輯,還是要考慮情況比較好
01/12 02:42, 15F
我瞭解IO比較常用read/write,我們的應用並不是IO為主的,仍然全面不准用get/set

01/12 11:01, 6年前 , 16F
命名規則反映動作上吧,其他我沒意見,但是VO/POJO之
01/12 11:01, 16F

01/12 11:01, 6年前 , 17F
類的物件不用getter/setter的命名規則未免太不近人情
01/12 11:01, 17F

01/12 11:01, 6年前 , 18F
01/12 11:01, 18F

01/13 17:14, 6年前 , 19F
是擅長寫韌體的朋友呢
01/13 17:14, 19F
※ 編輯: milonga332 (1.162.45.172), 01/14/2018 17:40:59 ※ 編輯: milonga332 (1.162.45.172), 01/14/2018 17:44:01 ※ 編輯: milonga332 (1.162.45.172), 01/14/2018 17:45:40 ※ 編輯: milonga332 (1.162.45.172), 01/14/2018 17:46:33

01/14 19:55, 6年前 , 20F
命名用read/write我會想到是IO相關的method
01/14 19:55, 20F

01/17 13:46, 6年前 , 21F
連原因都講不出來 再神也有限
01/17 13:46, 21F

01/25 09:41, 6年前 , 22F
關鍵字太短不易搜尋?
01/25 09:41, 22F
文章代碼(AID): #1QLsosx2 (java)
文章代碼(AID): #1QLsosx2 (java)