深夜のMV*他について思い付き垂れ流し

3/13 未明にMV*系アーキテクチャと業務アプリについてなど思いついたことの垂れ流し。論点がしっかりまとまってないので、あとでまとめる。
0
白い高野さん @masaru_b_cl

俺が加持している間にMVVM界隈で面白い流れがあったみたいじゃないか。完全に乗り遅れ・・・

2013-03-13 00:02:11
白い高野さん @masaru_b_cl

「Livetで作るWPFアプリケーション」みたいな連載をしたい。そのためにまず作らないとw

2013-03-13 00:12:50
白い高野さん @masaru_b_cl

で、MVVMもそうだけどMV*系って、リアクティブな動作が必要なケースじゃないと、あんまり面白くないよね。

2013-03-13 00:14:42
白い高野さん @masaru_b_cl

今日の昼@ugaya40と話してたことの延長だけど、現状のSI屋がよく作る、検索画面、追加画面、編集画面、削除画面、みたいな業務アプリだと、MV*系の恩恵ってそんなにないのよね。

2013-03-13 00:15:40
白い高野さん @masaru_b_cl

もちろんデータバインドは便利だからどんどん活用すべきだけど、あんまりMV*を考慮する利点がない気がする。

2013-03-13 00:16:12
白い高野さん @masaru_b_cl

もちろんMV*系の主目的たるPDS、つまりプレゼンテーションとドメインの分離はやっとくと保守の時楽だけども、保守案件が回ってこない可能性が高いような案件もそれなりにあり、WinFormer達にPDSの概念から叩き込むコストを考えると、結構割に合わない感があるのよね。

2013-03-13 00:17:59
白い高野さん @masaru_b_cl

となると、直ユーザー案件で小さめにできるプロジェクトで、数名でまずは回してみて、徐々に広げるっていういつもの戦略が有効なんだけど、そもそもそんな案件が希少。

2013-03-13 00:18:58
白い高野さん @masaru_b_cl

社内案件をでっち上げられればいいけど、それもなかなか。

2013-03-13 00:19:33
白い高野さん @masaru_b_cl

業務アプリの世界にMV*の考えを浸透させるには、それなりにMV*の旨みが生きるUI,UXが必要で、そのUXは自己満ではなく業務の形態を変えるくらいのものでないといけない気がしていて、そうなると一人の力じゃきついなぁとか。

2013-03-13 00:21:16
白い高野さん @masaru_b_cl

結局ドッグフーディングして、MV*を生かした業務の効率化に役立つUXを作り上げていくしかないのかな。

2013-03-13 00:22:26
白い高野さん @masaru_b_cl

それ以前にXAMLの学習コストの高さも、相変わらず問題として残るんだよなぁ。

2013-03-13 00:23:11
白い高野さん @masaru_b_cl

まずはデータバインドとコードビハインドで戦うだけでよいと思うの。

2013-03-13 00:24:40
白い高野さん @masaru_b_cl

そして、「これ、UIから切り離せるじゃない」と思えるコード片をModelに追い出していけば、自然にMVVMになるんじゃないかな。

2013-03-13 00:25:54
白い高野さん @masaru_b_cl

さっきの業務アプリにMV*の話、いわゆるMetroアプリでも同じこと言えると思うんだよね。いわゆるMetroスタイルで一覧画面、詳細画面みたいなUIじゃうまくいくとは思えないので。

2013-03-13 00:27:10
白い高野さん @masaru_b_cl

MVVMでいまだに一つもアプリ組んだことないくせに、わかったような口をきいているのがこちらのアカウントです

2013-03-13 00:28:05
白い高野さん @masaru_b_cl

そもそも身の回りはGUIアーキテクチャの前に3階層アーキテクチャレベルからちゃんと叩き込まないといけないレベルが大半なので、PDSより前により下層をちゃんとやらないと破綻する。

2013-03-13 00:29:45
白い高野さん @masaru_b_cl

責務が分割されるので、数は増えてもそれぞれがシンプルになるので、逆にわかりやすくなるケースのほうが多いとは思います。 QT @alpha_pz: MVVMの短所と言うと、実装クラスが増えるところなんじゃないかなぁ(ω・

2013-03-13 00:31:15
白い高野さん @masaru_b_cl

WinFormsでMainForm.csになんでも詰め込んだコードは、とっても読みづらいでしょう?

2013-03-13 00:31:47
白い高野さん @masaru_b_cl

業務の形態を変えるようなUXとか、言葉にすると胡散臭いけど、わりかし求めているところは多いんじゃないかな?

2013-03-13 00:33:10
量産型ぽざうね @Posaune

@masaru_b_cl それはそうなんですけれど、それで分割することと、CとかMVとかPとかの中間層とを設けるところのギャップって、やっぱ有ると思うんですよね。僕の中でそこの回答って「テストしやすさ」くらいしか自信を持って言えるのがないのが悩みの種でして。

2013-03-13 00:33:49
白い高野さん @masaru_b_cl

いつまでもオフコンみたいなUIにテンキー+Enterで鬼のように入力していく形でいいとは思えないですし。

2013-03-13 00:33:59
A-pZ|ぢつにんさん @alpha_pz

@masaru_b_cl 確かにそうなんですけれど、私がちょっと使ってた感想は、まだ画面側のVMの部分がもうちょっとわかりやすくなるか、作りやすくないととっつき悪いままなのかなぁと思います(・ω・`

2013-03-13 00:36:00
白い高野さん @masaru_b_cl

@Posaune あー、ありますね。UIに関係するところはこのメソッドに、そうでないのはこのメソッドに、みたいなのから、他のオブジェクトとして独立させるにはちょっと高いハードルがあるってことですよね。

2013-03-13 00:36:01
白い高野さん @masaru_b_cl

@alpha_pz その辺は先人たちもいろんな手を使って改善しようと試みたあたりですね。現在のC#の限界を感じるとこですね。

2013-03-13 00:37:15