圍繞何時使用方法和功能的最佳做法是什麼?去最佳實踐:函數與模糊接收器的方法?
具體來說,我有2個結構:probeManager
和probeWorker
,我正在寫一個函數run
需要訪問兩個結構的成員。這可以解釋爲,告訴經理運行輔助,或呼籲工人奔跑和傳球經理進行訪問,或者我可以創建一個運行功能,這既需要作爲參數:
func (m *ProbeManager) run(w *ProbeWorker) { ... }
func (w *ProbeWorker) run(m *ProbeManager) { ... }
func run(m *ProbeManager, w *ProbeWorker) { ... }
由於所有3種方法在語義上是有效的,一種方法比另一種方法有什麼優點,或者這是否符合個人偏好?
您可以粘貼一個比特的遊碼? 「可行的方式」是儘可能使用小型接口,但如果這是一種替代方案,給定的信息是不可能的。 –
@PabloFernandez [這裏](https://gist.github.com/timstclair/a4582cd48bc567c8576a)是完整的方法。請注意,這是更大的未完成更改的一部分,我不確定它是否編譯。同樣的問題也適用於doProbe,爲了清楚起見,它們分開。 –