1
我有一個GWT Web應用程序,它使用URL來導航和MVP模式。對於每個URL我都有一個主持人被調用。我有大約20型動物主持人,並決定調用哪一個,我使用條件等哪個更有效率,使用HashMap或If語句導航
if (view.equals("vue1")){
presenter = new presenter1();
}else if(view.equals("vue2")){
presenter = new presenter2();
}else if(view.equals("vue3") || vue.equals("vue4") || vue.equals("vue5")){
presenter = new presenter345();
}
...
我嘗試另一種選擇,這是在應用程序的啓動加載HashMap中。該地圖將視圖作爲關鍵字並將Presenter作爲值。但它變得複雜,因爲我經常有多個鍵(視圖)指向同一個Presenter。因此,對於上面我的例子中最後一個條件,我會做這樣的事情:
map.put("vue3",new Presenter345);
map.put("vue4",new Presenter345);
map.put("vue5",new Presenter345);
問題:
1 - 哪一個是有效的,知道該代碼是在客戶端(JavaScript)?
2-是否有另一種選擇?
我終於使用了一個Map,因爲複雜度較低O(1)清晰度和可重用性。 – outellou 2012-09-02 15:54:34