為什麼有很多人說 Go 語言不需要依賴注入?

時間 2021-05-10 07:56:18

1樓:frog酋長

問題不成立

Go 團隊在2023年10月推出了乙個 DI 工具 wire

所以問題是:如果Go 語言不需要依賴注入,為什麼官方團隊要推出乙個依賴注入工具wire ?

2樓:馬友發

每個語言都有自己的玩法,自己的優勢,比如多年前的.net mvc和spring mvc,各有各的玩法,但是非要把spring的那一套繁複的配置硬搬到.net平台搞乙個spring.

net出來就真的合理?

說實話,寫順了.net mvc突然要配一堆xml,我是打心眼裡拒絕的。。

3樓:

為啥不需要 ?

Google 自己有一款

google/wire

Uber也有乙個

uber-go/dig

Facebook也有乙個

facebookgo/inject

4樓:ggffss

fans 的思路就是你指出任何他(她) 喜歡的東西的缺陷(不限於程式語言),

他(她) 們總是能夠擺出很多道理,然後自圓其說.

然後還充滿優越感的樣子.

另外實際上我覺著依賴注入這種東西應該做到語言裡,直接在語言層面實現。

5樓:

因為go寫大規模業務的還比較少吧。

中介軟體因為本來就要規劃清楚元件的依賴,層次也要相對清楚(不像業務有大量平級的元件),所以不太需要。

6樓:

依賴注入不就是面向介面的設計理念嗎?當然可以不用,肯定有其他實現的方式,只是在某些業務和場景下,尤其是龐大的code base裡,會導致很高的修改成本。

7樓:Scott Huang

8樓:郁白

搞這麼高大上的詞,不就是面向介面程式設計和幾個語法糖嘛。。golang支援oop但是並不完備,但是仍然可用,大型專案也有必要使用

9樓:流年忘返

場景不同啊。

有人回答了:指標很好用,乙個空函式指標代替了OOP的部分功能。例如NGINX這樣應用場景固定,開發人員相對固定的。

但是大多數的業務需求是多變的,專案開發人員也不固定啊。

10樓:圓胖腫

di是典型的oop的東西

因為inject進去的是乙個物件

而且是乙個方法的集合,從本質上說,這應該是fp的概念,比如clj裡面的ns

但是問題是fp有1st/top level functions,人家不需要這一層object的包裝

直接用就好了,所以到底在做什麼呢?

除了pure oop語言以外,想不出來其他paradigm有inject的需要

11樓:FGO 輝夜

說不需要的是因為他們真的不需要

需要的不會用Go

好吧,退一萬步來說,語言本身是有味道的,而Go的味道與IoC/DI不太配合,就這樣

就像拿C強行寫OOP,可以,可是不好

不需要不太準確,應該說在需要IoC/DI的情況下,我根本不想碰Go,有更多更好的選擇能用,何苦作賤自己

12樓:

為什麼objective-C swift不需要依賴注入?

golang開發的都追求高效,就我個人而言,甚至別人的web框架都不想用,嫌棄臃腫.試著用官方庫自己寫web服務. di之後ide不能自動補全.得不償失.

如何看待很多人說現在不需要學英語了,學好中文就可以了?

Cheese Yogurt 產生這樣的想法,可能是因為全球化的浪潮沒有把他裹進去吧。學習英語從來不是熱愛母語的對立面,學習世界適用範圍很廣的語言,對個人和國家來說都是有利的。 阿黃本黃 很多人指的是哪些人?傳言高考英語都要取消了,想想有點道理 1.第一,絕大部分人沒那個條件,硬學學不來。2.第二,成...

為什麼很多人說出「為什麼很多人怎麼怎麼」的時候,我都不覺得他說的是普遍現象呢?

Hullabaloo 自以為懂的多,把並不是普遍發生的事情認為是全世界都是如此。我有個朋友就是這樣,經常性的說我覺得好多人怎麼怎麼樣,然而我們並沒有這麼覺得,還覺得她很裝b。但也有可能是個人的習慣問題,覺得這麼說會凸顯自己要問的問題的重要性吧,畢竟 很多人 都這麼覺得。反正每次她說我覺得好多人怎麼怎...

為什麼很多人說談錢俗氣?

豚啊豚 蘇格拉底把靈魂中屬於慾望的部分稱為 愛錢的部分 出自柏拉圖 理想國 因為金錢為滿足慾望提供了主要手段。我們潛意識裡都意識到,錢能滿足的慾望是相對低階的。因此,談錢就像是談論自己有多少慾望想得到滿足 同理,貪財的人被視為被低階慾望奴役的人。 說話細節 這個跟他們從小接受的教育文化相關的,在身邊...