ビューにファイル選択ウィジェットがあり、コントローラーがファイル選択のイベントを処理する必要があることを考えると、コントローラーメソッドを作成する必要があります。
public void fileSelected(String filePath){
//process filePath
}
また
public void fileSelected(){
String filePath = view.getSelectedFilePath();
//process filePath
}
最初のアプローチでは、CとVの間の結合が少なくなるようです。Cは、特定のイベントを処理するときに、Cが正確に何を必要とするかを知りません。
getSelectedFile
ただし、V側と同様の詳細なメソッドを多数作成する必要があります。
一方、2番目のアプローチでは、例よりも複雑なケースでコントローラーメソッドが乱雑になる可能性があります(渡すデータが単なるfilePath
)よりもはるかに多くなります。
あなた自身の経験から、あなたはどちらのアプローチを好みますか?