Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
terurou
791 views
Metro Style AppsでMSILver.2012/06/09
Health & Medicine
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 31
2
/ 31
3
/ 31
4
/ 31
5
/ 31
6
/ 31
7
/ 31
8
/ 31
9
/ 31
10
/ 31
11
/ 31
12
/ 31
13
/ 31
14
/ 31
15
/ 31
16
/ 31
17
/ 31
18
/ 31
19
/ 31
20
/ 31
21
/ 31
22
/ 31
23
/ 31
24
/ 31
25
/ 31
26
/ 31
27
/ 31
28
/ 31
29
/ 31
30
/ 31
31
/ 31
More Related Content
PDF
Metro Style AppsでMSIL
by
terurou
PDF
Scala×silverlight
by
terurou
PDF
Tech Fielders 2009/9/18 LT
by
terurou
PDF
Önemli Olan, Nelere Değer Verdiğin ve Neleri Önemsediğindir..
by
Kref.net
PDF
Silverlight 4 のはなし
by
terurou
PDF
Yet Another DLR for Silverlightの試作
by
terurou
PDF
Iron Python / Iron Ruby で .NET Programming
by
terurou
PDF
FIRST STEP to Haxe/JavaScript
by
terurou
Metro Style AppsでMSIL
by
terurou
Scala×silverlight
by
terurou
Tech Fielders 2009/9/18 LT
by
terurou
Önemli Olan, Nelere Değer Verdiğin ve Neleri Önemsediğindir..
by
Kref.net
Silverlight 4 のはなし
by
terurou
Yet Another DLR for Silverlightの試作
by
terurou
Iron Python / Iron Ruby で .NET Programming
by
terurou
FIRST STEP to Haxe/JavaScript
by
terurou
Similar to Metro Style AppsでMSILver.2012/06/09
PPTX
メトロスタイルアプリ開発最初の一歩
by
ShinichiAoyagi
PPTX
Windowsストアアプリ勉強してみた
by
Takashi Nishisaki
PPTX
Metro style ハッカソンに参加してきた
by
TATSUYA HAYAMIZU
PPTX
テンプレートを使ったストアアプリの作成
by
Yasuhiko Yamamoto
PDF
MetroStyleAppsさわってみた わんくま
by
c-mitsuba
ODP
Metro Style Dev #01 IMAP Client
by
Hiroaki Kawai
PDF
Metroアプリの作り方 (COD2012)
by
Yasuhiko Yamamoto
PPTX
ひと目でわからん Metro アプリ開発入門
by
Masuda Tomoaki
PPTX
Metrostyleappに挑戦してみた
by
Nobuaki Aoki
PPTX
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
by
Tomokazu Kizawa
PPTX
スマ研第2回レポート
by
Shinpei Niiyama
メトロスタイルアプリ開発最初の一歩
by
ShinichiAoyagi
Windowsストアアプリ勉強してみた
by
Takashi Nishisaki
Metro style ハッカソンに参加してきた
by
TATSUYA HAYAMIZU
テンプレートを使ったストアアプリの作成
by
Yasuhiko Yamamoto
MetroStyleAppsさわってみた わんくま
by
c-mitsuba
Metro Style Dev #01 IMAP Client
by
Hiroaki Kawai
Metroアプリの作り方 (COD2012)
by
Yasuhiko Yamamoto
ひと目でわからん Metro アプリ開発入門
by
Masuda Tomoaki
Metrostyleappに挑戦してみた
by
Nobuaki Aoki
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
by
Tomokazu Kizawa
スマ研第2回レポート
by
Shinpei Niiyama
More from terurou
PDF
Webブラウザ上で動作する帳票エンジンを作る話
by
terurou
PDF
自社サービスでDurable Functionsを採用した話
by
terurou
PDF
Computation Expressions for Haxe
by
terurou
PDF
デンキヤギの採用の考え方
by
terurou
PDF
Vue.jsをhaxeで
by
terurou
PDF
MQTTとAMQPと.NET
by
terurou
PDF
altJSの選び方
by
terurou
PDF
DataGridを自前実装する話
by
terurou
PDF
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
by
terurou
PDF
動的なILの生成と編集
by
terurou
PDF
大規模なギョームシステムにHaxeを採用してみた話
by
terurou
PDF
大規模なJavaScript開発の話
by
terurou
PDF
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
by
terurou
PDF
CommonJSの話
by
terurou
PDF
DLR言語によるSilverlightプログラミング
by
terurou
PDF
クラウドGPS(仮)
by
terurou
PDF
IronRuby on Silverlight っておいしいの?
by
terurou
PDF
Dynamic Language による Silverlight2 アプリケーション開発
by
terurou
Webブラウザ上で動作する帳票エンジンを作る話
by
terurou
自社サービスでDurable Functionsを採用した話
by
terurou
Computation Expressions for Haxe
by
terurou
デンキヤギの採用の考え方
by
terurou
Vue.jsをhaxeで
by
terurou
MQTTとAMQPと.NET
by
terurou
altJSの選び方
by
terurou
DataGridを自前実装する話
by
terurou
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
by
terurou
動的なILの生成と編集
by
terurou
大規模なギョームシステムにHaxeを採用してみた話
by
terurou
大規模なJavaScript開発の話
by
terurou
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
by
terurou
CommonJSの話
by
terurou
DLR言語によるSilverlightプログラミング
by
terurou
クラウドGPS(仮)
by
terurou
IronRuby on Silverlight っておいしいの?
by
terurou
Dynamic Language による Silverlight2 アプリケーション開発
by
terurou
Metro Style AppsでMSILver.2012/06/09
1.
Metro Style AppsでMSIL ver.
2012/06/09 terurou
2.
自己紹介
3.
自己紹介 どうもこんにちわ、 terurou です。
4.
DSTokaiの管理人やってます。 • 東海地方のメタコミュニティ –
複数コミュニティへの共通連絡窓口 – IT系イベント情報の共有 – DSTokaiカレンダー – http://go.dstokai.info/ • クロスコミュニティイベントの企画 – NGK:名古屋 合同 懇親会
5.
Web技術を広く浅くやってます。 • フロントエンド –
Silverlight, JavaScript, Android – Tech Fielders Member(ページ消滅) – 最近 Metro Style Apps始めました。 • バックエンド – Cassandra, 自作KVS, AWS • フロント寄りのアーキテクチャ設計を 割と得意としてます。
6.
今から話すネタについて
7.
ML名古屋の発表スライドの流用です。 • ML名古屋? –
5/26に開催されたイベント – なごやこわい • 6/1のWindows8 RPのリリースに 合わせ、最新情報に更新しました。
8.
このLTのゴール地点 Metro Style AppでEXE生成するよ、 デスクトップアプリ用のやつ。
9.
過去の類似犯行 • Silverlight上でScalaプログラムを実行 –
Scala→MSIL + アセンブリバイナリ改変 • Silverlightアプリ(XAP)を動的に 生成するWebサーバの作成 – DSL→MSIL→XAP化
10.
Metro Style Appsとは?
11.
Metro Style Apps •
Windows 8から導入される 新しいアプリケーションの種別 – 旧来型アプリ=Desktop Apps
12.
WinRT • Metro Style
Apps専用API – Win32 API と .NET Framework 共に Metro用のサブセットAPIとなっている。 • いろんなものが非同期API – File I/O APIとかDialogとか • サンドボックスモデル – ユーザの同意なしには全てのファイルや デバイスを自由に操作できません。
13.
MSILとは?
14.
MSIL • CLI(.NETのVM)用の機械語 –
コンパイルするとCIL用のバイトコードに • MicroSoft Intermediate Language – Intermediate Language = 中間言語 • ECMA CIL(Common IL)としても 標準化されている – MSILはCIL準拠/拡張という位置づけ
15.
Metro Style AppsでMSIL生成
16.
Reflection.Emit! • .NETでMSILといえばReflection.Emit –
Reflection.Emitを使うとプログラム内で 動的にMSIL/アセンブリを生成できる。 • さっそくコードを書こう!
17.
Reflection… Emit…? え、AssemblyBuilderが存在しない…?
18.
Reflection… Emit…? がっつりAPIが削られてしまっていて、 ぺんぺん草すら生えていない…!
19.
Reflection.Emit 完全終了のお知らせ • Reflection.Emit(低レベルAPI)が
隠ぺいされ、高レベルAPIのみ利用可 – System.Linq.ExpressionTree – System.Dynamic • でも、Reflection.EmitがないとEXEの 出力/保存ができないのだけど…。
20.
詰んだ?
21.
そんなところに颯爽とMono.Cecilが!
22.
Mono.Cecil • Cecil is
a library written by Jb Evain to generate and inspect programs and libraries in the ECMA CIL format. • 要はCIL(MSIL)をごにょごにょする 素敵ライブラリ。
23.
Mono.Cecilが使われているところ • Mono Debugger
– Cecil自体がMonoプロジェクトだしね。 • ILSpy – .NET逆アセンブリツール – SharpDevelopのグループが作ってます。 • 各種weaving/AOPツール
24.
Mono.CecilをMetroに移植しよう • Mono.CecilはMetroに対応してない。 –
Metro用の.NETはサブセット版だしね。 • Metro用クラスライブラリとして移植 – 既存の.NETプロジェクトではMetroを ビルドターゲットに指定できないので、 Metro用にプロジェクトを作り直す。 – Portable Class Libraryでは多分無理。 • Reflection APIが違いすぎる
25.
Mono.Cecil 移植のポイント • Reflection
APIの差異を埋める – GetTypeInfo()への置き換えなど • System.Security.Cryptography → Windows.Security.Cryptography • File I/Oはサポートしない – StreamでのI/Oに限定
26.
Mono.Cecil for Metro •
ソースをGitHubに置いておいた – https://github.com/terurou/cecil – とりあえずコンパイルを通したレベル – まだテストコードを移植してない • Windows8 製品版で動作しなくなる 可能性があるので注意。
27.
デモ • Metro Style
AppsからDesktop用の コンソールアプリを動的生成します。 – Hello World的なことするだけです。
28.
まとめ
29.
Metro Style Appsで EXE出力して何が嬉しいのかは 私にもよくわからないですね。
30.
少し真面目に利用用途を考える • 動的生成したアセンブリをキャッシュ –
都度生成では性能問題が出るケースに • Metro用DSL/コンパイラを実装 – Metroアプリ内DSL – Desktopアプリの生成 – Silverlightアプリ(XAP)の生成 • SilverlightでXAP生成はできたので、 9割方実現できるはず
31.
ご清聴ありがとうございました
Download