kazuakix の日記

Windows Phone とか好きです

めとべや東京 #4 に参加してきました

de:code の続き的なノリで めとべや東京 #4 に参加してきました。
申し込んだ時点では定員超えててキャンセル待ちだったのですが、会場を広げていただけたとのことです。ありがとうございます。

以下、受講メモ

ユニバーサル Windows アプリ入門

かずきさん

ユニバーサル Windows アプリの概要

C/C++, C#, HTML/CSS, JavaScript で作成可能 (※現状 VB は非対応…)。
PC と Phone で約 90 % の API が共通化。

コード共有のテクニック

ユニバーサルアプリで作成は Windows 8.1, Windows Phone 8.1, Shared の 3 つのプロジェクトが作成される。
Shared にクラス (モデル?) を置き、それぞれのプロジェクトにページを置くパターンが現実的。
どうしても残る非互換部分は以下のディレクティブで対応する

#if WINDOWS_APP 
//
#elif WINDOWS_PHONE_APP
//
#endif

どこを共有するかについてはよく検討が必要

Modern WPF

ぐらばくさん

モダンな外観の作り方

WindowStyle をなしにする方法

枠を消している竹なので、サイズ変更をはじめとする基本的な動作までも失われてしまう。普通のウィンドウとしての動作が必要ないスプラッシュスクリーンなどではいいかも?

Window Chrome Class を使う方法

.NET 4.5 から標準。クライアント領域をウィンドウの枠の部分まで拡張する。
これにより基本的な動作を持った枠なしウィンドウができる。

その他 WPF カスタムコントロールライブラリによる外観カスタマイズの例。mahapps.metro のような既存のライブラリを使うという手もある。

高 DPI 対応

ディスプレイの小型化 + 高精細化により高 DPI 環境が一般的になってきている。

Win32Windows Froms では対応は大変。WPF では DPI 仮想化により自動的に調整される。但し、Windows 8.1 以降のディスプレイごとスケーリングに対応しているのはストアアプリのみ。

The Next Generation for C# Developers

たなかさん

Roslyn の紹介

C# 6.0 (仮称?) の新機能

いろいろな機能が紹介されていましたが、その中でも

int i;
if (int.TryParse(text, out i)) {}

 if (int.TryParse(text, out var i)) {} 

みたいになるらしいのは楽しみですね。

尚、いつリリースされるのか? については不明との事。

コーディング面接

岩永さん

日本でももっとコーディング面接やならないかな?という事で実際に出そうな問題でライブコーディング。(普通の面接よりも緊張しそうですね)

まずはシンプルな実装をして、動作を比較検証しなおがら拡張しいくスタイルがいいみたいです。

また、この手のデータ列挙の問題では yield return が便利との事です。覚えておきましょう。
どれも de:code にも負けない...というか対象を絞り込んでいる分 とても濃い内容でした。機会があればまた参加したいです。


この後もっと濃い (闇的な意味で) LT があったとの事ですが、残念ながら帰り便の都合で失礼しました。とても残念です。
そして羽田で飛行機の遅延を知った僕は第二ターミナルのラウンジでこのエントリを書いていました...。