和歌山のプログラミング・システム開発ならシステムキューブ
つい先日、田中さんから「WPFってやったことある?」と聞かれ、
「やろうとしたけど、考え方が分からんくてあんまりやったことないです。」と回答したおもやんです。
Windows Presentation Foundation
https://ja.wikipedia.org/wiki/Windows_Presentation_Foundation
今までのWindowsアプリケーションでは画面とコードががんじがらめになっているので、
Webアプリケーションみたいに画面とコードを分離しましょう!ということをやろう!って感じのものかなって思っています。
(テキストボックスに値を設定するのに「TextBox.Text = “設定値”;」はナンセンスみたいな?)
あとは最近のものなので、DirectXを使ってリッチに描画できますよ!とか
拡大縮小してもギザギザになりませんよ!とかいったことができたりもします。
これによって、DPI設定によって文字サイズが125%や150%になってもきれいに表示できます。(←個人的に重要)
Model View ViewModel
https://ja.wikipedia.org/wiki/Model_View_ViewModel
画面とコードを分離しましょうという考え方はいっぱいあるらしく、
そのうちの1つとしてModel View ViewModel(MVVM)パターンがあり、
WPFではMVVMパターンを利用しているようです。
画面と処理とを分けましょう!って言うのはすごく分かるのですが…
ここで私がさっぱり分からんのが、Model、View、ViewModelに当たるものが何なのか?です。
MVVMで色々ぐぐってみると、どうやらViewに当たるものはXAMLで書かれた画面っぽいです。
表示と入力だけを請け負う人でバインドされたViewModelの中身を表示するって感じでしょうか…
バインドってのもよく分かっておりませんが…
こちらはどうも明確に分かれているのか分かれていないのかさっぱりです。
ViewModelはデータが変更されたらViewに通知をしたりModelに入れるときのデータ検証を行ったりする人のようですが…
ViewとModelの橋渡しをするイメージだと思うのですが、Modelとの区別ができておりませぬ…
どっちでもええやんみたいなものも見つかったのですが…
この辺りは自分の手を動かしてやってみないと分からないかもしれませんね。
MVVMでぐぐって調べた結果を残してみました。
さて、おもやんのXAML勉強日記は続くのか?続かないのか?たぶん、続かないでしょう。