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
はじめてのRuby 第12章 / Ruby Practice 12
Search
muttan
November 29, 2016
Programming
0
120
はじめてのRuby 第12章 / Ruby Practice 12
muttan
November 29, 2016
Tweet
Share
More Decks by muttan
See All by muttan
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
bath_poo_
0
110
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
160
ISUCONってなんだ / What is ISUCON
bath_poo_
0
350
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
190
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
160
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
260
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
140
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
220
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
250
Other Decks in Programming
See All in Programming
5つのアンチパターンから学ぶLT設計
narihara
1
120
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
200
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
580
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
380
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
400
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
Benchmark
sysong
0
270
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
570
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
370
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
320
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
240
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Designing for humans not robots
tammielis
253
25k
Site-Speed That Sticks
csswizardry
10
660
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
A Tale of Four Properties
chriscoyier
160
23k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
Git: the NoSQL Database
bkeepers
PRO
430
65k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
The Cult of Friendly URLs
andyhume
79
6.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Transcript
ͨͷ͍͠3VCZୈষ
ͨͷ͍͠ ᕙ ?@?P ᕗ
3VCZ
ୈճ
ୈষ/VNFSJDΫϥε
/VNFSJDͷΫϥεߏ
w *OUFHFSΫϥεʢ ͳͲʣ'MPBUΫϥε ʢ ͳͲʣ/VNFSJDΫϥεͷαϒΫϥε ͱͯ͠ఆٛ͞Ε͍ͯΔ /VNFSJDͷΫϥεߏ /VNFSJD *OUFHFS
ʢʣ 'JYOVN ʢ௨ৗͷʣ #JHOVN ʢେ͖ͳʣ 'MPBU ʢුಈখʣ 3BUJPOBM ʢ༗ཧʣ $PNQMFY ʢෳૉʣ
w ௨ৗϓϩάϥϜͰѻ͏'JYOVNʹऩ·Δఔ Ͱ͋Δ͕ ສ͕Ұ͑ͯ͠·ͬͯࣗಈతʹ#JHOVN Ϋϥεʹม͞ΕΔ /VNFSJDͷΫϥεߏ JSC NBJO O
JSC NBJO ODMBTT 'JYOVN JSC NBJO N ʜʢུʣ JSC NBJO NDMBTT #JHOVN
w 3VCZͰ༗ཧෳૉΛѻ͏͜ͱͰ͖Δ w ༗ཧ3BUJPOBMΫϥε ෳૉ$PNQMFYΫϥ εͰද͢ w ྫʣҎԼͷࣜΛ3BUJPOBMΫϥεΛ༻͍ͯܭࢉͯ͠ ΈΔ /VNFSJDͷΫϥεߏ
2 5 + 1 3
w ҎԼͷΑ͏ʹར༻͢Δ w UP@GϝιουΛ͏ͱ'MPBUΦϒδΣΫτʢখʣ ͷม͕ߦΘΕΔ w ࢠOVNFSBUPS
EFOPNJOBUPSϝιουͰ औಘͰ͖Δ /VNFSJDͷΫϥεߏ
w ෳૉΛѻ͏$PNQMFYΦϒδΣΫτҎԼͷΑ͏ ʹѻ͏ w $PNQMFY ࣮෦ ڏ෦ ͱͯ͠ੜ͢Δ w ࣮෦SFBM
ڏ෦JNBHJOBSZϝιουͰऔಘՄೳ /VNFSJDͷΫϥεߏ
ͷϦςϥϧ
w ΦϒδΣΫτΛද͢Ϧςϥϧͷྫ ͷϦςϥϧ Ϧςϥϧ ҙຯ ͷਐදه ͷਐදه Y
ͷਐදه C ͷਐදه ුಈখ F ුಈখͷࢦදه 1ΦϒδΣΫτͷϦςϥϧࢀর
w ΦϒδΣΫτΛද͢Ϧςϥϧͷྫ ͷϦςϥϧ Ϧςϥϧ ҙຯ ͷਐදه ͷਐදه Y
ͷਐදه C ͷਐදه ුಈখ F ුಈখͷࢦදه 1ΦϒδΣΫτͷϦςϥϧࢀর
w খΛؚΉුಈখͱͳΔ w ුಈখΛࢦදه͢Δࡍ ʮԾ෦Fࢦ෦ʯ ͱදه͢ΔʢF&Ͱ͍͍ʣ w খͷޙʹSΛ͚Δͱ3BUJPOBMΦϒδΣΫ τ͕ੜ͞ΕΔ ͷϦςϥϧ
w ΦϒδΣΫτΛද͢Ϧςϥϧͷྫ ͷϦςϥϧ
ࢉज़ԋࢉ
w ΦϒδΣΫτಉ࢜ͷԋࢉ ҎԼͷԋࢉࢠΛͬͯ ߦ͏͜ͱ͕Ͱ͖Δ ࢉज़ԋࢉ ԋࢉࢠ ԋࢉ Ճࢉ ݮࢉ
ࢉ আࢉ ༨ ͖
w *OUFHFS 'MPBU'MPBUʹͳΔ͕ *OUFHFSಉ࢜ͷ ԋࢉ݁Ռ͕*OUFHFSʹͳΓ 'MPBUಉ࢜ͷԋࢉ݁ Ռ͕'MPBUʹͳΔ ࢉज़ԋࢉ
w ༗ཧͷԋࢉʢ ʣ ϦςϥϧදهΛ༻ ͍Δͱ࣍ͷΑ͏ʹॻ͘͜ͱ͕Ͱ͖Δ ࢉज़ԋࢉ
w ༗ཧͷԋࢉʢ ʣ ϦςϥϧදهΛ༻ ͍Δͱ࣍ͷΑ͏ʹॻ͘͜ͱ͕Ͱ͖Δ w ෛͷ͖3BUJPOBMΦϒδΣΫτΛฦ͢ ࢉज़ԋࢉ
w ෳૉͷԋࢉ ϦςϥϧΛͬͯҎԼͷΑ͏ʹه ड़͢Δ͜ͱ͕Ͱ͖Δ ࢉज़ԋࢉ
w ʢআࢉʣʢ༨ʣҎ֎ʹ আࢉΛߦ͏ํ๏͕͋Δ w YEJW Z YΛZͰׂͬͨͷΛฦ͢ w YRVP
Z YΛZͰׂͬͨͷΛฦ͢ಉ࢜ͷԋࢉͷ߹ 3BUJPOBM ΦϒδΣΫτ͕ฦΔ w YNPEVMP Z YΛZͰׂͬͨ༨ΓΛฦ͢ w YEJWNPE Z YΛZͰׂͬͨͱ͖ͷͱ༨ΓΛྻʹͯ͠ฦ͢ আࢉ
w YEJW Z YΛZͰׂͬͨͷΛฦ͢EJWϝιουΛݺ ͼग़͠ qPPSΛऔΔ͜ͱͰܭࢉ͞ΕΔ w YRVP Z
YΛZͰׂͬͨͷΛฦ͢ಉ࢜ͷԋࢉͷ ߹ 3BUJPOBMΦϒδΣΫτ͕ฦΔ আࢉ
w YNPEVMP Z YΛZͰׂͬͨ༨ΓΛฦ͢ w YEJWNPE Z YΛZͰׂͬͨͱ͖ͷͱ༨ΓΛྻʹͯ͠ฦ͢
YEJW Z ༨ΓYNPEVMP Z ͱಉ͡ আࢉ
w YSFNBJOEFS Z YΛZͰׂͬͨ༨ΓΛฦ͢NPEVMPͱҟͳΓ ༨ Γͷූ߸Yͷූ߸ʹ४ͣΔ আࢉ
w θϩআࢉΛߦͬͨ߹ w *OUFHFSΫϥεͷ߹ྫ֎͕ൃੜ w 'MPBUΫϥεͰ /B/*OpOJUZ͕ฦΔ আࢉ
.BUIϞδϡʔϧ
w ࡾ֯ؔରؔͳͲԋࢉͷͨΊͷϝιο υ ఆ.BUIϞδϡʔϧͰఏڙ͞Ε͍ͯΔ w ͦͷଞϝιουϦϑΝϨϯεࢀরͷ͜ͱ IUUQTEPDTSVCZMBOHPSHKBMBUFTUDMBTT .BUIIUNM
.BUIϞδϡʔϧ
ܕͷม
w *OUFHFSΦϒδΣΫτˠ'MPBUΦϒδΣΫτUP@G ϝιουΛར༻͢Δ w 'MPBUΦϒδΣΫτˠ*OUFHFSΦϒδΣΫτUP@J ϝιουΛར༻͢Δ w จࣈྻUP@GจࣈྻUP@Jͱ͢Δ͜ͱͰ 4USJOHΦ ϒδΣΫτΛ*OUFHFSΦϒδΣΫτ'MPBUΦϒδΣ
Ϋτʹม͢Δ͜ͱ͕Ͱ͖Δ ܕͷม
w UP@G UP@Jϝιουͷ༻ྫ ܕͷม
w 'MPBUUP@GΓࣺͯͨΛฦ͢ w ࢛ࣺޒೖ͕ͨ͠ཉ͍͠߹ SPVOEϝιου Λ͏ w ҾͰؙΊΔܻΛࢦఆ͢Δ͜ͱ͕Ͱ͖Δ ܕͷม
w ҾΛࢦఆ͠ͳ͔ͬͨ߹ࣗʹ࠷͍ۙ ͕ฦΔ w ෛΛ༩͑Δͱ ෦ΛؙΊΔ ܕͷม
w DFJMϝιου ࣗͱ͍͔͠ΑΓେ͖ͳ ͷ͏ͪ࠷খͷͷΛฦ͢ ܕͷม
w qPPSϝιου ࣗͱ͍͔͠ΑΓখ͞ͳ ͷ͏ͪ࠷େͷͷΛฦ͢ ܕͷม
w UP@SϝιουΛݺͿ͜ͱͰ3BUJPOBMΦϒδΣΫ τ UP@DϝιουΛݺͿ͜ͱͰ$PNQMFYΦϒδΣ Ϋτʹม͢Δ͜ͱ͕Ͱ͖Δ ܕͷม
Ϗοτԋࢉ
w *OUFHFSΫϥεͰϏοτԋࢉΛར༻Ͱ͖Δ Ϗοτԋࢉ ԋࢉࢠ ԋࢉ d Ϗοτస Ϗοτੵ c
Ϗοτ ? ഉଞతཧ ӈγϑτ ࠨγϑτ
w Ϗοτԋࢉͷྫ Ϗοτԋࢉ
ཚ
w 3BOEPNSBOEϝιουͰٙࣅཚΛಘΒΕΔ w ҾΛ༩͑ͣʹݺͼग़ͨ͠߹ Ҏ্ະຬ ͷ࣮͕ฦΔ w Ҿʹਖ਼ͷOΛ༩͑ͨ߹ Ҏ্Oະຬͷ Λฦ͢
ཚ
w 3BOEPNΦϒδΣΫτΛੜ͢ΔࡍʹTFFEΛ ઃఆ͢Δ͜ͱ͕Ͱ͖Δ w ҾΛলུͨ͠߹ 3BOEPNOFX@TFFEͷΛ ༻͢Δʢ3BOEPNOFX@TFFEదͳTFFEΛ ฦ͢ϝιουʣͭ·Γʜ
ཚ
w 3BOEPNΦϒδΣΫτΛੜ͢Δͨͼʹ ৽͍͠ ཚྻ͕ಘΒΕΔ͜ͱʹͳΔ ཚ
w ҆શͳཚΛੜʹ 4FDVSF3BOEPNϞδϡʔ ϧΛར༻͢ΔʢηογϣϯΩʔ伴ͷੜͳͲ ʹద͍ͯ͠Δʣ w CBTFϝιου SBOEPN@CZUFT IFYͱݴͬ ͨϝιου͕͋Δ
w ҾʹόΠτΛࢦఆ͢Δ͜ͱͰ ͦͷ͞ͷϥ ϯμϜͳόΠτྻ͕ฦΔ ཚ
w 4FDVSF3BOEPN༻ྫ ཚ
্͑͛
w *OUFHFSΫϥεॲཧͷճྻͷཁૉͳͲ Λ্͑͛ΔͨΊʹΘΕΔ w ͜ͷઅͰհ͢Δͷ ࢦఆ͞Εͨճ͚ͩॲཧ Λ܁Γฦ͢ΠςϨʔλ w UJNFT VQUP
EPXOUP TUFQ ্͑͛
w OUJNFT\cJcʜ^ Oճͷ܁Γฦ͠Λߦ͏ϒϩοΫมJʹ͞ΕΔ ʙOͰ͋Δ ্͑͛
w GSPNVQUP UP \cJcʜ^ GSPN͔ΒUPʹୡ͢Δ·ͰJΛͭͣͭՃࢉ͠ͳ͕ Β܁Γฦ͢ʢUPGSPNճϧʔϓʣ w UPGSPNͷ߹ϧʔϓ͠ͳ͍ ্͑͛
w GSPNEPXOUP UP \cJcʜ^ GSPN͔ΒUPʹୡ͢Δ·ͰJΛͣͭݮΒ͠ͳ͕Β ܁Γฦ͢ w GSPNUPͷ߹ϧʔϓ͠ͳ͍ ্͑͛
w GSPNTUFQ UP TUFQ \cJcʜ^ GSPN͔ΒUP·ͰTUFQࠁΈͰ܁Γฦ͢ w ʮTUFQ͔ͭGSPNUPͷ߹ʯ·ͨʮTUFQ ͔ͭGSPNUPͷ߹ʯ܁Γฦ͞ͳ͍ ্͑͛
w UJNFT VQUP EPXOUP TUFQϝιου ݺͼग़ ͠ͷࡍʹҾΛ͞ͳ͚Ε&OVNSBUFSΦϒδΣ Ϋτ͕ฦΔ w NBQpSTUNBYͱ͍ͬͨ&OVNSBUPSΫϥεͷ
ϝιουͰऩूͰ͖ΔΑ͏ʹͳΔ ্͑͛
ؙΊޡࠩ
w ͳͲਐͰද͢͜ͱͷग़དྷͳ͍ු ಈখʹ͍ͭͯޡࠩΛؾʹ͢Δඞཁ͕͋ Δ w ্ͷΑ͏ʹͷׂΓࢉͱͯ͠ද͢͜ͱ͕Ͱ͖ Δ߹ 3BUJPOBMΦϒδΣΫτΛ༻͍Δ͜ͱͰ ؙΊޡ͕ࠩͳ͍Α͏ʹԋࢉ͢Δ͜ͱ͕Ͱ͖Δ w
CJHEFDJNBMͱ͍͏ͷ͋ΔΑ ؙΊޡࠩ
ࠓճͷ ·ͱΊ
·ͱΊ w 3VCZͰුಈখ͚ͩͰͳ͘ ༗ཧ ෳૉΛѻ͏Ϋϥε͕ଘࡏ͢Δ w *OUFHFSΫϥεͰϏοτԋࢉ༻ҙ͞Ε͍ͯΔ w 3BOEPNΫϥεʹΑٖͬͯࣅཚΛੜ͢Δ Έ͕ఏڙ͞Ε͍ͯΔ
w UJNFT VQUP EPXOUP TUFQϝιου ݺͼग़͠ ͷࡍʹҾΛ͞ͳ͚Ε&OVNSBUFSΦϒδΣΫ τ͕ฦΔ