對於物件的動態建立例項問題
可能是自身學習不足,對設計模式什麼不夠了解,今天遇到了一個問題 具體情況是這樣: 在 http 請求中,客戶端會傳一定的引數給服務端 (比如 json,服務端 json->Struct) 假定服務端有
type I interface{}
type A struct{}
type B struct{}
type C struct{}
....
//這些struct裡面的屬性都會不一致,但是會和客戶端引數一一對應,並且都假定實現了I介面
現在實現情況是根據客戶端一個引數,比如 p,來確定使用哪個 struct 程式碼就會變成
switch p {
case x1:
s := A{}
case x2:
s: = B{}
case x3:
....
....
}
//這樣的虛擬碼很醜而且維護起來比較尷尬,因為有個case,程式碼多少都會有點耦合,在新增或者刪除struct的時候都需要去刪除相應的case
有沒有比較優雅的方法,讓 A\B\C 這樣的 struct 完全獨立,增加刪除不會影響到其他 因為是之前寫 php 的,php 程式碼的意思類似
<?php
Class A {}
$obj = "A"
$a = new $obj
不知道有沒有表達清楚,有點長 謝謝大家
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- C#動態建立介面的實現例項物件C#物件
- Navigation問題詳解——Fragment建立新的例項NavigationFragment
- JS 建立例項物件的四種模式JS物件模式
- 私有建構函式的物件建立例項函式物件
- 對於靜態成員來說是類的建構函式,對於例項成員是類的原型物件。函式原型物件
- php例項化物件的例項方法PHP物件
- 對於Spring中注入物件失敗的問題Spring物件
- java建立web動態網頁遇到的問題JavaWeb網頁
- Java的幾種建立例項方法的效能對比Java
- 關於 Angular 應用 Components 和 Directives 的例項化問題Angular
- JDK動態代理物件與被代理物件地址值問題JDK物件
- [20191202]關於oracle例項是否使用hugepages問題.txtOracle
- 關於dotnet動態生成controller的問題Controller
- 詹聰聰:一種動態引入 protobuf 物件並複用其例項的方法物件
- shell動態修改yml配置例項
- 關於動態使用keepAlive不生效的問題
- 教你如何直接訪問php例項物件的private屬性PHP物件
- nodejs打包問題解決例項NodeJS
- 例項物件和函式物件的區別物件函式
- 動態規劃---例題3.最大子段和問題動態規劃
- [20191204]關於oracle例項是否使用hugepages問題2.txtOracle
- 00024.06 反射:反射的應用2:動態建立物件反射物件
- 基於SEH的靜態反除錯(例項分析)除錯
- C#例項化物件的三種方式及效能對比C#物件
- 關於JObject的用法,以及實現動態生成實體物件、動態建立一些Josn組合Object物件
- Python 動態新增例項屬性,例項方法,類屬性,類方法Python
- 物件的例項化、記憶體佈局以及訪問定位物件記憶體
- 無法連線windows例項的問題排查Windows
- 利用jstack定位典型效能問題例項JS
- 配置高效能動態網站(例項)網站
- java反射方式建立例項Java反射
- Laravel 2.2 建立 Application 例項LaravelAPP
- 關於IDEA使用xml實現動態sql的問題IdeaXMLSQL
- 關於動態表單遇到的一些問題
- 例項 靜態 類
- 類例項物件的class型別卻不屬於該類,何解?物件型別
- 理解Python中的類物件、例項物件、屬性、方法Python物件
- Lumen 報錯提示 例項不了 Response 類的問題
- 線上問題排查例項分析|關於 Redis 記憶體洩漏Redis記憶體