いまいち良くわかってなかったのだが、C#のWPFがやっと理解できた。
今迄はWindowsのフォームアプリとしてC#を使ってVB6のアプリをリプレースしているのだが、仕事でC#の開発があって、しかもWPFでかつブラウザアプリと言うので何が違うのかわかって無くて、C#だから問題ないなぁと思って受けたわけだ。
実際、プログラム言語はC#そのものなので開発に支障はないのだが、WPFっていうのがWindowsのフォームアプリだと思っていたのが大間違い。
これって、Androidアプリを開発した時にUIをXMLで作って、Javaで中身を作るのと似ていてWPFと言うのはそういう開発手法の事だとようやく理解できた。
そんでもって、ブラウザアプリとなると、動作するオブジェクトの拡張しがxbapとかになってIE限定で動作するアプリを作ると言うことなのだとわかった。
これも、画面をXMLで作って今度はIISで動かすのである意味ASPの開発っぽい感じがした。
WEBアプリと言うと、Htmlで画面作って裏でPHP動かすみたいに思っていたし、最近はPythonで開発したいなぁと思ってみたら、これも画面を作ってサーバーサイドでPythonを動かす訳だが、言語は違えど、開発手法は同じで、それぞれの特徴があって、そのサーバーサイドで動かすプログラムをC#で書いて、exeを作ってxbapで動かすって感じなんだな。
これがVisualStudioで開発出来るのがみそで、、PHPとかPythonだとそれぞれが独立しているので、IDE的な開発はVS CODEを使えばかろうじて出来るかなぁと思うし、EclipseとかNetBeansを使う方法もあるのかなぁとは思うが、C#のWPFならVisualStudioがあるのでかなり便利だし、C#の代わりにVB.NETでも同じ事が出来るなんて幸せだ。
問題は、IISと言うのがくせ者で、WindowsServerが必要になってしまうと言うことだ。
幸いに、WindowsServer2012を立ち上げているのでテスト環境は問題なく構築できるのでチャレンジ出来そうだ。
せっかくWindowsにMAMPを導入したのに、IISも使うハメになってしまった。
MacのMAMPでは主に、WEBサイトの編集、保守、開発を行って、WindowsのMAMPはPHPやPythonの開発で、WindowsServerを使ってWPFの開発と、今俺の持っている開発環境は怖いものなし状態だ!
強いて言えば、Linux環境を構築してないので、バーチャルのLinux環境作って、自鯖立ち上げると完璧なんだろうが、とりあえずMAMPがその代用な訳だからそこまではいらねぇかな。
コメント