※ 本文為 terievv 轉寄自 ptt.cc 更新時間: 2016-06-18 08:58:12
看板 Soft_Job
作者 標題 [請益] 不少人不喜歡在class裡加static function
時間 Thu Jun 16 08:32:02 2016
最近一直被主管酸不停的recode
,最近被酸說class裡加static function,問他又不肯講,請問大家這樣寫的好處跟壞處…
本人覺得好處是這樣寫可以防止class改爛了,function還有用處
本人覺得好處是這樣寫可以防止class改爛了,function還有用處
壞處當然省不了記憶體,但class改爛了會省記憶體?
主管真難溝通,不喜歡事前規劃,喜歡事後改code…
###############################
我的想法是這份code不知道要經手多少人
寫成static function 至少後面的人不會亂call member, 造成相依一堆member, code一亂就....(除非他改成非static)
看太多維護到最後重寫的命運,沒留下多少可用的code
-----
Sent from JPTT on my InFocus M530.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.66.115.238
※ 文章代碼(AID): #1NOVE9iL (Soft_Job)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1466037129.A.B15.html
→ : 哪個語言?1F 06/16 08:43
→ : 先不說 static 的問題,但要防止改爛了應該有更好2F 06/16 08:45
→ : 的方法…例如unit test…
→ : 的方法…例如unit test…
推 : 不想create instance才能用method就開static啊4F 06/16 08:52
→ : 為什麼你會覺得設成靜態,就不會有改爛的問題5F 06/16 08:56
→ : 你就把當一般c的api來看待就好了!class改爛也沒多大關係!6F 06/16 08:57
推 : 怕改爛應該是靠測試啊,static function 分類要做好,不7F 06/16 09:31
→ : 然就會像我第一個工作看到的,Tool.java一萬多行...
→ : 然就會像我第一個工作看到的,Tool.java一萬多行...
→ : 比如說常用的,多處共用1個屬性的,開static沒關係吧9F 06/16 10:23
→ : 能開個電腦多打點字,把你的問題說清楚嗎!?10F 06/16 10:27
推 : 個人也不是很喜歡static 這應該是design的問題11F 06/16 10:30
推 : static不是問題所在吧12F 06/16 10:39
※ 編輯: DDxMM (210.66.115.238), 06/16/2016 11:04:46推 : 看起來是你們code review/coding style/架構設計有問題13F 06/16 11:31
→ : 把重點放在coding品質的管理上吧
→ : 把重點放在coding品質的管理上吧
推 : 不少人不喜歡? 你要不要直接改很多人不喜歡 難閱讀15F 06/16 11:36
推 : 新手才會這樣寫16F 06/16 11:47
→ : 原來static method 是給新手用的 (筆記17F 06/16 12:28
→ : 新手應該連什麼叫static 都不知道吧18F 06/16 12:31
推 : 你真的知道Static function是用來幹嘛的嗎...19F 06/16 12:33
→ : 同樓上...20F 06/16 12:35
推 : 你什麼時候開始有非 static function 比較省記憶體的錯覺21F 06/16 12:36
→ : 雖然你想偷酸主管 但看來你連class存在意義都搞錯22F 06/16 12:51
→ : 如果情境不一樣,最省事就是開delegate自己外部實作23F 06/16 12:51
→ : 再丟進來
→ : 所有的method一寫好都是跟class放在一起
→ : 再丟進來
→ : 所有的method一寫好都是跟class放在一起
→ : stackoverflow搜"where are methods stored in memory"27F 06/16 12:58
→ : 看情境 不過大部分都是non-static居多, static比較少28F 06/16 13:16
推 : 我喜歡data isolation 能static 就 static29F 06/16 14:13
推 : Function 都在text segment 有self modified code?
推 : Function 都在text segment 有self modified code?
推 : 先搞懂static的正確用法再來討論31F 06/16 14:17
→ : 好多 static 神人32F 06/16 16:17
→ : static不用new好用多了33F 06/16 16:52
推 : 公用而且不需要存變數才比較多會使用static, 大部分還34F 06/16 19:12
→ : 是nonstatic
→ : 是nonstatic
→ : 這串推文到底是反串還認真啊…36F 06/16 19:46
推 : 主要看是否跟instance的狀態相關37F 06/16 21:33
→ : static or instance method 應該考慮的是設計上的權責而
→ : 不是performance
→ : static or instance method 應該考慮的是設計上的權責而
→ : 不是performance
推 : 老實說我覺得你主管還有時間酸你人還蠻好的...40F 06/16 23:28
推 : 我覺得這沒標準的答案,看CLASS的用途41F 06/16 23:30
推 : 我覺得把你文章裡的所有 static 通通換成 const 比較說得42F 06/17 01:57
→ : 通 XD
→ : 通 XD
→ : 我是覺得跟你的code要放在什麼上面跑也有差...44F 06/17 02:24
→ : 沒狀態差異的可以用45F 06/17 02:24
→ : 良葛哥網站去看一下再來討論吧46F 06/17 08:02
推 : common tool之類的function都我用static的47F 06/17 11:46
推 : 這文給我的感覺就是 為什麼要用螺絲起子不用釘書機48F 06/17 19:34
→ : 因為螺絲起子不會有用完訂書針的問題
→ : 因為螺絲起子不會有用完訂書針的問題
推 : static最多人垢病的地方是會有test issue, 像是mocking,50F 06/18 08:38
→ : 你要怎麼mock? 基本上比較常使用的時候大概是singleton
→ : 或很小的until function
推 : 是util打錯 不好意思,建議多看看一些design的書 看看怎
→ : 麼寫code比較好 然後可以用stackoverflow 去問問題,像st
→ : atic的好壞那邊都有人分析過了
推 : 當然 我懷疑那些酸你的資深人員到底知不知道這些 或單純
→ : 他們就是被人酸過 所以就酸你一下 但是從來沒想去搞懂原
→ : 因
→ : 加油!
→ : 你要怎麼mock? 基本上比較常使用的時候大概是singleton
→ : 或很小的until function
推 : 是util打錯 不好意思,建議多看看一些design的書 看看怎
→ : 麼寫code比較好 然後可以用stackoverflow 去問問題,像st
→ : atic的好壞那邊都有人分析過了
推 : 當然 我懷疑那些酸你的資深人員到底知不知道這些 或單純
→ : 他們就是被人酸過 所以就酸你一下 但是從來沒想去搞懂原
→ : 因
→ : 加油!
--
※ 看板: terievv 文章推薦值: 0 目前人氣: 0 累積人氣: 122
作者 DDxMM 的最新發文:
- 12F 3推 3噓
- 21F 3推 5噓
- 1.媒體來源:新頭殼newtalk 2.記者署名:謝佩玲 3.完整新聞標題:英驚現變種病毒 譚德塞:無證據顯示會導致死亡率上升 4.完整新聞內文: 英國出現新冠肺炎變種病毒株,傳染力高達70%,引發各 …71F 15推 38噓
- 1.媒體來源: 中央社 2.完整新聞標題: 洪秀柱:千金散去沒關係 人心最重要 3.完整新聞內文: (中央社記者江俊亮嘉義縣27日電)中國國民黨主席洪秀柱今天表示,「千金散去沒關係 ,人心才是最重要」 …45F 23推 7噓
- 1.媒體來源: 奇摩新聞 2.完整新聞標題: 龍山寺男遭刺倒血泊身亡 原因竟是他喊:「」 3.完整新聞內文: 今天(20日)凌晨,台北市萬華區龍山寺前廣場驚見一名45歲何姓男子,左胸疑遭利刃刺 傷,倒 …122F 87推 3噓
點此顯示更多發文記錄
回列表(←)
分享