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
SioriでどのようにCustom Transitionを実装しているのか
Search
ferasyasin
September 24, 2014
Programming
3.2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SioriでどのようにCustom Transitionを実装しているのか
ferasyasin
September 24, 2014
Other Decks in Programming
See All in Programming
ソフトウェアラスタライザ
fadis
0
170
Go 1.27 における memory allocation の高速化
andpad
0
280
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
150
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
AIと壁打ちしながら進めるコスト管理
fufuhu
1
1.1k
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
1.1k
AIが無かった頃の素敵な出会いの話
codmoninc
1
480
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.9k
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
210
MySQLとPostgreSQLって何が違うの?
akagami
0
120
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
560
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
120
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
3
3.7k
Un-Boring Meetings
codingconduct
0
390
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.8k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Building Applications with DynamoDB
mza
96
7.2k
What's in a price? How to price your products and services
michaelherold
247
13k
Practical Orchestrator
shlominoach
191
12k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
580
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Statistics for Hackers
jakevdp
799
230k
Done Done
chrislema
186
16k
Transcript
4JPSJͰͲͷΑ͏ʹ$VTUPN5SBOTJUJPOΛ࣮͍ͯ͠Δ͔ ਅϑΟϥʔε
ࣗݾհ
ਅʢ͠ΜʣϑΟϥʔε ! ݄ΑΓΥϯςουϦʔגࣜձࣾʹσ βΠφʔͱͯ͠ࢀՃɻ ! 6*69ͷઃܭɾσβΠϯͪΖΜɺϑϩϯτ Τϯυͷ࣮ͬͯ·͢ʢ8FCɺΞϓϦ྆ํʣ ! ৄ͍͠ϓϩϑΟʔϧ ˠIUUQTXXXXBOUFEMZDPNVTFST
4JPSJϦϦʔε͠·ͨ͠ʂ
ͳΜͰδΣενϟʔૢ࡞ʁ ɾϘλϯͱ͔ඇδΣενϟʔʹൺೖྗྖҬ͕͍ͷͰɺɹɹ ɹը໘αΠζ͕େ͖ͯ͘ૢ࡞͕ѹతʹָͩ͠ૣ͍ ! ɾײతʹ͑ͯૢ࡞ָ͕͍͠ʂ ! ɾΧελϜͷUSBOTJUJPO͕ΞϓϦͷݸੑʹͳΔ ! ! ݴ༿Ͱઆ໌͢ΔΑΓ࣮ࡍʹͬͯΒͬͨ΄͏͕Θ͔Δͱ
ࢥ͏ͷͰμϯϩʔυͯͬͯ͠Έ͍ͯͩ͘͞ʂ
$VTUPN5SBOTJUJPO ͷΈ
$VTUPN5SBOTJUJPOΛܗ͢Δͭͷཁૉ GSPN7JFX$POUSPMMFS ҠಈݩͷWJFX$POUSPMMFS ! ! UP7JFX$POUSPMMFS ҠಈઌͷWJFX$POUSPMMFS ! ! BOJNBUJPO$POUSPMMFS
BOJNBUJPOͷ੍ޚΛ͢Δ
1VTI1PQͷ߹ QVTI·ͨQPQ7JFX$POUSPMMFSͰWJFXDPOUSPMMFSؒͷҠಈ ։࢝ OBWJHBUJPODPOUSPMMFSͷEFMFHBUFϝιουͰ͋Δ ‑navigationController: animationControllerForOperation: fromViewController: toViewController: ͕ݺΕΔ BOJNBUJPO$POUSPMMFSΛฦ͢
1VTI1PQͷ߹ QVTI·ͨQPQ7JFX$POUSPMMFSͰWJFXDPOUSPMMFSؒͷҠಈ ։࢝ OBWJHBUJPODPOUSPMMFSͷEFMFHBUFϝιουͰ͋Δ ‑navigationController: animationControllerForOperation: fromViewController: toViewController: ͕ݺΕΔ BOJNBUJPO$POUSPMMFSΛฦ͢
͜͜ͰDVTUPN༻ͷBOJNBUJPO$POUSPMMFSฦ͢
BOJNBUJPO$POUSPMMFSͬͯͳʹʁ 6*7JFX$POUSPMMFS"OJNBUFE5SBOTJUJPOJOHͷQSPUPDPMΛ࣮ͨ͠ΦϒδΣΫτ BOJNBUJPO$POUSPMMFSͰೋͭͷϝιουΛఆٛ͢Δඞཁ͕͋Δ ɾUSBOTJUJPO%VSBUJPO ɹUSBOTJUJPOͷΞχϝʔγϣϯͷ߹ܭ࣌ؒΛฦ͢ ɾBOJNBUF5SBOTJUJPO ɹUSBOTJUJPOͷΞχϝʔγϣϯΛఆٛ͢Δɻɹ ɹҾͰUSBOTJUJPO$POUFYUΛड͚औΔɻUSBOTJUJPO$POUFYU͔Β ɹGSPN7JFX$POUSPMMFSɺUP7JFX$POUSPMMFSɺDPOUBJOFS7JFX͕ ɹऔΕΔͷͰͦΕΛͬͯΞχϝʔγϣϯΛఆٛ͢Δɻ
$VTUPN5SBOTJUJPO Λ*OUFSBDUJWFʹ͢Δ
None
ͭͷཁૉ *OUFSBDUJPO$POUSPMMFS ɾ6*7JFX$POUSPMMFS*OUFSBDUJWF5SBOTJUJPOJOHͷQSPUPDPMΛ࣮ͨ͠ΦϒδΣΫτ ! ɾJOUFSBDUJWFUSBOTJUJPOJOHΛ؆୯ʹ࣮Ͱ͖Δ ɹ6*1FSDFOU%SJWFO*OUFSBDUJWF5SBOTJUJPO͕༻ҙ͞Ε͍ͯΔɻ ! ɾΞχϝʔγϣϯͷλΠϜϥΠϯ͕͋Δͱͯ͠ɺͦͷλΠϜϥΠϯ্ͷͲ͜ͷҐஔ ɹʹ͍Δ͔Λཧ͢Δɻ·ͨɺϢʔβͷೖྗʹΑͬͯQFSDFOU$PNQMFUFϓϩύ ɹςΟΛม͑Δ͜ͱͰΞχϝʔγϣϯΛ࠶ੜͨ͠Γר͖ͨ͠ΓͰ͖Δɻ
࣮ͷྲྀΕ ϢʔβͷೖྗʢδΣενϟʔʣΛݕ ! USBOTJUJPOΛ։࢝ ! BOJNBUJPO$POUSPMMFSΛOBWJHBUJPO$POUSPMMFSͷEFMFHBUFʹฦ͢ !
JOUFSBDUJPO$POUSPMMFSΛOBWJHBUJPO$POUSPMMFSͷEFMFHBUFʹฦ͢ ! Ϣʔβͷೖྗ͔ΒJOUFSBDUJPO$POUSPMMFSͷঢ়ଶΛΞοϓσʔτ͢Δ ! Ϣʔβͷೖྗ͕ऴΘͬͨΒJOUFSBDUJPO$POUSPMMFSʹUSBOTJUJPOΛ DBODFM͢Δ͔pOJTI͢Δ͔͑Δ
ϢʔβͷೖྗʢδΣενϟʔʣΛݕ ɾUSBOTJUJPO$POUSPMMFSͰϢʔβೖྗΛݕ͢ΔΑ͏ʹ ɹQBO(FTUVSF3FDPHOJ[FSΛ࡞Δɻ ! ɾͦͷQBO(FTUVSFΛରͷWJFX$POUSPMMFSʹషΔ
USBOTJUJPOΛ։࢝ ɾQBO(FTUVSFͷ6*(FTUVSF3FDPHOJ[FS4UBUF͕#FHBO ʹมΘͬͨΒUSBOTJUJPOʢQPQ7JFX$POUSPMMFS·ͨ QVTI7JFX$POUSPMMFSʣΛ։࢝͢Δ
BOJNBUJPO$POUSPMMFSΛOBWJHBUJPO$POUSPMMFSͷ EFMFHBUFʹฦ͢ ɾUSBOTJUJPO͕։࢝͢ΔͱOBWJHBUJPO$POUSPMMFSͷEFMFHBUFϝ ιουͰ͋ΔBOJNBUJPO$POUSPMMFS'PS0QFSBUJPO͕ݺΕΔͷ ͰBOJNBUJPO$POUSPMMFSΛฦ͢
JOUFSBDUJPO$POUSPMMFSΛOBWJHBUJPO$POUSPMMFSͷ EFMFHBUFʹฦ͢ ɾBOJNBUJPO$POUSPMMFS'PS0QFSBUJPO͕ݺΕͨ͋ͱ͙͢ʹ JOUFSBDUJPO$POUSPMMFS'PS"OJNBUJPO$POUSPMMFS͕ݺΕΔͷͰ JOUFSBDUJPO$POUSPMMFSΛฦ͢ɻ
Ϣʔβͷೖྗ͔ΒJOUFSBDUJPO$POUSPMMFSͷঢ়ଶΛ Ξοϓσʔτ͢Δ ɾQBO(FTUVSFͷTUBUF͕$IBOHFʹมΘͬͨΒδΣενϟʔͷҠಈڑ͔Β ɹQFSDFOUΛܭࢉͯ͠VQEBUF*OUFSBDUJWF5SBOTJUJPOϝιουʹҾͱͯ͠ ɹQFSDFOUΛͯ͠QFSDFOU$PNQMFUFEϓϩύςΟΛΞοϓσʔτ͢Δɻ ɾδΣενϟʔ͕ଓ͍ͯΔؒৗʹΞοϓσʔτ͢ΔΑ͏ʹ͢Δ ɾBOJNBUJPO$POUSPMMFSͷBOJNBUF5SBOTJUJPOϝιου͕BOJNBUJPOͷλΠϜϥ ɹΠϯΛ࡞ͬͯ͘ΕΔɻͦͷλΠϜϥΠϯ্ͷͲ͜ʹ͍Δ͔Λஅ͢ΔͨΊʹ ɹJOUFSBDUJPO$POUSPMMFSͷVQEBUF*OUFSBDUJWF5SBOTJUJPOϝιουΛݺͿɻ
Ϣʔβͷೖྗ͕ऴΘͬͨΒJOUFSBDUJPO$POUSPMMFSʹ USBOTJUJPOΛDBODFM͢Δ͔pOJTI͢Δ͔͑Δ ɾQBO(FTUVSFͷTUBUF͕$BODFMMFEɺ'BJMFEɺ·ͨ'JOJTIFE ʹͳͬͨ͜ͱͰδΣενϟʔ͕ऴྃͨ͜͠ͱΛݕ͢Δ ɾδΣενϟʔ͕ऴྃͨ͠ΒϢʔβ͕USBOTJUJPOΛΩϟϯηϧ͠ ͔ͨͬͨͷ͔͔ྃͨͬͨ͠ͷ͔Λஅͯ͠ JOUFSBDUJPO$POUSPMMFSͷDBODFM*OUFSBDUJWF5SBOTJUJPO·ͨ pOJTI*OUFSBDUJWF5SBOTJUJPOϝιουΛݺΜͰUSBOTJUJPOΛྃ ͤ͞Δɻ
ෳͷHFTUVSF SFDPHOJ[FSΛ੍ޚ͢Δ
1PQ 1VTI 4DSPMM 4JPSJͰͻͱͭͷWJFX$POUSPMMFSʹෳͷ HFTUVSFSFDPHOJ[FS͕ࠞࡏͯ͠Δɻ 4XJQF
Ͳ͏੍ͬͯޚ͍ͯ͠Δ͔ʁ ɾUSBOTJUJPO͕TUBSU͢Δ͔͠ͳ͍͔WJFX$POUSPMMFSͰஅ͢Δ ɾJOUFSBDUJPO$POUSPMMFS͔ΒWJFX$POUSPMMFSʹEFMFHBUFΛషΔ ɾJOUFSBDUJWF5SBOTJUJPO$BO4UBSU JOUFSBDUJWF5SBOTJUJPO4IPVME$BODFM ɹJOUFSBDUJWF5SBOTJUJPO4IPVME'JOJTIͳͲͷEFMFHBUFϝιου༻ҙͯ͠
ɹWJFX$POUSPMMFSͰͦΕͧΕͷJOUFSBDUJPO$POUSPMMFSͷϝιουΛ੍ޚ͢Δɻ ! ɾ6*(FTUVSF3FDPHOJ[FS%FMFHBUFΛར༻͢Δ ɾTIPVME3FDPHOJ[F4JNVMUBOFPVTMZ8JUI(FTUVSF3FDPHOJ[FS ɹɹ ɹHFTUVSF3FDPHOJ[FS4IPVME#FHJOΛ͏·͘ར༻͢Δɻ ɾͨͱ͑QPQ͢ΔWJFX͕ͳ͍࣌QPQͷJOUFSBDUJPO$POUSPMMFSͷHFTUVSFͷ ɹHFTUVSF3FDPHOJ[FS4IPVME#FHJOͰGBMTFΛฦͯͦͦ͠Ԡ͠ͳ͍Α͏ʹ͢Δɻ ! ɾWJFX$POUSPMMFSͰJT5SBOTJUJPOJOHϓϩύςΟΛ࡞ͬͯUSBOTJUJPOத͔Ͳ͏͔ͷ ɹϑϥάΛཱͯΔ ɾUSBOTJUJPOJOHதͰ͋ΕTDSPMM7JFXͷTDSPMM͠ͳ͍Α͏ʹ͢ΔͳͲɻ
ͬͯΈͯࢥͬͨ͜ͱ ɾJ04͔Βެ։͞Εͨ"1*ͳͷͰ·ͩ·ͩใ͕গͳ͍ ɾϕετϓϥΫςΟε͕Θ͔Βͳ͍ɻJOUFSBDUJWFUSBOTJUJPO͕ෳʹ ɹͳΔͱ్ʹෳࡶʹͳΔɻͲ͜ʹCVH͕͋Δ͔Θ͔Γʹ͍͘ɻ ! ɾUSBOTJUJPOΛΩϟϯηϧͯͦ͠ͷ··TDSPMMʹೖΔΑ͏ʹ͢Δͱ͔ɺ ɹBOJNBUJPOΛεϜʔεʹΓସ͑Δͷʹۤ࿑ͨ͠ ! ɾଞ͕ͬͯͳ͍ͬͨΒཱ͔ͭ
σβΠφʔืूͯ͠·͢ʂ IUUQTXXXXBOUFEMZDPNQSPKFDUT ΤϯδχΞืूͯ͠·͢ʂ IUUQTXXXXBOUFEMZDPNQSPKFDUT