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
350
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
410
チーム開発と Android アプリの構成
ryugoo
5
1.2k
開発 4 年目のアプリへの Kotlin 導入
ryugoo
1
2.6k
Either で想定内のエラーと想定外のエラーを別ものにしたい!
ryugoo
2
1.6k
全て S になる -RxJava と LWS を持ち込む楽しさ-
ryugoo
4
730
Transition at RxJava 1.x to 2.x
ryugoo
0
520
Kotlin さんと誕生日が近いだけの男の話
ryugoo
2
500
Android エンジニアになって 2 年の学び
ryugoo
1
2.6k
Other Decks in Programming
See All in Programming
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
2
220
もう僕は OpenAPI を書きたくない
sgash708
5
1.6k
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
270
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
130
技術を根付かせる / How to make technology take root
kubode
1
250
ARA Ansible for the teams
kksat
0
150
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.1k
チームリードになって変わったこと
isaka1022
0
200
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
110
Domain-Driven Transformation
hschwentner
2
1.9k
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1k
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.3k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Documentation Writing (for coders)
carmenintech
67
4.6k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Statistics for Hackers
jakevdp
797
220k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Optimizing for Happiness
mojombo
376
70k
Writing Fast Ruby
sferik
628
61k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Being A Developer After 40
akosma
89
590k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
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! ͓͠·͍