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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ryutaro Miyashita
October 09, 2013
Programming
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Titanium JSON Story
Titanium / Objective-C JSON, Object processing experiment
Ryutaro Miyashita
October 09, 2013
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.8k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
0
470
チーム開発と Android アプリの構成
ryugoo
5
1.3k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.8k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.8k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
790
Transition at RxJava 1.x to 2.x
ryugoo
0
570
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
560
Android エンジニアになって 2 年の学び
ryugoo
1
2.8k
Other Decks in Programming
See All in Programming
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
190
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
110
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
600
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.5k
Contextとはなにか
chiroruxx
1
380
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.4k
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
130
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
15
7.3k
Agentic UI
manfredsteyer
PRO
0
200
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
640
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
260
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
120
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
230
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
210
The SEO identity crisis: Don't let AI make you average
varn
0
500
Code Review Best Practice
trishagee
74
20k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
570
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
400
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
WENDY [Excerpt]
tessaabrams
11
38k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
640
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! ͓͠·͍