IT界討論區(40) 放咗工吹咩IT呀, 我想打機呀

1001 回覆
6 Like 0 Dislike
2018-08-31 09:17:37
初心者18k唔錯啦
2018-08-31 09:18:48
2018-08-31 09:18:58
啱呀
但so far可能全個it討論區都係有女
2018-08-31 09:20:03
真膠 個腦一片空白咁
2018-08-31 09:38:32
討論區變哂質
2018-08-31 09:40:47
假毒IT討論區(40)
2018-08-31 10:49:13
其實你呢啲問題自己都試到⋯⋯
2018-08-31 10:51:39
我唔計thread safety問題因為我一直都唔會用multithread

個人認為helper同extension 是用static class的原因是不涉及狀態

singleton單例呢 其實係一種服務
例如一個快取, 一條事件隊列
佢地有一個全局性既角色但不應有全局性存取
正確做法是將依賴從建構子注入

開發者絕對唔希望一個全局性state比一個唔知邊位既物件亂咁存取
容易引起違反最小負責原則
唔洗幾日static class就已經造就上帝物件既創世紀
從止踏上意大利廚師之路
2018-08-31 10:54:15
2018-08-31 10:56:56
總之singleton只要係globally accessible就係anti pattern
2018-08-31 11:01:14
點解你地會係到討論點為之singleton
系統設計係應該諗點最貼合use case 而唔係套現成方法論
方法論唔應該係對未來指引 而係對過去既總結
最好係你有個初步設計之後 先再回顧下啲方法論睇下有冇甩漏
而唔係一開波就套個方法論再去格硬改到合你use case
2018-08-31 11:02:24
2018-08-31 11:05:31
一句都睇唔明, 可以名正言順做老屎忽

利申: 衝出嚟柒
2018-08-31 11:06:08
我諗佢想講 正確(存取)做法是將依賴從(使用者既)建構子注入(對singleton既依賴)
2018-08-31 11:06:39
static 係好多種語言係一個 keyword。
Singleton 係一種概念。

兩者都唔知點比較。

見到你地好似講 static class,我就提吓我識嘅 C++ 同 Java。
C++ 而言,冇 static class;
Java 而言,得 nested class 可以 declare 做 static,情況就如 static member method、static member variable。

我而家做嘢呢邊就有用 DI 嘅,啲 constant 就古古怪怪有兩種方法存取。
一係就 getter/setter,咁樣就要拎番個 object(instance) 出來 call 番 getter 先拎得番。
一係就 declare 咗做 public static member variable,之後就簡簡單單搵留個名出來就用到,例如ClassFoo.ConstantBar。
2018-08-31 11:08:44
白話黎講 所有人唔應該用global variable access singleton 而係應該用自己既local variable
而個local variable既value係係constructor到由constructor caller assign
2018-08-31 11:16:33
巴打中文滿分 我決定以身相許
2018-08-31 11:20:56
2018-08-31 11:21:01
好似講漏咗啲關鍵字

static member variable 一般都係用來 declare constant 多。
用到 static 嘅另外一個情況(C++/Java而言)就係用來寫 helper class 居多,將 helper class 嘅所有 method declare 做 static。

Singleton 放係 static member variable 唔係唔得,你要諗邊個負責 initialize,邊個負責裝住個 instance 囉。Singleton 自己起番自己個 instance 做 public static member variable 會有少少亂嘛。
2018-08-31 11:24:18
Database 不等同 SQL。
其餘睇唔明噏乜。

有咩數唔可以公開改?你老闆包二奶條數?
2018-08-31 11:29:24
真心唔識 想問做野幾時用得到個singleton
2018-08-31 11:31:14
申手黨
其實病咗冇返工冇得code 順便上黎r下吹 難得有人一齊討論
2018-08-31 11:33:39
伸手+1 明左個理論 但係完全分唔清自己有冇用到
2018-08-31 11:36:14
唔會用到

你應該做既係 遵守oop既封裝同抽象原則
遵守左之後你就會發現自己無啦啦整左singleton出黎 如果你個對象真係應該得一千零一個
吹水台自選台熱 門最 新手機台時事台政事台World體育台娛樂台動漫台Apps台遊戲台影視台講故台健康台感情台家庭台潮流台美容台上班台財經台房屋台飲食台旅遊台學術台校園台汽車台音樂台創意台硬件台電器台攝影台玩具台寵物台軟件台活動台電訊台直播台站務台黑 洞