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
1,071 views
DLR言語によるSilverlightプログラミング
Technology
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 63
2
/ 63
3
/ 63
4
/ 63
5
/ 63
6
/ 63
7
/ 63
8
/ 63
9
/ 63
10
/ 63
11
/ 63
12
/ 63
13
/ 63
14
/ 63
15
/ 63
16
/ 63
17
/ 63
18
/ 63
19
/ 63
20
/ 63
21
/ 63
22
/ 63
23
/ 63
24
/ 63
25
/ 63
26
/ 63
27
/ 63
28
/ 63
29
/ 63
30
/ 63
31
/ 63
32
/ 63
33
/ 63
34
/ 63
35
/ 63
36
/ 63
37
/ 63
38
/ 63
39
/ 63
40
/ 63
41
/ 63
42
/ 63
43
/ 63
44
/ 63
45
/ 63
46
/ 63
47
/ 63
48
/ 63
49
/ 63
50
/ 63
51
/ 63
52
/ 63
53
/ 63
54
/ 63
55
/ 63
56
/ 63
57
/ 63
58
/ 63
59
/ 63
60
/ 63
61
/ 63
62
/ 63
63
/ 63
More Related Content
PDF
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
PDF
マイクロサービス時代の動画配信基Ruby×go=∞
by
DMM.com
PDF
Javaのログ出力: 道具と考え方
by
Taku Miyakawa
PDF
ECMAScript没proposal追悼式
by
京大 マイコンクラブ
PDF
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
by
Y Watanabe
PPTX
Guide to GraalVM (Oracle Groundbreakers APAC 2019 Tour in Tokyo)
by
Koichi Sakata
PDF
レビューで保守性のためにした コメントをふりかえってみた
by
Takhisa Hirokawa
PDF
使えるDjango1.4
by
hirokiky
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
by
tamtam180
マイクロサービス時代の動画配信基Ruby×go=∞
by
DMM.com
Javaのログ出力: 道具と考え方
by
Taku Miyakawa
ECMAScript没proposal追悼式
by
京大 マイコンクラブ
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
by
Y Watanabe
Guide to GraalVM (Oracle Groundbreakers APAC 2019 Tour in Tokyo)
by
Koichi Sakata
レビューで保守性のためにした コメントをふりかえってみた
by
Takhisa Hirokawa
使えるDjango1.4
by
hirokiky
What's hot
PDF
Javaで1から10まで書いた話(sanitized)
by
Tokuhiro Matsuno
PDF
OpenJDK コミュニティに参加してみよう #jjug
by
Yuji Kubota
PDF
2014年を振り返る 今年の技術トレンドとDockerについて
by
Masahito Zembutsu
PDF
Pylons ユーザのための Pyramid 移行ガイド
by
Nozomu Kaneko
PPTX
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
by
NTT DATA Technology & Innovation
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
by
Junichi Ishida
PDF
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
by
sasezaki
PPTX
Guide to GraalVM (JJUG CCC 2019 Fall)
by
Koichi Sakata
PDF
phpspecで始めるBDD
by
Yuuki Takezawa
PDF
リアクティブ・アーキテクチャ ~大規模サービスにおける必要性と課題〜 #devsumi
by
Yuta Okamoto
PPTX
.NET Core とマルチプラットフォーム
by
shozon
PDF
PHPerのためのpostgresqlチューニングmini
by
Takhisa Hirokawa
PDF
クラウド時代だからSpring-Retryフレームワーク
by
Y Watanabe
PPTX
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
by
SEGADevTech
PDF
Yet Another DLR for Silverlightの試作
by
terurou
PPTX
.NET vNext
by
信之 岩永
PDF
TDDBC osaka 2012/06/02
by
Hiro Yoshioka
PPTX
フロントエンドの技術を刷新した話し。
by
Yutaka Horikawa
PDF
Useful Django 1.4
by
hirokiky
PDF
H2O and php
by
Junichi Ishida
Javaで1から10まで書いた話(sanitized)
by
Tokuhiro Matsuno
OpenJDK コミュニティに参加してみよう #jjug
by
Yuji Kubota
2014年を振り返る 今年の技術トレンドとDockerについて
by
Masahito Zembutsu
Pylons ユーザのための Pyramid 移行ガイド
by
Nozomu Kaneko
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
by
NTT DATA Technology & Innovation
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
by
Junichi Ishida
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
by
sasezaki
Guide to GraalVM (JJUG CCC 2019 Fall)
by
Koichi Sakata
phpspecで始めるBDD
by
Yuuki Takezawa
リアクティブ・アーキテクチャ ~大規模サービスにおける必要性と課題〜 #devsumi
by
Yuta Okamoto
.NET Core とマルチプラットフォーム
by
shozon
PHPerのためのpostgresqlチューニングmini
by
Takhisa Hirokawa
クラウド時代だからSpring-Retryフレームワーク
by
Y Watanabe
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
by
SEGADevTech
Yet Another DLR for Silverlightの試作
by
terurou
.NET vNext
by
信之 岩永
TDDBC osaka 2012/06/02
by
Hiro Yoshioka
フロントエンドの技術を刷新した話し。
by
Yutaka Horikawa
Useful Django 1.4
by
hirokiky
H2O and php
by
Junichi Ishida
Viewers also liked
PDF
VCファンディングの基礎
by
Reiji Yamanaka
PDF
MLaPP 4章 「ガウシアンモデル」
by
Shinichi Tamura
PDF
ケイスリー株式会社「ソーシャルインパクトボンド概要と行政における導入可能性の検討(2016年4月)」
by
Masaki Kochi
PPTX
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
by
Nagayoshi Yamashita
PDF
Net Promoter Score Pitfalls to Avoid
by
Aureus Analytics
PDF
ベンチャーキャピタル最新動向レポート(2016年1月)
by
JVCA
PDF
ケイスリー株式会社「日本におけるソーシャルインパクトボンドの最新動向と課題(2016年8月)」
by
Masaki Kochi
VCファンディングの基礎
by
Reiji Yamanaka
MLaPP 4章 「ガウシアンモデル」
by
Shinichi Tamura
ケイスリー株式会社「ソーシャルインパクトボンド概要と行政における導入可能性の検討(2016年4月)」
by
Masaki Kochi
パターン認識と機械学習(PRML)第2章 確率分布 2.3 ガウス分布
by
Nagayoshi Yamashita
Net Promoter Score Pitfalls to Avoid
by
Aureus Analytics
ベンチャーキャピタル最新動向レポート(2016年1月)
by
JVCA
ケイスリー株式会社「日本におけるソーシャルインパクトボンドの最新動向と課題(2016年8月)」
by
Masaki Kochi
Similar to DLR言語によるSilverlightプログラミング
KEY
Inside frogc in Dart
by
Goro Fuji
PPT
20060419
by
小野 修司
PPTX
Windows 8時代のアプリ開発
by
信之 岩永
PPTX
C#の書き方
by
信之 岩永
PDF
Sinatraでwebアプリケーション開発を学ぶ
by
Hiroshi Oyamada
PPT
2008.10.18 L4u Tech Talk
by
mitamex4u
PDF
Introduction to Roslyn
by
Yuki Igarashi
PPT
2006-04-22 CLR/H #14 .NET and open source
by
Yoshiyuki Nakamura
PPTX
Silverlightの今
by
信之 岩永
PDF
Silverlight+COMにチャレンジ
by
You&I
PPT
20050903
by
小野 修司
PDF
Iron Python / Iron Ruby で .NET Programming
by
terurou
PDF
Silverlight 4 のはなし
by
terurou
KEY
プロ文.com 勉強会 Phase 1
by
Hiroki Toyokawa
PPT
20010127
by
小野 修司
PPTX
C#の書き方
by
信之 岩永
PPTX
120331 silverlight5新機能早めぐり
by
Takayoshi Tanaka
PPTX
Sl18
by
c-mitsuba
PDF
IronRuby on Silverlight っておいしいの?
by
terurou
ODP
webを飾る技術
by
ina job
Inside frogc in Dart
by
Goro Fuji
20060419
by
小野 修司
Windows 8時代のアプリ開発
by
信之 岩永
C#の書き方
by
信之 岩永
Sinatraでwebアプリケーション開発を学ぶ
by
Hiroshi Oyamada
2008.10.18 L4u Tech Talk
by
mitamex4u
Introduction to Roslyn
by
Yuki Igarashi
2006-04-22 CLR/H #14 .NET and open source
by
Yoshiyuki Nakamura
Silverlightの今
by
信之 岩永
Silverlight+COMにチャレンジ
by
You&I
20050903
by
小野 修司
Iron Python / Iron Ruby で .NET Programming
by
terurou
Silverlight 4 のはなし
by
terurou
プロ文.com 勉強会 Phase 1
by
Hiroki Toyokawa
20010127
by
小野 修司
C#の書き方
by
信之 岩永
120331 silverlight5新機能早めぐり
by
Takayoshi Tanaka
Sl18
by
c-mitsuba
IronRuby on Silverlight っておいしいの?
by
terurou
webを飾る技術
by
ina job
More from terurou
PDF
大規模なJavaScript開発の話
by
terurou
PDF
動的なILの生成と編集
by
terurou
PDF
大規模なギョームシステムにHaxeを採用してみた話
by
terurou
PDF
FIRST STEP to Haxe/JavaScript
by
terurou
PDF
MQTTとAMQPと.NET
by
terurou
PDF
DataGridを自前実装する話
by
terurou
PDF
Computation Expressions for Haxe
by
terurou
PDF
デンキヤギの採用の考え方
by
terurou
PDF
altJSの選び方
by
terurou
PDF
Webブラウザ上で動作する帳票エンジンを作る話
by
terurou
PDF
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
by
terurou
PDF
Scala×silverlight
by
terurou
PDF
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
by
terurou
PDF
Tech Fielders 2009/9/18 LT
by
terurou
PDF
Metro Style AppsでMSIL
by
terurou
PDF
Metro Style AppsでMSILver.2012/06/09
by
terurou
PDF
Vue.jsをhaxeで
by
terurou
PDF
自社サービスでDurable Functionsを採用した話
by
terurou
PDF
クラウドGPS(仮)
by
terurou
PDF
CommonJSの話
by
terurou
大規模なJavaScript開発の話
by
terurou
動的なILの生成と編集
by
terurou
大規模なギョームシステムにHaxeを採用してみた話
by
terurou
FIRST STEP to Haxe/JavaScript
by
terurou
MQTTとAMQPと.NET
by
terurou
DataGridを自前実装する話
by
terurou
Computation Expressions for Haxe
by
terurou
デンキヤギの採用の考え方
by
terurou
altJSの選び方
by
terurou
Webブラウザ上で動作する帳票エンジンを作る話
by
terurou
オブジェクト指向の皮をかぶった関数型プログラミング言語 Haxe
by
terurou
Scala×silverlight
by
terurou
スマートフォン×Cassandraによるハイパフォーマンス基盤の構築事例
by
terurou
Tech Fielders 2009/9/18 LT
by
terurou
Metro Style AppsでMSIL
by
terurou
Metro Style AppsでMSILver.2012/06/09
by
terurou
Vue.jsをhaxeで
by
terurou
自社サービスでDurable Functionsを採用した話
by
terurou
クラウドGPS(仮)
by
terurou
CommonJSの話
by
terurou
Recently uploaded
PPTX
楽々ナレッジベース「楽ナレ」3種比較 - Dify / AWS S3 Vector / Google File Search Tool
by
Kiyohide Yamaguchi
PDF
エンジニアが選ぶべきAIエディタ & Antigravity 活用例@ウェビナー「触ってみてどうだった?Google Antigravity 既存IDEと...
by
NorihiroSunada
PDF
流行りに乗っかるClaris FileMaker 〜AI関連機能の紹介〜 by 合同会社イボルブ
by
Evolve LLC.
PDF
20251210_MultiDevinForEnterprise on Devin 1st Anniv Meetup
by
Masaki Yamakawa
PDF
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #2
by
Tasuku Takahashi
PDF
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #1
by
Tasuku Takahashi
楽々ナレッジベース「楽ナレ」3種比較 - Dify / AWS S3 Vector / Google File Search Tool
by
Kiyohide Yamaguchi
エンジニアが選ぶべきAIエディタ & Antigravity 活用例@ウェビナー「触ってみてどうだった?Google Antigravity 既存IDEと...
by
NorihiroSunada
流行りに乗っかるClaris FileMaker 〜AI関連機能の紹介〜 by 合同会社イボルブ
by
Evolve LLC.
20251210_MultiDevinForEnterprise on Devin 1st Anniv Meetup
by
Masaki Yamakawa
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #2
by
Tasuku Takahashi
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #1
by
Tasuku Takahashi
DLR言語によるSilverlightプログラミング
1.
DLR⾔語による Silverlightプログラミング
⼋⽊ 照朗 株式会社コスモルート クラウドR&Dグループ terurou ⼤名古屋, DSTokai, FLOSS桜⼭, DeLLa.JS, Python東海, ...
2.
Agenda
1
3.
Agenda •
⾃⼰紹介 • DLRとは • DLR⾔語を使った開発の特徴 • DLR⾔語での開発⼿順 • まとめ 2
4.
⾃⼰紹介
3
5.
⾃⼰紹介 普段やってること • 研究開発職/RIAエンジニア –
RIA(Siverlight、JavaScript) – Android – ⼤規模分散技術(Cassandra、Hadoop) • DSTokai管理⼈ • ⼤名古屋のterurouです! 4
6.
⾃⼰紹介 Silverlightと私 • Silverlight開発暦は約2年 • DLR⾔語での開発歴も約2年 •
Silverlight 2 beta2の頃からやってます 5
7.
⾃⼰紹介 今までに関わってきたSilverlight案件 • 製造業向けガントチャートアプリ –
Silverlight 2 + IronPython 2.0 – ⼤⼈の事情により開発打ち切り – 関連URL http://www.microsoft.com/japan/powerpro/tf/interview/23_1.mspx http://d.hatena.ne.jp/terurou/20081210/1228840074 • 某⼤⼿企業の情報システム – Silverlight 3 + C# – DeepZoopをフル活⽤ – NDAのせいであまり詳しく書けない 6
8.
DLRとは
7
9.
DLRとは Silverlightの3つの開発スタイル • JavaScript API •
CLR⾔語(C#、VB.NET) • DLR⾔語(IronPython、IronRuby) 8
10.
DLRとは JavaScript API • Silverlight
1.0からのレガシースタイル • 限られたAPI(Silverlight 1.0+α)しか 利⽤できない • 今でもスプラッシュスクリーンを実装に 必要 9
11.
DLRとは CLR⾔語(C#、VB.NET) • Silverlight 2以降の標準的な開発スタイル •
普通はみんなこれで開発するはず 10
12.
DLRとは DLR⾔語(I ronPython、I ronRuby)
「えっ?」 11
13.
DLRとは ここで質問 そもそもCLRとDLRとは何か知ってますか?
12
14.
DLRとは CLRとDLR • CLR
– Common Languate Runtime – 共通⾔語ランタイム – .NETの根幹、仮想マシン • DLR – Dynamic Language Runtime – 動的⾔語ランタイム – 元々IronPythonの⼀部だったが、DLRとして 独⽴し、.NET Framework 4/Silverlight 4に 組み込まれた 13
15.
DLRとは 動的⾔語? • RubyとかPHPとかJavaScriptとか • 動的型付け⾔語 •
反意語?は静的型付け⾔語 14
16.
DLRとは 静的型付けと動的型付け • 静的型付け⾔語(C#)
– int i = 0; – TextBlock tb = new TextBlock(); • 動的型付け⾔語(Python) –i = 0 – tb = TextBlock() – 変数の型を指定しない 15
17.
DLRとは DLRで出来ること • dynamic型
– ダックタイピング – 遅延バインディング • 動的⾔語の共通基盤 – コンパイラフレームワーク – 動的型付け⾔語⽤のランタイムライブラリ 16
18.
DLRとは 「DLRで出来ること」を簡単に⾔うと • dyanamic型
– C#やVB.NETでも動的型付け的な『ゆるい』 コードが書ける • 動的⾔語の共通基盤 – .NET上で動く俺様⾔語(動的型付け⾔語)を 作れる 17
19.
DLRとは 個⼈的には
『DLRは.NETの⿊魔術』 だと思ってます 18
20.
DLRとは DLRで実装されたプログラミング⾔語 • IronPython(Microsoft製) • IronRuby(Microsoft製) •
IronScheme 19
21.
DLR⾔語を使った開発の特徴
20
22.
DLR⾔語を使った開発の特徴 DLR⾔語での開発のメリット • Python、Rubyで書ける • コンパイル不要、すぐに動作確認できる •
VisualStudioを使わなくても良い • Macでも開発できる 21
23.
DLR⾔語を使った開発の特徴 DLR⾔語での開発のデメリット • 動作が遅い、特に起動が遅い –
初期化が遅いのがDLR⾔語共通の弱点 • DLR⾔語では実装が⾯倒な事がある – DataBindingやOut-of-Browserなど • 困った時の情報が少ない 22
24.
DLR⾔語を使った開発の特徴 具体的にどれぐらい遅いのか? ベンチマークをとってみた • ランタイム⾃体の速度差 –
フィボナッチ数(再帰) – フィボナッチ数(ループ) • レンダリングパフォーマンスの差 – 四⾓形を繰り返し表⽰ – ⽂字列を繰り返し表⽰ – 両⽅ • ベンチマークコードは後⽇公開予定 23
25.
DLR⾔語を使った開発の特徴 ベンチマーク取得対象 • Silverlight 4
C# • Silverlight 4 IronPython 2.6(Gestalt) • Flash Player 10.1 – DLR⾔語がCLR⾔語よりも遅いことは 判ってるのでFlashも⽐較対象に⼊れた 24
26.
DLR⾔語を使った開発の特徴 ベンチマーク実施マシン • VAIO type
Z(2世代前のモデル) – Windows 7 Professional – Core 2 Duo P9700(2.8GHz) – 6GB Memory – NVIDIA GeForce 9300M GS 25
27.
DLR⾔語を使った開発の特徴 ベンチマーク結果
単位 [msec] (*1)実際には10秒程度描画されず (*2)実際には2分以上描画されず 26
28.
DLR⾔語を使った開発の特徴 ベンチマーク結果 • Silverlightは⾮常に⾼速 • Flash
Player10.1で図形描画が超⾼速化 – Flash Player 10の頃のベンチマーク http://d.hatena.ne.jp/terurou/20081210/1228840074 – 以前は1万個の図形描画で危なかった • 総合的に判断するとIronPythonはFlashと いい勝負をしている – C#と⽐較すると遅いが、IronPythonは⼗分 使えるパフォーマンス 27
29.
DLR⾔語を使った開発の特徴 DLR⾔語が得意な開発ターゲット • プロトタイピング • ⼩規模開発 •
UIの微調整を頻繁に繰り返す • サーバサイドがPython、Ruby 28
30.
DLR⾔語を使った開発の特徴 DLR⾔語での開発に向いている⼈ • Python、Rubyが好き • Macでも開発したい •
VisualStudioが嫌い • ⽞⼈って⾔葉が好き • マゾな⼈ 29
31.
DLR⾔語での開発⼿順
30
32.
DLR⾔語での開発⼿順 DLR⾔語で開発するための⽅法 • Chiron.exe(旧名AgSDK)
– 去年の秋頃まで使われていた⽅法 – 現在は積極的にメンテナンスされていない • Gestalt(dlr.js) – Microsoft(MixLab)が突然⼤きく⽅針転換し 去年夏ごろprototype、今年の2⽉に1.0が出た – Silverlight 3以降で動作 – 現在のIronPython/IronRubyのドキュメント にはGestaltを使った⽅法しか載っていない 31
33.
DLR⾔語での開発⼿順 Chiron.exe vs Gestalt •
Microsoftからは正式に「Chiron.exeの 開発終了」アナウンスは出ていないが… • 現状はChiron.exeにしかできないこと (Out-of-Browser)があるため、 「使い分けてね」的な雰囲気 • 特別な理由がなければGestaltで開発して おいた⽅が良いと思う 32
34.
DLR⾔語での開発⼿順 Gestaltでの実装サンプル • Gestaltでの開発⽅法を紹介する前に、
Gesltaltのサンプルアプリを紹介 • PyCon 2010のデモ – githubで公開されている http://github.com/jschementi/pycon2010/ – Gestaltで開発する際に困るような部分が だいたいサンプルコードになっている – 起動スクリプトがバグってるので要修正 • Gestalt製のプレゼンツール作っていたが 完成しなかった。。。 33
35.
DLR⾔語での開発⼿順 PyCon 2010のデモを動かしてみる • githubからチェックアウトしrun.batを
修正 – 誤 %~dp0bin3Chiron.exe /b:index.html – 正 %~dp0ironpythonChiron.exe /b:index.html • run.batを実⾏すると、デモが起動する 34
36.
DLR⾔語での開発⼿順 PyCon 2010のデモを動かしてみる デモとしておもしろいもの • webcam
(sl4) • snow (particles) • name swirl (trig) 35
37.
DLR⾔語での開発⼿順 GestaltでHello World • 開発環境
– テキストエディタ • MacにはTextMate⽤のハイライト定義がある http://visitmix.com/labs/gestalt/downloads/ – ローカルWebサーバ – ブラウザ+Silverlightランタイム • 基本⼿順 1.HTMLにdlr.jsをインクルードする 2.HTMLにコードを書く(JavaScript感覚) 3.ブラウザで動作確認 36
38.
DLR⾔語での開発⼿順 GestaltでHello World 1.HTMLにdlr.jsをインクルードする –
http://gestalt.ironpython.net/dlr-latest.js <script src="中略" type="text/javascript"></script> – 常にGestaltの最新版を取得できる 37
39.
DLR⾔語での開発⼿順 GestaltでHello World 2.HTMLにコードを書く –
<script type="text/python"> window.Alert("Hello Gestalt!") </script> – Rubyの場合は"text/ruby" – JavaScriptのように「<!--」や「//-->」は 構⽂エラーになるので付けてはダメ 38
40.
DLR⾔語での開発⼿順 GestaltでHello World 3.ブラウザで動作確認 –
コンパイル不要 – JavaScriptファイルを1つインクルードする だけでOK – Gestaltの制約上、Webサーバ経由でないと 動作しません 39
41.
DLR⾔語での開発⼿順 GestaltでHello World • DLR⾔語でのプログラミングについての
詳細情報はIronPythonのドキュメントを 参照してください。 今回のセッションでは割愛します。 • http://ironpython.net/browser/ 40
42.
DLR⾔語での開発⼿順 Gestaltのしくみ 1.ブラウザがdlr.jsを読み込む 2.dlr.jsが⾃動的にdlr.xapをロードする – dlr.xap内にはGestaltで使える⾔語(Python、
Rubyなど)が定義されている 3.dlr.xapの情報を元に利⽤する⾔語の最新 ランタイムをダウンロードしてくる – dlr.xap⾃体にはランタイムは含まれていない 4.アプリ実⾏ 41
43.
DLR⾔語での開発⼿順 Gestaltのしくみ • dlr.xapや⾔語ランタイムのダウンロードは
初回のみで、2回⽬以降はダウンロード キャッシュを参照する(透過キャッシュ) – 初回のみロードが遅いが2回⽬以降は速くなる • このキャッシュはブラウザのキャッシュを クリアすると消えてしまう 42
44.
DLR⾔語での開発⼿順 デバッグ⽅法 • ドキュメントには「debuggerをブラウザ
にアタッチしろ」と書いてある • Visual Web Developer Expressには アタッチなんてメニューが存在しない • VisualStudioがない⼈はどうすんの… 43
45.
DLR⾔語での開発⼿順
| \ __ / _ (m) _ビコーン |ミ| / .`´ \ ('A`) ノヽノヽ くく 44
46.
DLR⾔語での開発⼿順 もしかして • 以前、ブログに書いたJavaScriptの
デバッグ⽅法がそのまま使えるんじゃ? http://d.hatena.ne.jp/terurou/20071218/1197965733 • 試してみたらビンゴ! ちゃんとステップ実⾏できました! • 英語版Visual Web Developerですが ⼿順を紹介します 45
47.
DLR⾔語での開発⼿順 デバッガの設定⼿順 1.DLRの設定を変更しデバッグ可能にする – dlr.jsインクルードの<script>タグの前に
以下のようなJavaScriptを埋め込む <script type="text/javascript"> DLR = { settings: { debug: true } }; </script> 46
48.
DLR⾔語での開発⼿順 デバッガの設定⼿順 2.Visual Web Developer起動 3.
File > Open Web Site... 47
49.
DLR⾔語での開発⼿順 デバッガの設定⼿順 4.File System でデバッグ対象ファイルの
ディレクトリを開く 48
50.
DLR⾔語での開発⼿順 デバッガの設定⼿順 5.WebSite > Start
Options を開く 49
51.
DLR⾔語での開発⼿順 デバッガの設定⼿順 6.Start Options >
DebuggersのSilverlight だけONにする 50
52.
DLR⾔語での開発⼿順 デバッガの設定⼿順 7.Build > Before
running startup pageを No Buildにする 51
53.
DLR⾔語での開発⼿順 デバッガの設定⼿順 8.デバッグ対象ファイルを開きbreakpointを 仕込む
52
54.
DLR⾔語での開発⼿順 デバッガの設定⼿順 9.デバッグ実⾏すると初回のみダイアログが 出るがそのままOKしておく
53
55.
DLR⾔語での開発⼿順 デバッガの設定⼿順 10.設定が正しければ、DLR⾔語のコードを ステップ実⾏できる
54
56.
DLR⾔語での開発⼿順 デバッガの設定⼿順 11.IE以外のブラウザが起動されてしまう場 合、IDEの規定のブラウザを変更する。 –
Solution Explorerで適当なHTMLファイルを 右クリックし、Browse With...を開き、 IEを既定値に設定する。 55
57.
DLR⾔語での開発⼿順 もうひとつのデバッグ⽅法 • REPLを利⽤する –
Read-eval-print loop – 要は対話シェル環境 • repl.pyで簡単にREPLが使える – これもPyCon2010のデモに含まれている http://github.com/jschementi/pycon2010/blob/master/repl.py 56
58.
DLR⾔語での開発⼿順 repl.pyの使い⽅ • repl.pyをインクルードするだけ <script
type="text/python" src="repl.py"></script> • URI(QueryString)にconsoleと付けて ブラウザで表⽰する 57
59.
DLR⾔語での開発⼿順 Gestaltの将来像 確定的なものはないが…。 • Out-of-Browserのサポート –
Silverlight 4以降になら対応しそう http://www.ironpython.net/browser/docs.html#faq • XAMLからのイベントハンドラ設定 • デバッグ機能の拡充 – http://www.ironpython.net/browser/docs.html#ideas 58
60.
まとめ
59
61.
まとめ • 開発環境を整えるのは⾮常に簡単、⼿軽に
始められる • パフォーマンスはそこそこ。悪くはない。 • 開発ターゲットさえ間違えなければ⾮常に 有⽤な道具 • CLR⾔語でのプログラミングに不満のない ⼈が無理して覚えるようなものではない 60
62.
まとめ ⾝も蓋も無いですが、
やっぱりDLRはキワモノです。 ご利⽤は計画的に。 61
63.
ご清聴ありがとうございました
62
Download