1
我是Martin Fowler's(不推薦)模型 - 視圖 - 演示者模式的粉絲。我正在寫一個包含幾個按鈕類的Scala視圖類。我想包括設置按鈕的動作屬性的方法,由演示者調用。典型的代碼片段如下所示:Scala model-view-presenter,traits
private val aButton = new JButton
def setAButtonAction(action: Action): Unit = { aButton.setAction(action) }
此代碼對每個按鈕都重複執行。如果Java/Scala有C預處理器,我會創建一個宏來生成這個代碼,給定按鈕名稱(請不要在C預處理器的邪惡課上講課)。這段代碼顯然非常冗長和重複。有沒有更好的方式來在Scala中做到這一點,也許使用特徵?
請舉辦關於scala.swing的講座。我在這裏尋找一個普遍的模式。
不錯的答案。我將進一步探討這一點。 – Ralph 2010-05-26 17:54:23
@Ralph你有沒有探索過它?你可以在Scala中分享MVP的骨架代碼嗎?我問這個問題與賞金值得,請檢查它:http://stackoverflow.com/questions/17631080/mvp-in-scala-swing – MyTitle 2013-07-20 11:33:28
@MyTitle:我開始了一個項目探索了這一點,但不得不繼續前進到另一個項目,永遠不會回來。如果我必須這樣做,我會用sblundy的答案中顯示的模式。 – Ralph 2013-07-20 13:18:36