Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Titanium JSON Story
Search
Ryutaro Miyashita
October 09, 2013
Programming
0
370
Titanium JSON Story
Titanium / Objective-C JSON, Object processing experiment
Ryutaro Miyashita
October 09, 2013
Tweet
Share
More Decks by Ryutaro Miyashita
See All by Ryutaro Miyashita
Java で書かれた Android アプリを Kotlin で書き直すまでの話 / Talk of rewrite Android app for Java to Kotlin
ryugoo
0
1.7k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
0
430
チーム開発と Android アプリの構成
ryugoo
5
1.2k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.7k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.7k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
760
Transition at RxJava 1.x to 2.x
ryugoo
0
550
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
520
Android エンジニアになって 2 年の学び
ryugoo
1
2.7k
Other Decks in Programming
See All in Programming
Deep Dive into Kotlin Flow
jmatsu
1
360
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
1.9k
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
Android 16 × Jetpack Composeで縦書きテキストエディタを作ろう / Vertical Text Editor with Compose on Android 16
cc4966
2
260
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
870
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
3.2k
testingを眺める
matumoto
1
140
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
290
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
340
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
240
為你自己學 Python - 冷知識篇
eddie
1
350
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Rails Girls Zürich Keynote
gr2m
95
14k
How GitHub (no longer) Works
holman
315
140k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Agile that works and the tools we love
rasmusluckow
330
21k
Navigating Team Friction
lara
189
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Transcript
{ } +40/ޠ 5JUBOJVN+40/4UPSZ "desc": "title": 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ͋ͱϞδϡʔϧ
3ZVUBSP.JZBTIJUB BLBSZVHPP $IBU8PSL SZVHPP@ SZVHPP 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF +40/ +BWB4DSJQU0CKFDU/PUBUJPO
{ "glossary": { "title": "example glossary", "GlossDiv": { "title": "S",
"GlossList": { "GlossEntry": { "ID": "SGML", "SortAs": "SGML" "GlossTerm": "St "Acronym": "SGML "Abbrev": "ISO 8 "GlossDef": { +40/ KTPOPSHFYBNQMFIUNM
4JNQMF -JHIU &BTZ γϯϓϧͰ͍͍ܰͯ͘͢ 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF
5JUBOJVN+40/ 5JUBOJVNͱ+40/ 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF
+40/QBSTF 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF +40/TUSJOHJGZ
+40/QBSTF 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF จࣈྻΛΦϒδΣΫτʹ͢Δ
ΦϒδΣΫτΛจࣈྻʹ͢Δ 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF +40/TUSJOHJGZ
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ศར
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 0CKFDUJWF$+40/ ωΠςΟϒ։ൃͱ+40/
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF /4+40/4FSJBMJ[BUJPO KTPOGSBNFXPSL +40/,JU BLB4#+TPO
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ωΠςΟϒ͍ʁ 5JUBOJVN0CKFDUJWF$1FSGPSNBODF
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ͔֬ΊͯΈͨ 5FTU
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF HJUIVCDPNSZVHPP5J"MUFSOBUF+40/
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 5JUBOJVN 0CKFDUJWF$
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 5JUBOJVN +40/TUSJOHJGZ NT +40/QBSTF NT /4+40/4FSJBMJ[BUJPO NTNT +40/,JU
NTNT 4#+TPO NTNT UJNFTTUSJOHJGZBOEQBSTF
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 0CKFDUJWF$ /4+40/TUSJOHJGZ NT /4+40/QBSTF NT +40/,JU NTNT NTNT
UJNFTTUSJOHJGZBOEQBSTF 4#+TPO
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF /4+40/TUSJOHJGZ NT /4+40/QBSTF NT +40/TUSJOHJGZ NT +40/QBSTF NT
5J 0CK$ UJNFTTUSJOHJGZBOEQBSTF
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 5Jͷ+40/͍ʂ 5JUBOJVN+40/1SPDFTTJOHJT'BTU
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ͭؾʹͳͬͨ *XPSSJFEBCPVU
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF for (var i = 0; i < 1000;
i++) { // Method Call Bottleneck } ϝιουݺͼग़͠ͷϘτϧωοΫ
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF { "1": "abcde",
"2": "abcde", "3": "abcde", "4": "abcde", ... "1000": "abcde" } GPSJO +4 0CKFDUJWF$ 'BTU &OVNFSBUJPO ʷ
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF GPSJO +4 0CKFDUJWF$ 'BTU &OVNFSBUJPO for (var key
in obj) { if (obj.hasOwnProperty(key)) { obj[key]; } } -‐(void)dictEnumerator:(id)args { ENSURE_SINGLE_ARG(args, NSDictionary); for (id i in [args keyEnumerator]) { args[i]; } }
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF 'BTU &OVNFSBUJPO NT NT GPSJO NT NT +4
0CK$ ʷ ʷ ʷ ʷ
Ϟδϡʔϧݺͼग़͠ ͍ʁ .PEVMFNFUIPEDBMMJTTMPX ͔ͯ͠͠ 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF
ࠓݴ͍͔ͨͬͨࣄ JOPUIFSXPSET 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF
5Jͷ+40/ ͍ Ϟδϡʔϧͷϝιουݺͼग़͠ ͍ ͔ 5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF ҆৺͓ͯ͠͏ ϧʔϓதͰҙ
5JUBOJVN͘͘ձ5PLZP JO0QFO/FUXPSL4QBDF CODESTRONG! ͓͠·͍