我是來自Java的未來,還有你總是做這樣的事情:何時顯式實例化結構?
Http http = new Http(...);
http.ListenAndServe();
因此,所有的信息都存儲在本地變量「HTTP」。
這是不同的去。大部分信息直接存儲在「另一個包」中。
你這樣做:
import "net/http"
...
http.ListenAndServe(...)
所以你不要有明確的(當然,你可以)實例的服務器結構。只需從包中調用一個函數並從那裏創建所有結構。 (所以與Java相比,它的行爲類似靜態成員變量來存儲所有信息的靜態函數?)
所以這就是你如何去做(每次)? 來自Java,這有點難以理解。 尤其是當使用這種方法,當使用工廠模式(如:NewHttpServer(...)
),當從另一個包明確創建一個結構(如:var http http.Server = http.Server{...}
)
一切是可能的,但什麼是地道golang碼?
有沒有什麼好的文檔/教程解釋它?
通常的規則是,如果你需要任何預先配置你實例化對象,它將具有配置的功能和屬性,並使用包函數來使用功能一個默認值足以滿足您的用例的實例。 – Topo
走走走。關於你的問題:所有的變體都有它們的用途,沒有一個是慣用的。 – Volker