de:code | 日本マイクロソフトの開発者/アーキテクト向けイベント – Microsoft Events & Seminars
http://www.microsoft.com/ja-jp/events/developer/
結論から言えば、何かと前評判が悪かった de:code ですが、蓋を開けてみれば「損はさせません」のツイートは本当でした。値段相応なのか、値段以上なのかはさておき、自分の言ったセッションをメモ書きしておきます。
キーノートはプレゼントの発表が二転三転したのでさておき、
DE-023 Windows アプリ開発、どこへ向かうのか
お昼に「.NET開発テクノロジ入門 2014年版」を買って読みながら奥主さんの話を聞く。行く予定のプレゼン資料は事前に OneNote で配布されていたので、そのまま Surface に入れてひと通り見ておく。紙の資料がないので、手荷物が少なくてよい。メモしたいときは OneNote に書くか、自分のメモ帳に書くか。今回は Twitter にちらちらと流すだけで十分かと思ってメモは取らず。全体というか、de:code の歩き方になるので、デバイス関係の事前内容がわかる。
DE-018 Windows ストア アプリ開発、テスト、デバッグ、ストアへの提出
4人のエバンジェリストがリレー式にストアアプリの最初から最後までってことで、ひと通り流し。初心者向けになっているけど、この道は何度も通るし、少しずつ情報が変わる(便利になるという意味で)。WinJS は少し手を付けてみたい。
TL-003 最新 Web API 開発 ~ASP.NET API 2 とクラウドの活用~
ASP.NET MVC と Web API 絡みの情報集めとして。WCF の複雑さから、REST、OData にして疎通を簡単にする感じに向っている。クロスプラットフォーム(特にマルチクライアント)ならば当然の帰着という感じで。OData はなんとなくわかったので、後で認証まわりと合わせて、ASP.NET MVC と合わせて知識埋め。
DE-015 Visual Studio 2013 Update 2 と HTML5 によるクロスデバイス、クロスプラットフォーム開発の全貌
HTML5/WinJS を使って、ストアプリ、Windows Phone、ブラウザアプリを共通に作れるという話。ブラウザを含められるのは Javascript ならではで、これは、Xamrin.iOS/Android の WebView にも含められるかも。CORDOVA/PhoneGap を使えば、ブラウザ的な UI を持ってくるのは楽になる。逆にストアアプリ風の UI をブラウザに表示させることも可能。
DE-010 デスクトップ アプリケーションと Windows ストア アプリの連携
同じ PC にあるのに、デスクトップアプリとストアアプリの連携は非常に制限されている。のだが、Windows 8.1 Update からサイドローディングに限り、ローカル PC へのループバックを許可、さらにアプリブローカーを通してデスクトップの COM へアクセスできる。これができるということは、大抵の業務ロジックを COM にして動作させることが可能…なんだが、現実は View にべったりだったりして無理なんだろうな。デスクトップ DLL を有効に使いたいときに利用するテクニック。
SV-014 ハードウェア構築・管理のない世界 ~ Azure 仮想マシンの現実 ~
Azure プログラミングはいくつかやったけど、なぜか仮想マシンは作ったことがない。Linux を動かしたいならレンタルサーバを借りたほうが安いから、とも思っていたのだが、スナップショットを取れるとか、ローカルで作成した HD をアップロードできるから環境構築はこっちのほうが効率的かもしれん。試験用に CentOS+CakePHP で作ってみるかも。
DE-005 VWindows Phone 8.1 プラットフォーム徹底解説
Windows Phone は完全にノータッチだったのだが、ユニバーサルアプリがあるので、ストアアプリ(タブレットアプリ)からのアプローチのひとつとして聞きに行く。WP8 から Windows NT カーネルに変わったということで、WinRT と共有化できる準備ができる。Xamarin.iOS/Android に Xamarin.Forms が加わったので、UI 的にも Windows Store/Phone を加える環境が整ってきている。先の WinJS/HTML5/WebView と組み合わせる自由度が高い。ちなみに、私の教材は Lumia 1520 なので解像度がフルHD。電話にしてはでかいので、私としてはタブレットとして使う。Sim を持ってないし。
SN-005 C# を使い倒す iOS/Android 開発の新潮流
人のうわさを聞くためと、どんな人が興味があるのか?な感じでお昼。「C#によるiOS、Android、Windowsアプリケーション開発入門」に興味を持ってもらえるかってこと。環境としては、Visual Studio で作れるのだが、有償というのはそれなりに敷居が高い。カンファレンス内では使用期間3か月のチケットを配るそうなので、まずは使って貰えるパターンかと。ただし、Xamarin の本格的なターゲットは iOS/Android アプリ作成にあるので(今後は Windows Phone も加わるが)、通常のデスクトップアプリ作成経験だけだと難しいかも。Windows ストアアプリ作成との並行して行うのがおすすめ。あと、まだ Phone のほうに目が向いていることが多いが、実は Tablet のほうに勝機がある。
DE-017 Windows ストア アプリ で収益を上げるには
手元にもある「アプリ内課金+広告 iPhoneプログラミング」の Windows 版。いまのところ、アプリの有償手段は、「ユーザーに直接売る」「内部課金する」「広告を出す」の3種類しかない。無料の場合は「広告アプリとして出す」(最近の映画関連のゲームアプリとかがそれ)、「実力/テンプレートを示す」(他の案件とつなげる)というパターンがある。会社/個人の違いやターゲット(ゲーム/書籍/非ゲーム)もあるし、何を売るか?(コンテンツなのか技術なのか)ってのもある。Xamarinを含めると、iOS/Android/Windows Store/Windows Phone と 4種類になるので、これのそれぞれで、ダウンロード販売/アプリ内課金/広告を表示、の共通化を考える時期なのかも。
AR-006 マルチデバイスアプリ開発における設計戦略 ~ Webか? ネイティブか? あるいは両方か?
結論からあれば、いろいろ選択肢が用意されているので、前提条件(既存コンテンツか新規か、簡易アプリか複雑な操作か)によって選択する必要がある。既にブラウザコンテンツがあれば HTML5 をそのまま使えるパターンができるし、さらにちょっとして工夫が加えられる。WebView ならば Invoke を使うとか、逆にネイティブ操作でも詳細やヘルプ表示に WebView を使うとか。カードゲームアプリは WebView を使っているものが多いが、逆にマップはネイティブで作ってカード表示をネイティブらしくHTMLで作るという方法もある。
DE-006 ユニバーサル Windows アプリの画面設計 ~ 4 インチから 82 インチまで ~
実は iPod nano は正方形画面で、いくつかのフォト機器は正方形だったりする…のだが、そうそう、パズルアプリの画面を正方形にしておくと縦と横の両方に対応できる。で、旧スナップの横 500px の縦置きが今後の考えどころ。あと、flush paint のように、横置き全画面以外は動作しない、というのもアリなのかってのは目から鱗だった。確かにアプリがユーザーの使い方を規定してもよい。DPI に関しては考える必要がないし、DPI の高さについてはハード屋さんが熟知しているので、ソフト屋としてはもうちょっとアプリのほうに目を向けて。
DE-007 C#/.NET で iOS/Android アプリを開発 ~ Xamarin で実現するクロスプラットフォーム開発 ~
自分の締めとして Xamarin の話。デモは、おととい発表されたばかりの Xamarin.Forms を含めて。WebView で Razor を使うトリッキーなコードは、なるほどその手があったかという感じ。ループとかバインドを頻発するときには重宝しそうな感じ。いや、後からよく考えたら JQuery とか使ったほうがよいかも w。ただ、このカンファフェンスを通して Windows Phone, Xamarin で感じたのは、ここまで他のプラットフォームを連呼する Microsoft になったのだなということ。キーノートでもあったけど、Windows を連呼していた Windows DNA あたりの時期から一変している。
日経BP書店|C#によるiOS、Android、Windowsアプリケーション開発入門
http://ec.nikkeibp.co.jp/item/books/P98340.html
そんなわけで、教材として貰った/買った dynabook tab と Lumia 1520 どうするかと模索中。現在dynabook のほうは windows 8.1 update までして、サブディスプレイ状態(苦笑)。Lumia のほうは 8.0 のままで…後で、開発者登録しないと。