Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
家族アルバムみてね 開発風景 #realm_jp
Search
ainame
September 29, 2015
Programming
4.2k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
家族アルバムみてね 開発風景 #realm_jp
Realm meetup#7
http://realm.connpass.com/event/19719/
ainame
September 29, 2015
More Decks by ainame
See All by ainame
Swift 5.7で変わる正規表現を試してみよう
ainame
4
8k
iOSDC 2021 - App Store用スクリーンショットの自動生成をアラビア語対応してSwiftUIで実装してみた
ainame
0
6.1k
DNN/GPU with Ruby #rubykaigi
ainame
2
3.3k
Server Side Swift実用性評価 2017 #iosdc #b
ainame
3
4.5k
Process tons of jobs with Swift
ainame
0
1.9k
Swift on the ObjC #shibuyaswift
ainame
4
940
iOSで無限バックグラウンドアップロード(に挑戦してみた話)
ainame
2
5.4k
リファクタリングとtsort
ainame
1
1.8k
RubyMotionについて #mixiwwdc
ainame
2
470
Other Decks in Programming
See All in Programming
ChromeでローカルLLM
ryu1013
0
110
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
150
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
110
golang-bob.pdf
iwatsukayura
0
130
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
170
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
110
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
22
22k
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
290
気持ちぃ〜角丸 Squircle
ryu1013
0
290
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
730
Workers Cache を知る
syumai
0
350
Featured
See All Featured
Believing is Seeing
oripsolob
1
240
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
530
Claude Code のすすめ
schroneko
67
230k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
810
Git: the NoSQL Database
bkeepers
PRO
433
67k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1.1k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Transcript
ՈΞϧόϜΈͯͶ ։ൃ෩ܠ 3FBMNNFFUVQ !BJOBNF
˙ࣗݾհ w !BJOBNFੜҪஐ࢘ w גࣜձࣾϛΫγΟձࣨॴଐ w ͨ·ʹॻ͍ͯΔ✏IUUQBJOBNFIBUFCMPKQ
˙ΞδΣϯμ ՈΞϧόϜΈͯͶͷհ ։ൃνʔϜ 3FBMNಋೖͷ͖͔͚ͬ αʔόΫϥΠΞϯτͷಉظͷ࣮
ՈΞϧόϜΈͯͶͷ։ൃ෩ܠ͔ΒೖΓ 3FBMNΛಋೖͯ͠ϦϦʔε͢Δ·ͰͷΛ͠·͢
ՈΞϧόϜΈͯͶͷհ
˙ՈΞϧόϜΈͯͶ w εϚϗ࣌ͷՈΞϧόϜ w "OESPJEJ04Ұ෦ϒϥβରԠ w ࢠڙͷΛৼΓ͔͑Δඵಈը ࢠڙͷΛ ͍ͭͰɺͲ͜Ͱɺ͍ͭ·Ͱʂ
None
։ൃνʔϜ
˙։ൃνʔϜ w 4DSVNΛ࠾༻ w 10Y ։ൃऀY σβΠφY ଞνʔϜ݉2"Y w िؒεϓϦϯτͰ݄ճϦϦʔε
IUUQXXXNJUDIMBDFZDPNSFTPVSDFTTDSVNGSBNFXPSLqPXEJBHSBN
None
˙4DSVN্ͰͷλεΫ w ϢʔβʹՁ͕ಧ͔͘Ͳ͏͔Λج४ʹ༏ઌ͕͍ͭͯΔ w ඞཁʹԠͯ͡ແବͳ͘։ൃΛߦ͏ͨΊʹଐਓੑഉআ ։ൃऀຖͷ୲ϓϥοτϑΥʔϜΛແ͘͢ w J04"OESPJEಉ࣌ϦϦʔεͷͨΊ"1*J04"OESPJEͷॱͰ։ൃ ʮJ04ͷ2"தʹ"OESPJEΛ։ൃ͠J04৹ࠪதʹ"OESPJEͷ2"ʯͱ͍ ͏ྲྀΕ͕ΊΔ
3FBMNಋೖͷ͖͔͚ͬ
˙αʔόෛՙ w ༏ઌͷͰϓϩτλΠϓ࣌ظͷઃܭͷ··ϦϦʔε͍ͯͨ͠ w ΞϧόϜͷσʔλΫϥΠΞϯτͰӬଓԽ͓ͯ͠Βͣ ը໘ߋ৽ຖʹϦΫΤετ w ઍ୯Ґͷ3BJMTͷ"DUJWF3FDPSEͷΠϯελϯεੜ +40/·ͰͷγϦΞϥΠζతʹϘτϧωοΫʹͳΔˍ $16༗͢Δ΄Ͳ͔͔࣌ؒΔͷͰةͳ͍
< \ JE ˘˘ ^ \ JE ˘˘
^ > (&5BQJNFEJB@MFT ىಈ࣌ͱ͔ը૾Ξοϓϩʔυຖʹ ϦΫΤετΛඈ͢
\ JE ˘˘ ^ \ JE ˘˘ ^
˘˘ (&5BQJNFEJB@MFT < \ JE ˘˘ ^ \ JE ˘˘ ^ ˘˘ \ JE ˘˘ ^ \ JE ˘˘ ^ ˘˘ > େྔͷΦϒδΣΫτΛ ฦͦ͏ͱ͢Δͱ ඵ୯ҐͰॲཧ͠Α͏ͱ͢Δ
\ JE ˘˘ ^ \ JE ˘˘ ^
˘˘ (&5BQJNFEJB@MFT < \ JE ˘˘ ^ \ JE ˘˘ ^ ˘˘ \ JE ˘˘ ^ \ JE ˘˘ ^ ˘˘ > ΞϧόϜ݅ͷଟ͍Ϣʔβ͕ େྔʹը૾Ξοϓϩʔυ͢Δͱ ϦΫΤετ͕٧·Δ
˙Ͳ͏͢Δ͔ʁ w ΞϓϦଆͷଞͷػೳվमͷํ͕ॏཁʢ10அʣ w େ෦ͷϢʔβʔΞϧόϜͷ͕݅গͳ͍ͷͰ0, w ಉظͷ࣮ΛܾҙͭͭαʔόΛଟΊʹฒͯ͠Β͑͘Δ w मਖ਼λεΫΛόοΫϩάʹͷ͔ͤͯΒϲ݄ޙʹΑ͏͘ணख
˙3FBMNΛ͏ w 3FBMNJ04"OESPJEͰͦΕͧΕ΄΅ಉ͍͡ํ͕Ͱ͖Δ w εΩʔϚ౷ҰͰ͖Δ w εΫϥϜνʔϜʹ͏͚ͬͯͭ
αʔόΫϥΠΞϯτಉظ
˙ಉظʁΩϟογϡʁ w αʔό্ͷσʔλΛQVMM͢Δ͚࣮࣭ͩΩϟογϡʁ؆୯Ͱྑ͍ w ೦ͷͨΊෆ߹࣌༻ͷΩϟογϡআϘλϯ༻ҙ w 30*ཁ݅ʹݟ߹Θͳ͍ͨΊ&WFSOPUFͷΑ͏ͳ ෳࡶͳ࣮ͯ͠ͳ͍ IUUQTHJUIVCDPNOJOKJOLVO&%".4ZODCMPCNBTUFS&%". +BQBOFTFNE
None
None
˙શ݅ࠩऔಘ"1* w ΞϧόϜͷσʔλΛಉظ͢ΔͨΊͷ"1*Λͭ༻ҙ w ͭશ݅ಉظ༻ w ॳճʹϒϩοΫͤͣ6*ʹөग़དྷΔ w ͏ͭࠩऔಘ༻ w
ΞϓϦىಈ࣌ͱ͔௨डऔΓ࣌ʹݺͼग़͢ w ͍ͣΕʹͤΑϖʔδϯάͷ࣮ඞཁ
˙ϖʔδϯάͷ*' w DVSTPS QBHJOH5PLFO ํࣜΛ࠾༻ w ΫϥΠΞϯτϖʔδϯάʹ͍ͭͯ΄ͱΜͲߟ͑ͳͯ͘ྑ͍ w
࣍ճɺಉظΛ͢Δࡍʹ࠷ޙͷDVSTPSΛϦΫΤετʹ͢ (&5GPP ˑDVSTPS˒ˑ$J",(K#Q˒ ˑIBT/FYU˒USVF (&5GPP DVSTPS$J",(K#Q ˑDVSTPS˒ˑX:K#Q09"˒ ˑIBT/FYU˒USVF (&5GPP DVSTPSX:K#Q09" ˑDVSTPS˒ˑJ"K,#U(M˒ ˑIBT/FYU˒GBMTF (PPHMF "1*c(PPHMF 1MBUGPSNc(PPHMF%FWFMPQFSTIUUQTEFWFMPQFSTHPPHMFDPN BQJ IMKBQBHJOBUJPO %SPQCPY$PSF"1*FOEQPJOUSFGFSFODFIUUQTXXXESPQCPYDPNEFWFMPQFSTDPSFEPDTEFMUB
w .Z42-ͰޮΑ͘ϖʔδϯά͢Δʹʁ w UJNFTUBNQͱJE 1, Λಉ࣌ʹ͛ͯ3BOHFΫΤϦʹ͢Δͱྑ͍ ˙.Z42-ͱϖʔδϯά 4&-&$5
'30.GPP-*.*50''4&5ꅾְ 4&-&$5 '30.GPP8)&3&VQEBUFE@BU -*.*5VQEBUFE@BUꅾ醱儗כ 4&-&$5 '30.GPP 8)&3& VQEBUFE@BU 03 VQEBUFE@BU "/%JE 03%&3#:VQEBUFE@BU"4$ JE"4$-*.*5 ࢀߟͳΜ͔ͩΒ$06/5 ͱ͔42-@$"-$@'06/%@3084ͱ͔-*.*50''4&5ͷϖʔδϯάΊΑ͏ͥIUUQUPHFUUFSDPNMJ
˙ΫϥΠΞϯτ w ্ड़ͷ"1*Λར༻͠ඇৗʹ؆୯ͳϩδοΫͰಉظ͕࣮ݱՄೳ w J04ͱ"OESPJEͰεΩʔϚҰॹ w ؔ࿈͢ΔΫϥε΄΅ಉ͡ઃܭͰ͍͚Δ
QVCMJDWPJEVQEBUF OBM-JTU.FEJB'JMFNFEJB'JMFT \ 3FBMNSFBMNHFU3FBMN USZ\ SFBMNCFHJO5SBOTBDUJPO GPS .FEJB'JMFNFEJB'JMFNFEJB'JMFT
\ JG NFEJB'JMFJT%FMFUFE \ SFBMNXIFSF "MCVN.FEJB'JMFDMBTT FRVBM5P JE NFEJB'JMFJE OE'JSTU SFNPWF'SPN3FBMN DPOUJOVF ^ SFBMNDPQZ5P3FBMN0S6QEBUF DPOWFSU5P3FBMN0CKFDU NFEJB'JMF ^ SFBMNDPNNJU5SBOTBDUJPO OPUJGZ6QEBUF ^OBMMZ\ SFBMNDMPTF ^ ^
QVCMJDWPJEVQEBUF OBM-JTU.FEJB'JMFNFEJB'JMFT \ 3FBMNSFBMNHFU3FBMN USZ\ SFBMNCFHJO5SBOTBDUJPO GPS .FEJB'JMFNFEJB'JMFNFEJB'JMFT
\ JG NFEJB'JMFJT%FMFUFE \ SFBMNXIFSF "MCVN.FEJB'JMFDMBTT FRVBM5P JE NFEJB'JMFJE OE'JSTU SFNPWF'SPN3FBMN DPOUJOVF ^ SFBMNDPQZ5P3FBMN0S6QEBUF DPOWFSU5P3FBMN0CKFDU NFEJB'JMF ^ SFBMNDPNNJU5SBOTBDUJPO OPUJGZ6QEBUF ^OBMMZ\ SFBMNDMPTF ^ ^ "1*ͷϨεϙϯεΛ10+0ʹ Ϛοϐϯάͨ͠ͷ
QVCMJDWPJEVQEBUF OBM-JTU.FEJB'JMFNFEJB'JMFT \ 3FBMNSFBMNHFU3FBMN USZ\ SFBMNCFHJO5SBOTBDUJPO GPS .FEJB'JMFNFEJB'JMFNFEJB'JMFT
\ JG NFEJB'JMFJT%FMFUFE \ SFBMNXIFSF "MCVN.FEJB'JMFDMBTT FRVBM5P JE NFEJB'JMFJE OE'JSTU SFNPWF'SPN3FBMN DPOUJOVF ^ SFBMNDPQZ5P3FBMN0S6QEBUF DPOWFSU5P3FBMN0CKFDU NFEJB'JMF ^ SFBMNDPNNJU5SBOTBDUJPO OPUJGZ6QEBUF ^OBMMZ\ SFBMNDMPTF ^ ^ αʔόʔଆͰཧআ͞ΕͯͨΒ 3FBMN͔Βফ͢
QVCMJDWPJEVQEBUF OBM-JTU.FEJB'JMFNFEJB'JMFT \ 3FBMNSFBMNHFU3FBMN USZ\ SFBMNCFHJO5SBOTBDUJPO GPS .FEJB'JMFNFEJB'JMFNFEJB'JMFT
\ JG NFEJB'JMFJT%FMFUFE \ SFBMNXIFSF "MCVN.FEJB'JMFDMBTT FRVBM5P JE NFEJB'JMFJE OE'JSTU SFNPWF'SPN3FBMN DPOUJOVF ^ SFBMNDPQZ5P3FBMN0S6QEBUF DPOWFSU5P3FBMN0CKFDU NFEJB'JMF ^ SFBMNDPNNJU5SBOTBDUJPO OPUJGZ6QEBUF ^OBMMZ\ SFBMNDMPTF ^ ^ 10+0Λ3FBMN0CKFDUʹϚοϐϯάͨ͠ͷΛ ༩͑Δͱ৽نՃPSߋ৽͕উखʹߦΘΕΔ
˙ۤ࿑ w 2"தͷΫϥογϡɾϝϞϦϦʔΫൃੜ w ࣌҆ఆͯ͠ͳ͔ͬͨͷͰෳόʔδϣϯࢼͨ͠ʢࠓɾɾɾʁʣ w SFBMNKBWBॳճಋೖ͔ΒϦϦʔε·Ͱʹܭόʔδϣϯࢼͨ͠ W ॳճಋೖ W
W ։ൃதʹVQ W4/"14)05 W͕2"தʹ4*(4&(7ͰVQ W 4/"14)05Ͱ4*("#35͕ग़ͨͷͰҰؾʹͨ͠ W ˡWͰ҆ఆͨ͠ͷͰϦϦʔε൛Ͱར༻
None
˙·ͱΊ w ՈΞϧόϜΈͯͶεΫϥϜνʔϜͰ։ൃ͍ͯ͠Δ w 3FBMNΈͯͶνʔϜͷ։ൃελΠϧʹϚον͍ͯͨ͠ w +40/"1*ͱ3FBMNͷΈ߹Θͤͱͯγϯϓϧ͔ͭڧྗ
˙࠾༻త ΈͯͶνʔϜͰ ʮJ04"OESPJEͲͪΒॻ͖͍ͨʂʯ ʮ3BJMT͚ͬͯͨͲΞϓϦॻ͍͍͖͍ͯͨʂʯ ʮੈքதͷՈʹসإΛಧ͚͍ͨʂʂʯ ͳͲͷΤϯδχΞΛืू͓ͯ͠Γ·͢ʂʂ