Nagoya ComCamp 2016 powered by MVPsに行ってきた

Nagoya ComCamp 2016 powered by MVPsという勉強会に行ってきた。
去年も行ったのだった。(→ MicrosoftのMVP Community Camp 2015 名古屋に行ってきた)
今年は、会場はNSCではなく、別の場所だ。NSCのランディ-さんの勉強会もずっと開催されていないが、どうしてしまったのだろうか?
20160220_101016
内容は、
・Windows 10の魅力と真価
JavaScript で作る! UWP アプリ
・OSSとオープンイノベーション
・2016年初頭のWebフロントエンド技術おさらい – Edgeもあるよ –
.NET Core5から概観する、.NETのOSSへの取り組み
Azure Machine Learning実践入門
とLTだった。

20160220_110951
20160220_113303
20160220_113426
20160220_140324

特に.NET Core5の話とデモが面白かった。
20160220_151128
20160220_151443
20160220_151526
20160220_152218

Microsoftは新しいWindows10で、UWP(Universal Windows Platform)という技術でソフト開発について再構築している。
Windows 10のアプリは、これからはUWPで作れば、Windows 10とWindows 10 MobileやWindows 10 IoTやXboxOneなどで動作するようになる。(Windows 8 とWindows Phone 8でもストアでそういう仕組みはできてきていたが)
そういった動きの急先鋒が新しい.NET Coreというもので、もうじき1.0が出るそうだ。
基本的には今までの.NET Frameworkの最新版みたいなものだが、Windows PCに機種依存するのを減らしたり、オープンソースになって更新頻度が上がっていたりする。

デモは、Ubuntu上で、
・apt-getで簡単に.NET CoreのLinux版をインストール
・コマンドラインでC#サンプルプロジェクト生成&ビルド
・Linux上で.NETアプリが動作
などをやっていた。

MicrosoftのWindowsのビジネスの位置づけが、今まではMS Officeとかアプリを動かす土台としてWindowsを提供するというのがメインだったのが、変わってしまった。
最近は、ビジネスのアプリは、データをサーバーに置くのと同様にアプリもサーバーで動かすのがメインで、Windows PC/Tablet/Phoneは末端の端末で一般ユーザーが触るクライアント部分のみ。
だからWindowsやそのクライアントアプリ開発は、モバイルとなるべく共通にできるように整理して軽量化をしているようだ。
実際は最近に限らず、前からやってきてはいたのだが、サーバー側はLinuxのシェアが大きく、それをMicrosoftの製品/技術で奪うことは出来なかった。
そのため、方針転換して、MicrosoftのクラウドサービスのAzureではLinuxを推しているし、Windows用の開発環境のVisual StudioはAzure関係が強化されている。

自分は、そういう分野に関わっていないので、ローカルで動く自分が使うソフトをWindows10で作れればいいだけなので、あまり関係が無かったりする。
.NET Coreについては、.NET用のTinyBasicコンパイラを自作しているので、興味があった。
ソフトを配布するストアの動向についてはちょっと気になる。


追記
.NET Coreは、.NET Nativeという仕組みにも関わってきている。
従来は、.NET中間コード(MSIL)でx86用のPC版WindowsアプリとARM版のWindows Mobileアプリを互換にしてきた。
しかし、ネイティブなアプリに比べて実行のために余分なメモリとCPUパワーを消費してしまい、特にモバイル環境にとっては厳しいものだった。
(AndroidのアプリもJavaで開発されるので似たようなものだろうけど、独自VMの工夫などでだいぶ緩和している。)
.NET Nativeだと、アプリはネイティブなバイナリになる。
x86とかARMとかの違いはどうするのかというと、fatバイナリにする代わりにストアからのアプリ配布時にインストール先に応じてそのときにリンクしてダウンロード提供されるような仕組みらしい。
そのため、.NETの基盤を共通化し、以前に存在したモバイル用.NET compact frameworkという部分集合なサブセット版は無くなることになったようだ。

心配なのは、ローカルなテスト環境で開発したものが正常に動作していても、ストアを通したものが微妙な部品のバージョン違いでの仕様変更などのせいで正常に動かなくなったりしないかということだ。(昔のDLL hellみたいに)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.

− 3 = 2