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
ARTのメモリ管理
Search
haru067
April 25, 2015
Programming
8
15k
ARTのメモリ管理
haru067
April 25, 2015
Tweet
Share
More Decks by haru067
See All by haru067
Jetpack Compose: 効果的なComposable関数のAPI設計
haru067
2
7.6k
いかにしてアプリの起動時間を改善するか
haru067
3
2.2k
REALITY Androidにおけるマルチモジュール移行
haru067
0
1.4k
Immutable data holder
haru067
1
1.3k
Other Decks in Programming
See All in Programming
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
220
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
1.1k
AtCoder Conference 2025
shindannin
0
880
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.4k
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
570
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
500
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
140
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
640
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
9
2.4k
Vibe codingでおすすめの言語と開発手法
uyuki234
0
160
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
920
Graviton と Nitro と私
maroon1st
0
160
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
420
Measuring & Analyzing Core Web Vitals
bluesmoon
9
720
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
New Earth Scene 8
popppiees
0
1.3k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
72
The SEO Collaboration Effect
kristinabergwall1
0
320
4 Signs Your Business is Dying
shpigford
187
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Automating Front-end Workflow
addyosmani
1371
200k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
180
Transcript
"35ͷϝϞϦཧ %SPJE,BJHJ!IBSV
ࣗݾհ ˔ 5XJUUFSΫϥΠΞϯτ 4IPPUJOH4UBSͷ։ൃऀ !IBSV
ࣗݾհ ˔ 5XJUUFSΫϥΠΞϯτ 4IPPUJOH4UBSͷ։ൃऀ ʢͨ·ʹਅ໘ͳΛʣ !IBSV
"OESPJEͷ($ͷྺ࢙ Y %BMWJL7. "35
"OESPJEͷ($ͷྺ࢙ 'SPZP ˔ ϚʔΫεΠʔϓ($ ˔ ($தΞϓϦέʔγϣϯ͕ఀࢭͯ͠͠·͏ ʢ458ɼ4UPQ5IF8PSMEʣ Y
%BMWJL7. "35
"OESPJEͷ($ͷྺ࢙ (JOHFSCSFBE ˔ .PTUMZ$PODVSSFOU($ ˔ ϚʔΫεΠʔϓ($ΛΞϓϦέʔγϣϯͱ ΄΅ฒߦʹ࣮ߦɽఀࢭ࣌ؒେ͖͘վળ Y
%BMWJL7. "35
"OESPJEͷ($ͷྺ࢙ Y*$4 +FMMZ#FBO ˔ େ͖ͳมߋͳ͠ ˔ .PTUMZ$PODVSSFOU($ ʢฒߦϚʔΫεΠʔϓ($ʣ
Y %BMWJL7. "35
"OESPJEͷ($ͷྺ࢙ ,JULBU ˔ "35ͳΔϥϯλΠϜ͕ग़ݱ ˔ σϑΥϧτ·ͩ%BMWJL7. Y
%BMWJL7. "35
"OESPJEͷ($ͷྺ࢙ -PMMJQPQ ˔ "35͕σϑΥϧτʹɼ%BMWJLരൃ࢛ࢄ ˔ ϥϯλΠϜ͕ସΘͬͯ($ͱ͔৭ʑͱมΘͬͨ Y
%BMWJL7. "35
Կ͕มΘͬͨͷ͔ʁ
ฒߦ($ͷఀࢭ࣌ؒ
%BMWJL7. ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͰΞϓϦ͕ఀࢭ͢Δ "35 ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͷҰ෦Λฒߦʹॲཧ ͕͜͜มΘͬͨɿฒߦ($ͷఀࢭՕॴ ϧʔτ εΩϟϯ ϚʔΫ
࠶ϚʔΫ εΠʔϓ ϧʔτ εΩϟϯ ϚʔΫ ࠶ϚʔΫ εΠʔϓ
%BMWJL7. ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͰΞϓϦ͕ఀࢭ͢Δ "35 ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͷҰ෦Λฒߦʹॲཧ ͕͜͜มΘͬͨɿฒߦ($ͷఀࢭՕॴ ϧʔτ εΩϟϯ ϚʔΫ
࠶ϚʔΫ εΠʔϓ ϧʔτ εΩϟϯ ϚʔΫ ࠶ϚʔΫ εΠʔϓ dϛϦඵ͙Β͍
%BMWJL7. ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͰΞϓϦ͕ఀࢭ͢Δ "35 ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͷҰ෦Λฒߦʹॲཧ ͕͜͜มΘͬͨɿฒߦ($ͷఀࢭՕॴ ϧʔτ εΩϟϯ ϚʔΫ
࠶ϚʔΫ εΠʔϓ ϧʔτ εΩϟϯ ϚʔΫ ࠶ϚʔΫ εΠʔϓ
%BMWJL7. ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͰΞϓϦ͕ఀࢭ͢Δ "35 ˔ ϧʔτεΩϟϯͱ࠶ϚʔΫͷҰ෦Λฒߦʹॲཧ ͕͜͜มΘͬͨɿฒߦ($ͷఀࢭՕॴ ϧʔτ εΩϟϯ ϚʔΫ
࠶ϚʔΫ εΠʔϓ ϧʔτ εΩϟϯ ϚʔΫ ࠶ϚʔΫ εΠʔϓ ϛϦඵ͙Β͍
"35ͷฒߦ($εΰΠʂ
ฒߦ͡Όͳ͍΄͏ʁ ˔ 458($ ˔ MPHDBUʹग़ͯ͘Δ($@'03@"--0$͜Ε ˔ ϝϞϦྖҬ͕ෆ͢Δͱൃੜ ˔ ฏؾͰΞϓϦ͕ඵࢭ·ͬͨΓ͢Δ ൃੜ͢Δͱ໌Β͔ʹϠό͍
ฒߦ͡Όͳ͍΄͏ʁ ˔ 458($ ˔ MPHDBUʹग़ͯ͘Δ($@'03@"--0$͜Ε ˔ ϝϞϦྖҬ͕ෆ͢Δͱൃੜ ˔ ฏؾͰΞϓϦ͕ඵࢭ·ͬͨΓ͢Δ ൃੜ͢Δͱ໌Β͔ʹϠό͍
ϩάݟΔͱׂͱൃੜͯͨ͠Γ͢Δ
ʀʅЧʆ
458($ͷൃੜݪҼͦͷ̍ ˔ அยԽʹΑΔϝϞϦׂͯͷࣦഊ ʮۭ͍ͯΔͱ͜Ζνϥϗϥ͋Δ͚ͲೖΒͳ͍ʯ ˔ ΞϓϦέʔγϣϯ͝ΈͷճऩΛͨͳ͍ͱ͍ ͚ͳ͍ ώʔϓ ۭ͖ྖҬ ༻த
PCK ʁ
ʁ
σϑϥά͢Ε͍͍͡ΌΜ ˔ σϑϥάʹੌ͍͕͔͔࣌ؒΔ ˔ ώʔϓΛԿεΩϟϯ͢Δඞཁ͕͋Δ ˔ σϑϥά͍ͯ͠ΔؒΞϓϦέʔγϣϯ͕ఀࢭ ˔ ͱͯͭΒ͍
"35Ͳ͏ͯ͠Δͷ ˔ େ͖͍ΦϒδΣΫτ͕ॾѱͷࠜݯ ώʔϓ ۭ͖ྖҬ ༻த PCK
"35Ͳ͏ͯ͠Δͷ ˔ େ͖͍ΦϒδΣΫτ͕ॾѱͷࠜݯ ʮσϒిंʹΔͳʯ ώʔϓ ۭ͖ྖҬ ༻த PCK
͕͜͜มΘͬͨɿஅยԽରࡦ ˔ େ͖͍ΦϒδΣΫτΛผͷྖҬͰཧ ʮσϒઐ༻ं྆Λͭ͘Ζ͏ʯ ˔ -BSHF0CKFDU4QBDFʢ-04ʣ ௨ৗ༻ ۭ͖ྖҬ ༻த Ͱ͔͍ͭΒʢେ͖Ίͷྻͱ͔ʣ༻
"35͕ΜͬͯΔ
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ΞϓϦ࣮ߦ
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ ΞϓϦ࣮ߦ
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ ΞϓϦ࣮ߦ ฒߦ($
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ ΞϓϦ࣮ߦ ฒߦ($ ϝϞϦਚ͖·ͨ͠
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ ΞϓϦ࣮ߦ ฒߦ($ ϝϞϦਚ͖·ͨ͠ 458($
458($ͷൃੜݪҼͦͷ̎ ˔ ϝϞϦׂ͕ܹͯͯ͘͠ฒߦ($͕͍͔ͭͳ͍ ฒߦ($ ΞϓϦ࣮ߦ ΞϓϦ࣮ߦ ฒߦ($ ϝϞϦਚ͖·ͨ͠ 458($
ฒߦ($ૣΊʹΕ͍͍͡ΌΜ ˔ ͍͍ͩͨ͋ͬͯΔ ˔ "35%BMWJLΑΓݡ͘ฒߦ($Λ࣮ߦͯ͠Δ ˔ جຊతʹۭ͖ྖҬ͕ҰఆΛ͑ͨΒ($ ˔ "35ϝϞϦׂͯසͱ͔ߟྀͭͭ͠($
"35͕ΜͬͯΔ
"35ͷఀࢭ࣌ؒ·ͱΊ ˔ ฒߦ($ͰɼΞϓϦΛఀࢭ্ͤͨ͞ͰͷॲཧΛݮ ˔ 458($ͷൃੜසΛ͑Δ ˔ -BSHF0CKFDU4QBDFʹΑΔஅยԽରࡦ ˔ ΑΓ͜·ʹɼલͬͯฒߦ($ ฏۉఀࢭ࣌ؒΛ͘
࣌ؒͷఀࢭΛ͑Δ
ΊͰͨ͠ʁ
˔ 458($ͷൃੜ͑ΒΕΔ ˔ εϧʔϓοτʢ࣮ߦ࣌ؒʣѱ͘ͳΔ ΉΈʹฒߦ($Λ࣮ߦ͍͍ͯ͠ͷ͔ʁ
˔ 458($ͷൃੜ͑ΒΕΔ ˔ εϧʔϓοτʢ࣮ߦ࣌ؒʣѱ͘ͳΔ ΉΈʹฒߦ($Λ࣮ߦ͍͍ͯ͠ͷ͔ʁ ࣮ߦ࣌ؒͬͪ͜ͷ΄͏͕͍
εϧʔϓοτ
͕͜͜มΘͬͨɿฒྻ($ ˔ ($ͷॲཧΛฒྻ࣮ߦͯ͠ߴԽ ˔ ϚϧνίΞ$16ࡌ͕૿͑ͯΔ͜ͱͩ͠ ˔ ͷ($ʹ͔͔Δ࣌ؒΛॖ ˔ ࠶ϚʔΫͷఀࢭ͢Δॲཧ͘ͳͬͯخ͍͠ ϧʔτ
εΩϟϯ ϚʔΫ ࠶ϚʔΫ εΠʔϓ
͕͜͜มΘͬͨɿฒྻ($ ˔ ($ͷॲཧΛฒྻ࣮ߦͯ͠ߴԽ ˔ ϚϧνίΞ$16ࡌ͕૿͑ͯΔ͜ͱͩ͠ ˔ ͷ($ʹ͔͔Δ࣌ؒΛॖ ˔ ࠶ϚʔΫͷఀࢭ͢Δॲཧ͘ͳͬͯخ͍͠
͕͜͜มΘͬͨɿੈผ($ ˔ ଟ͘ͷΦϒδΣΫτ໋Ͱ͋Δɼͱ͍͏ԾઆΛ ར༻ͨ͠($ ˔ 4UJDLZNBSLCJUT($ ˔ લճͷ($Ҏ߱ʹ࡞ΒΕͨ͝Έ͚ͩճऩ ($ ($
͕͜͜มΘͬͨɿੈผ($ ˔ ଟ͘ͷΦϒδΣΫτ໋Ͱ͋Δɼͱ͍͏ԾઆΛ ར༻ͨ͠($ ˔ 4UJDLZNBSLCJUT($ ˔ લճͷ($Ҏ߱ʹ࡞ΒΕͨ͝Έ͚ͩճऩ ($ ($
($ର ($ର֎
͕͜͜มΘͬͨɿੈผ($ ˔ ଟ͘ͷΦϒδΣΫτ໋Ͱ͋Δɼͱ͍͏ԾઆΛ ར༻ͨ͠($ ˔ 4UJDLZNBSLCJUT($ ˔ લճͷ($Ҏ߱ʹ࡞ΒΕͨ͝Έ͚ͩճऩ ($ ($
($ର ($ର֎ ϐϯϙΠϯτͰ͝ΈΛճऩ
͕͜͜มΘͬͨɿΞϩέʔλ ˔ %BMWJL7.ɿEMNBMMPD ˔ HMJCDͷNBMMPDʢͷେݩʹͳͬͨΞϩέʔλʣ ˔ ฒߦϝϞϦׂͯϩοΫͰഉଞ੍ޚ ˔ "35ɿ3PT"MMPD ˔
"35ಠࣗͷϝϞϦΞϩέʔλ ˔ 4FHSFHBUFEGSFFMJTU ˔ ฒߦϝϞϦׂͯʹରԠ
ฒߦϝϞϦׂͯ ώʔϓ ۭ͖ྖҬ ༻த εϨου εϨου
ฒߦϝϞϦׂͯ ώʔϓ ۭ͖ྖҬ ༻த εϨου new Object(); εϨου new Object();
·ͱΊ ˔ "35͕ΜͬͯΔ
·ͱΊ ˔ "35͕ΜͬͯΔ ˔ ͱ͍͏ΑΓ%BMWJL7.͕ΨόΨόͩͬͨʁ ˔ ͱʹ͔͘ؤுͬͯΔɼࠓޙʹظ
·ͱΊ ˔ ฒߦ($ͷఀࢭՕॴ͕ΑΓ͘ͳͬͨ ˔ 458($ͷൃੜස͕͘ͳͬͨ ˔ -BSHF0CKFDU4QBDFʹΑΔஅยԽରࡦ ˔ ͜·ʹฒߦ($ ˔
εϧʔϓοτվળ ˔ ฒߦ($ɼੈผ($ ˔ ϝϞϦׂͯͷฒߦॲཧʹରԠ ˔ 3PT"MMPD