わんくま同盟 東京勉強会 #61
2011/7/23に新宿で"わんくま同盟 東京勉強会 #61"がありましたので参加しました。
そこでウチが聞いた内容についてフィードバックしたいと思います。
わんくま同盟 東京勉強会 #61
http://www.wankuma.com/seminar/20110723tokyo61/
■「Windows Phone アプリケーション開発概要」by 高橋 忍さん Lv.2くまー
> メトロデザインフレームワーク
視認性
統一されたUIとインタラクション
カラーバリエーションとの親和性
> ライブタイル
Windows Phoneのトップ画面は”タイル”で表示する規約になっている
タイルの使用数に制限がなくなっている(以前は3つまでだった)
mangoからタイルは表・裏の表示が可能になった
切り替えは自動でおこなわれる
タイルに表示できるもの
表:172*172のpng・jpeg画像、右上に○数字、下にテキスト
裏:文字
タイルは最短で15分更新(アプリケーションからのアクセス)
> ハブ
クラウドと連携した6つの標準機能
> peopleハブ
グループ化することができるようになった
人を認識(タグをつける)することができる
OSでのSNS対応
peopleハブでの連携(アドレス帳)が可能になる
メッセンジャーコネクトの仕組みを持っている ⇒拡張性が高い
> 他のスマートフォンとの違い
タイルで情報更新
SNSがOSに統合されている
> ブラウザ
IE9がベースになったコアエンジン
IE9で崩れるサイトは、mangoでも崩れる
> マルチタイル
Shelltitle?というAPIを呼ぶことで、アプリケーションの途中をタイルに追加できる
> バックグラウンドエージェント
表と裏の1つとして、パッケージにすることで、バックグラウンドになった際にも、動き続けることができる
ただし、バックグラウンドエージェントは、スケジュール間隔で動く
バッテリーセーバとも連携しているので、電源容量でスケジュール間隔も変わってくる
> Silverlight4
mangoからベースになっている
> カメラハードウェア
カメラのデータを直接取得することができる
リアルタイム画像を取得できるようになったことで、ARなどのアプリケーションも可能になった
> モーションAPI
「ジャイロ+加速度+電子コンパス」を統合したAPIがある
ジャイロは端末によってある場合とない場合があるが、このAPIを使うことで
開発者はジャイロ搭載端末かどうかを気にせずに開発することができる
⇒ ジャイロがある場合は精度があがる
> marketplace
アプリDLはmarketplaceからのみになる
アプリ数は2011/7/22現在で25,000本
> App Hub
アプリケーションに審査規約がある
⇒ http://blogs.msdn.com/b/shintak/archive/2011/06/10/10172955.aspx
ユーザビリティ的な審査もある
> ベータ配布
アプリケーションの審査なし(公開なし)
MarketPlaceでは表示されない
開発者がテスターをリスト化
特定ユーザだけ、審査なしでアプリをDLできる
最高100名
90日間限定
> プライベート配布
審査はある(Marketplace同様)
MarketPlaceでは表示されない
開発者が送付したメールにあるリンクからDL
■ライトニングトーク
橋本さん
コミケについて
こくぶんさん
MCP
Windows Phone のテスト(70-599)もある
インフラジステックス 池原さん
netadvantage(製品紹介)
■「WP7におけるSilverlightとXNAの相互運用」by 橋本 資弘さん Lv.1くまー
http://www.moto-square.com/2011/07/11/wankuma_tokyo61_detail/
> SiliverlightとXNAの相互運用
mangoから追加される新機能
> Sliverlight
イベントドリブン型の開発手法
画面(XAML)の描画は自動で実施
> XNA
ゲームループ型の開発手法
画面の描画は手動で実施
XAMLファイルはない ⇒ Game1.csにあるUpdate()とDraw()がある
> 2つ(SL、XNA)のテンプレートについて
A:Windows Phone 3D Graphics Application
B:Windows Phone Silverlight and XNA Application
GamePageの実装内容が違う
Aはサンプルがある
Bは最低限のみ
Aは、SliverLight上でXNAが動作する
XNA上でSLをよびだすことで、両立できる
ゲームはXNAで作成し、設定画面などはSilverlightで実装する
SL+XNAをするには
GameTilerクラス
SetSharingModeメソッド
を用いる
> 3Dモデルの作成
3Dモデリングソフト:Metasequoia
Contentsプロジェクトに作成したxファイルとテクスチャをコピーする
contentManajer.load
ワールド行列:3Dモデルの行列
Vecter3.Zero, Vecter3.Forword, Vecter3.Up
ビュー行列:カメラの行列
Vecter3(0, 50, 100), ...
プロジェクション行列:カメラのレンズの行列
> 3Dモデリングの要点
メッシュ
マテリアル
> パフォーマンス・アナリシス(Windows Phone Performance Analysis)
CPUやメモリのアプリパフォーマンスを視覚化することができるツール
■「Windows MobileプログラマがWindows Phone 7開発をやってみた」by こげつさん Lv.2くまー
> Windows Mobile
マルチタスクと戻るボタンがある
アプリは起動したら、バックグラウンドにいるのが基本となっている
> マルチタスクとシングルタスクの違い
どの画面からでも復帰できないといけない
意外と制御がめんどくさい
> Siliverlight ≠ Windows Form
> デザイナーさんとBlend
XAML Hell(要約:難しいよ)
デザイナーが絵を書く
↓
XAMLコーダや、プログラマが実装する
> その他のプラットフォームとの違い(iPhone/Android)
プログラミング
ネイティブコードを書かなくて良い
端末依存の挙動の違いが少ない
情報が少ない/ノイズが多い
IDEの質は断然にいい
非同期処理は楽ちん
デザイン
テーブルビューがない
タブバーがない
メニューに使える領域が少ない
階層構造が分かり辛い
スタートボタン
> スマートフォン勉強会
http://sumaben.jp/
■「WP7、ランタイム周りの更新」by 岩永信之(++C++; 管理人)さん Lv.4くまー
> Windows Phone 7 mangoから改善されたもの
世代別GCやIL Emitが導入された
> Siliverlightの新機能
Siliverlight3 → 4
コントロール
RichTextBox,Viewbox,WebBrowser
データバインディング
コマンド、StringFormat、暗黙スタイル
グルーピング(GroupDescriptions)
データ検証(INotifyDataErrorInfo)
CompositTransform
> XNAの新機能
Visual Basicサポート
Silverlightへの埋め込みサポート
> OS機能
スケジュールタスク/バックグラウンド音楽
アプリケーションスイッチ
必要があるまでサスペンドしない
カメラ&マイク
クリップボード
センサー
コンパス、ジャイロ
> ランタイム、基本クラスライブラリ
GC(Garbage Collection)性能改善
IL Emit、Expression.Compile
SQL Server Compact、LINQ to SQL
OData
ソケット、UDPマルチキャスト
暗号化
> 7.0と7.1のGC
世代別GCに対応することで性能改善
> 世代別GCとは
ほとんどのオブジェクトは短命 ⇒ 1部のオブジェクトは長寿
↓
短命なオブジェクトを早急に回収(Gen0)
生き残ったものは、長寿として判定する(Gen1)
2世代(Gen0,Gen1) ※ デスクトップ版は3世代ある
Background/Incrementalなし
Large Object Heapなし
Code-Pitching(JIT済みネイティブコードの破棄)あり
GC.Collect()で世代指定不可
> ローカルデータベース
SQL Server Compact Edition
アプリ内データベース
ファイル形式はsdfファイル
保存場所は、アプリの起動フォルダーor分離ストレージ
LINQのみ記述できる
T-SQL直接書けない
DataSetとかなし
用途
キャッシュ
ローカル設定の記憶や、Tombstoning時のデータ回避
スキーマ
コードで定義
注意
Tombstoning時に接続切れるので注意
バックグラウンドタスク側からの同時アクセスが可能
※ 単一アプリしかアクセスできないと言っても、同時実行制御は必要
書き込みができるのは分離ストレージのみ
※ アプリ内では読み取り専用
■「パネルディスカッション」by スピーカー各位+割と普通さん Lv.1
> ネイティブアプリ/WEBアプリ
SLとXNAは画面単位で切り分けながら作ったほうが開発効率はいい
> SL4とWP7のSLの違い
あまり違いはない(多少あるかもしれないけど)
> 通常のIE9とWP7版IE9の違い
まだmangoは正式ではないので、分からない
【告知】 WP7アプリケーション「MetroGnome」を作られたMOTOSQUAREさんがきたる2011年8月13日(土)のコミックマーケット80にサークル参加します! http://www.moto-square.com/2011/07/05/c80/ WindowsPhone7がテーマの同人誌を創られることで、『WP7の概要を紹介する感じのマンガ』になっているらしいです★ 「ぜひお越しの際は、お立ち寄りください」とのことでしたー 場所は東地区 S-21bです!
画像は勝手に拝借してしまったので、怒られたら消します><