Skip to main content
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
EN
Upload
Download free for 30 days
Sign in
TW
Uploaded by
Takeya Waki
PPTX, PDF
2,864 views
Amf3の真実
FxUG北陸での発表資料。 AMFのEncode/Decodeライブラリを作成することで得た、Tipsの共有。
Technology
◦
Read more
5
Save
Share
Embed
Save to Drive
Download now
Download to read offline
1
/ 19
2
/ 19
3
/ 19
4
/ 19
5
/ 19
6
/ 19
7
/ 19
8
/ 19
9
/ 19
10
/ 19
11
/ 19
12
/ 19
13
/ 19
14
/ 19
15
/ 19
16
/ 19
17
/ 19
18
/ 19
19
/ 19
More Related Content
PDF
超簡単! Bitnami RedmineをWindowsにインストール
by
Shin Tanigawa
20 slides
2.6K views
PPTX
【夜プロ】初心者向けプログラミング講座 第3回
by
Takayuki Masaki
34 slides
67 views
PPT
Working capital
by
Nits Kedia
66 slides
1.5K views
PDF
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
by
SAP PartnerEdge program for Application Development
37 slides
2.8K views
PDF
2
by
tasanee24
6 slides
241 views
DOC
Migrain tamil
by
Vinoth Kannan
8 slides
622 views
PPT
Difference between 'wide and broad'
by
Sri Prakash Vidya Niketan
4 slides
2K views
PDF
Tap lenh co_ban
by
Đinh Công Thiện Taydo University
11 slides
2.6K views
超簡単! Bitnami RedmineをWindowsにインストール
by
Shin Tanigawa
20 slides
2.6K views
【夜プロ】初心者向けプログラミング講座 第3回
by
Takayuki Masaki
34 slides
67 views
Working capital
by
Nits Kedia
66 slides
1.5K views
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
by
SAP PartnerEdge program for Application Development
37 slides
2.8K views
2
by
tasanee24
6 slides
241 views
Migrain tamil
by
Vinoth Kannan
8 slides
622 views
Difference between 'wide and broad'
by
Sri Prakash Vidya Niketan
4 slides
2K views
Tap lenh co_ban
by
Đinh Công Thiện Taydo University
11 slides
2.6K views
Viewers also liked
DOCX
JCLIC
by
laurittarp
2 slides
291 views
PDF
Best Practice Guideline to Managing On-site Vermiculture Technologies
by
x3G9
106 slides
1.6K views
PPT
Stokvis Tapes
by
stokvis
16 slides
1.4K views
PDF
Lean Translation -
by
PhraseApp
8 slides
722 views
PPT
Aula 1 a obra de kant como síntese do nascente pensamento burguês
by
Leandro Alano
27 slides
493 views
PDF
Kedaulatan Rakyat 2 Maret 2014
by
hastapurnama
24 slides
7.2K views
PDF
Recovery as a Service Technical Deep Dive
by
Bluelock
26 slides
626 views
PDF
Yellow Slice Design Profile - 2016
by
Yellow Slice
27 slides
548 views
PPT
Extending Ajax Events for all mankind
by
Kyle Simpson
27 slides
2.1K views
PDF
Climb - Property-based dispatch in functional languages [Report]
by
Christopher Chedeau
17 slides
1.4K views
PPTX
How to create the life you want
by
Self-employed
97 slides
774 views
DOC
三百多个桥梁工程专有名词术语解释
by
undral13
78 slides
2.3K views
XLSX
Visvi
by
dasvis
3 slides
547 views
JCLIC
by
laurittarp
2 slides
291 views
Best Practice Guideline to Managing On-site Vermiculture Technologies
by
x3G9
106 slides
1.6K views
Stokvis Tapes
by
stokvis
16 slides
1.4K views
Lean Translation -
by
PhraseApp
8 slides
722 views
Aula 1 a obra de kant como síntese do nascente pensamento burguês
by
Leandro Alano
27 slides
493 views
Kedaulatan Rakyat 2 Maret 2014
by
hastapurnama
24 slides
7.2K views
Recovery as a Service Technical Deep Dive
by
Bluelock
26 slides
626 views
Yellow Slice Design Profile - 2016
by
Yellow Slice
27 slides
548 views
Extending Ajax Events for all mankind
by
Kyle Simpson
27 slides
2.1K views
Climb - Property-based dispatch in functional languages [Report]
by
Christopher Chedeau
17 slides
1.4K views
How to create the life you want
by
Self-employed
97 slides
774 views
三百多个桥梁工程专有名词术语解释
by
undral13
78 slides
2.3K views
Visvi
by
dasvis
3 slides
547 views
Amf3の真実
1.
AMF3の真実The knowledge of
AMF implementation.Presented by wackyFxUG in Toyama#3 2011.4.16http://amf48.develop.jp/
2.
最近AMF3のEncode/Decodeを実装してみました。http://amf48.develop.jp/で公開していますそこで得た知識を共有したいと思います!30分後には…AMFの基本構造が分かっているAMFの得手不得手が分かっているBlazeDSの弱点も分かっているはじめに
3.
Action Message Formatの略、データ形式の一種。仕様はAdobeから公開されている。ActionScript3(Flex2以降)の型に対応している。Flash
Player 9から使用可能。AMF3仕様:http://opensource.adobe.com/wiki/display/blazeds/Developer+Documentationhttp://opensource.adobe.com/wiki/download/attachments/1114283/JP_amf3_spec_121207.pdfhttp://opensource.adobe.com/wiki/download/attachments/1114283/amf3_spec_05_05_08.pdfWhat is AMF3?
4.
AMF3の立ち位置
5.
AMF3バイト配列を読む! (文字列)06 07
41 42 43Marker(string)00000111ABC(UTF-8)0000011x3バイトxxxxxxx1参照ではない
6.
09 05 01
06 07 41 42 43 06 00AMF3バイト配列を読む! (配列)00000000Marker(string)0000010100000001Marker(array)0000010x2要素xxxxxxx1参照ではないxxxxxxx0参照0000000x0番目空文字列(疎データ無)
7.
AMF3の内部データ形式
8.
AMF3では、3種類の参照情報を管理している。文字列オブジェクト(Object, Array, Date,
XML, ByteArray)Traits情報(オブジェクトの型情報)プロパティー名リストのようなもの既出の文字列は、2~5バイトで送信可能。既出のオブジェクトも、 2~5バイトで送信可能。ただし、同一インスタンスの場合のみ既出のTraits情報も、2~5バイトで送信可能。参照テーブル
9.
AMF3データ構成編~終了~
10.
整数(int)は可変バイトでEncodeされる。整数 (int)のEncodeサイズ※SizeはMarkerに必要な1 byteを含む。※int領域全体での平均サイズは、実は約8.5
byte…※Vector内のintは固定バイト(4 byte)となる。
11.
整数(long)は固定でMarker + 8バイトにEncodeただし、形式はdouble形式。つまり、桁落ちします…longの範囲(64bit)-9223372036854775808~9223372036854775807正しくEncode->Decodeできる範囲(53bit)-9007199254740992~9007199254740992整数
(long)のEncodeサイズ※元々、Flex上では表現できない数字だけど…
12.
サンプルデータ(異なる値)オブジェクトのEncodeサイズ(1)// Sample: Dynamic値var
target:Array = [];for (var k:int = 0; k < 1000; k++) { target.push({ index: k, message: "Message" + k });}// Sample: Sealed値var target:Array = [];for (var k:int = 0; k < 1000; k++) { target.push(new Bean(k, "Message" + k));}
13.
サンプルデータ(同じ値、別インスタンス)オブジェクトのEncodeサイズ(2)// Sample: Dynamic値var
target:Array = [];for (var k:int = 0; k < 1000; k++) { target.push({ index: 999, message: "Message999" });}// Sample: Sealed値var target:Array = [];for (var k:int = 0; k < 1000; k++) { target.push(new Bean(999, "Message999"));}
14.
サンプルデータ(同一インスタンス)オブジェクトのEncodeサイズ(3)// Sample: Dynamic値var
target:Array = [];var item:Object = { index: 999, message: "Message999" };for (var k:int = 0; k < 1000; k++) {target.push(item);}// Sample: Sealed値var target:Array = [];var item:Bean = new Bean(999, "Message999");for (var k:int = 0; k < 1000; k++) {target.push(item);}
15.
オブジェクトのEncodeサイズ(4)
16.
AMF3は圧縮形式なの?同一データを重複送信しないだけ。圧縮すると減る。
17.
実は、AMF3の仕様書に載っていない 新しいデータタイプが存在…Flash Player 10を使用すると発生…新データタイプ
18.
Java5対応されていないEnum: 文字列にエンコード。デコードは未対応。Generics: 無視される。※List<Integer>とか厳しい…Unicodeのサロゲートペア未対応Encode:
サロゲートペア1文字が、6バイト(UTF-8)にEncodeされてしまう。※正しくは4バイトDecode: Flash Player10でEncodeしたサロゲートペアをDecodeすると例外が発生。Flash Player10未対応Vectorを扱えない。Dictionaryを扱えない。BlazeDSが微妙な件…※BlazeDS-4.0.0.14931で確認
19.
お疲れさまぁ~m(__)m