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 第10章 / Ruby Practice 10
Search
muttan
November 15, 2016
Programming
0
75
はじめてのRuby 第10章 / Ruby Practice 10
muttan
November 15, 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
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
280
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
360
Claude Codeの使い方
ttnyt8701
1
130
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
1
130
XSLTで作るBrainfuck処理系
makki_d
0
210
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
360
Go Modules: From Basics to Beyond / Go Modulesの基本とその先へ
kuro_kurorrr
0
120
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
820
CursorはMCPを使った方が良いぞ
taigakono
0
140
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
170
A comprehensive view of refactoring
marabesi
0
970
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
110
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
What's in a price? How to price your products and services
michaelherold
245
12k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Visualization
eitanlees
146
16k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
Producing Creativity
orderedlist
PRO
346
40k
Faster Mobile Websites
deanohume
307
31k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
GitHub's CSS Performance
jonrohan
1031
460k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Transcript
ͨͷ͍͠3VCZୈষ
ͨͷ͍͠ ٩ P?@? و
3VCZ
ୈճ
ୈষΤϥʔॲཧͱྫ֎
Τϥʔॲཧʹ͍ͭͯ
w ࣮ߦதʹൃੜ͢ΔΤϥʔҎԼͷ௨Γ ᶃ σʔλͷΤϥʔ σʔλϑΥʔϚοτߏతͳΤϥʔ ᶄ γεςϜͷΤϥʔ ϋʔυσΟεΫোͷΑ͏ͳϓϩάϥϜͰͲ͏͠ Α͏ͳ͍ো ᶅ
ϓϩάϥϜͷϛε ະఆٛͷมϝιουͷΞΫηε ҾͷΦϒ δΣΫτͷޡΓ ܭࢉϛεFUD Τϥʔॲཧʹ͍ͭͯ
w ͜ͷΑ͏ͳΤϥʔΛ์ஔ͢Δͷྑ͘ͳ͍ͨΊ ԿΒ͔ͷରࡦΛߦ͏ඞཁ͕͋Δ ✦ ݪҼΛऔΓআ͘ ✦ ແࢹͯ͠ଓߦ ✦ ͏Ұࢼ͢ɹͳͲͳͲʜ
Τϥʔॲཧʹ͍ͭͯ
w ҎԼͷೋʹؾΛ͚ͭͯϓϩάϥϜΛ࡞͢Δ ͖Ͱ͋Δ ᶃ ೖྗσʔλΛഁյ͠ͳ͍͔ ᶄ Τϥʔ༰ͱ ʢՄೳͰ͋ΕʣݪҼΛ௨ ͢Δ͜ͱ͕Ͱ͖Δ͔ w
3VCZʹΤϥʔॲཧΛαϙʔτ͢Δྫ֎ͱ͍͏ Έ͕උΘ͍ͬͯΔ Τϥʔॲཧʹ͍ͭͯ
ྫ֎ॲཧ
w ϓϩάϥϜͷ࣮ߦதʹΤϥʔ͕ى͖Δͱྫ֎͕ ͛ΒΕΔ w ྫ֎͕ൃੜͨ࣌͠ɺॲཧΛҰ࣌தஅ͠ྫ֎ॲ ཧΛ୳͢ ྫ֎ॲཧ
w ྫ֎ॲཧͷΈ͕ແ͍ݴޠͰ Τϥʔॲཧͷ هड़͕ࡶʹͳΔ ྫ֎ॲཧ JGB GBMTF Τϥʔॲཧ FOE JGC
GBMTF Τϥʔॲཧ FOE JGD GBMTF Τϥʔॲཧ FOE CFHJO B C D SFTDVF Τϥʔॲཧ FOE ྫ֎ॲཧͷΈ͕ͳ͍ݴޠ 3VCZ
w ྫ֎ॲཧʹҎԼͷΑ͏ͳϝϦοτ͕͋Δ ᶃ ૢ࡞ͷྃΛҰͭҰͭ֬ೝ͠ͳͯ͘Τϥʔ ͕ࣗಈతʹݕग़͞ΕΔ ᶄ Τϥʔͷൃੜॴಉ࣌ʹใࠂ͞ΕΔͨΊσ όοά͠қ͍ ᶅ ਖ਼ৗͳॲཧͱΤϥʔॲཧΛ͔͚ͯ͠Δͨ
Ί ݟ௨͕͠ྑ͘ͳΔ ྫ֎ॲཧ
ྫ֎ॲཧͷॻ͖ํ
w ྫ֎ॲཧ࣍ͷΑ͏ʹهड़͢Δ w 3VCZͰྫ֎ʹؔ͢ΔใΦϒδΣΫτͱ͠ ͯѻΘΕΔ w SFTDVFઅͰSFUSZΛ༻͍Δͱ CFHJOҎԼͷॲ
ཧΛ͏ҰΓ͢͜ͱ͕Ͱ͖Δ ྫ֎ॲཧͷॻ͖ํ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVF ྫ֎͕ىͬͨ͜߹ͷॲཧ FOE
w SFTDVFʹଓ͚ͯมΛॻ͘͜ͱͰ ྫ֎ΦϒδΣ ΫτΛड͚औΔ͜ͱ͕Ͱ͖Δ ྫ֎ॲཧͷॻ͖ํ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVFม ྫ֎͕ىͬͨ͜߹ͷॲཧ FOE
w ม໊Λ໌ࣔ͠ͳͯ͘ άϩʔόϧมʹΤ ϥʔใ͕֨ೲ͞ΕΔ w ͨͩ͠ ໌ࣔతʹมΛએݴͨ͠΄͏͕Θ͔Γ
͘͢ͳΔͷͰॻ͜͏ ྫ֎ॲཧͷॻ͖ํ ม ҙຯ ࠷ޙʹൃੜͨ͠ྫ֎ͷΦϒδΣΫτ ! ࠷ޙʹൃੜͨ͠ྫ֎ͷҐஔʹؔ͢Δใ
w ྫ֎ΦϒδΣΫτʹҎԼͷϝιου͕ఆٛ͞ Ε͍ͯΔ ྫ֎ॲཧͷॻ͖ํ ϝιου໊ ҙຯ DMBTT ྫ֎ͷछྨ NFTTBHF ྫ֎ͷϝοηʔδ
CBDLUSBDF ྫ֎ͷൃੜͨ͠Ґஔʹؔ͢Δใ !ͱCBDLUSBDFಉ͡
ྫ֎ॲཧͷॻ͖ํ 'JMFΦʔϓϯͰΤϥʔ͕ىͬͨ͜߹ ྫ֎͕͛ΒΕͯSFTDVFઅʹೖΔ ΤϥʔΛใࠂͨ͠Β ࣍ͷϑΝΠϧͷॲཧҠΔ 1XDSC࣮ߦ
ྫ֎ॲཧͷॻ͖ํ w ࣮ߦ݁Ռ SVCZXDSCGUYUGUYUGUYUGUYU GUYU GUYU /PTVDIpMFPSEJSFDUPSZ!SC@TZTPQFOGUYU GUYU UPUBM Τϥʔͷ߹ग़ྗͯ࣍͠ͷ
ϑΝΠϧΛॲཧ
ྫ֎ॲཧͷॻ͖ํ w SFTDVFઅ͕ͳ͍߹ݺͼग़͠ݩʹḪͬͯྫ֎ ॲཧΛߦ͏ EFGGPP 'JMFPQFO lTIJNBNPOl FOE EFGCBS
GPP FOE CFHJO CBS SFTDVFFY QSJOUFYNFTTBHF laOz FOE CFHJO CBS GPP 'JMFPQFO SFTDVF ྫ֎ൃੜ
ޙॲཧ
w ྫ֎͕ىͬͯ͜ى͜Βͳ࣮ͯ͘ߦ͍ͨ͠ॲ ཧʢྫ͑։͍ͨϑΝΠϧΛΫϩʔζ͍ͨ͠ʣ͕ ͋Δͱ͖ FOTVSFઅʹޙॲཧΛهड़͢Δ ޙॲཧ CFHJO ྫ֎Λൃੜͤ͞ΔՄೳੑͷ͋Δॲཧ SFTDVFม ྫ֎͕ىͬͨ͜߹ͷॲཧ
FOTVSF ྫ֎ͷ༗ແʹ͔͔ΘΒ࣮ͣߦ͞ΕΔॲཧ FOE
ޙॲཧ ॻ͖ࠐΈઌͷϑΝΠϧ͕։͚ͳ͔ͬͨ߹ Ͱ TSDDMPTF͢Δඞཁ͕͋ΔͨΊ FOTVSFઅʹTSDDMPTFΛهड़ͨ͠
SFTDVFम০ࢠ
w JGम০ࢠVOMFTTम০ࢠͷΑ͏ͳॻ͖ํͰ͖Δ w ͜ΕҎԼͷจͱಉ༷Ͱ͋Δ SFTDVFम০ࢠ ࣜSFTDVFࣜ CFHJO ࣜ SFTDVF ࣜ
FOE
w ༻ྫ w ίϚϯυϥΠϯ͔Β͞ΕͨҾ͕ྻ ྫ ͷ߹ͦͷ ෆਖ਼ͳ ྫlBCDz
ͷͱ͖ Ληοτ͢Δ SFTDVFम০ࢠ
ྫ֎ॲཧͷߏจͷิ
w ϝιουͷॲཧશମΛCFHJOʙFOEͰׅΔΑ͏ͳ ߹ CFHJOʙFOEΛলུͰ͖Δ ྫ֎ॲཧͷߏจͷิ EFGGPP ϝιουຊମ SFTDVFFY ॲཧ FOTVSF
ޙॲཧ FOE
ัଊ͢Δྫ֎Λࢦఆ͢Δ
w ෳͷྫ֎͕ൃੜ͢ΔՄೳੑ͕͋Δ߹ ิ͢ Δྫ֎ΛSFTDVFઅʹࢦఆ͢Δ͜ͱͰॲཧΛ͚ Δ͜ͱ͕Ͱ͖Δ ัଊ͢Δྫ֎Λࢦఆ͢Δ CFHJO ྫ֎͕ൃੜ͢ΔՄೳੑͷ͋Δॲཧ SFTDVF&YDFQUJPO &YDFQUJPOม
&YDFQUJPO &YDFQUJPOʹର͢Δॲཧ SFTDVF&YDFQUJPOม &YDFQUJPOʹର͢Δॲཧ SFTDVF ͦΕҎ֎ͷྫ֎ʹର͢Δॲཧ FOE
ྫ֎Ϋϥε
w ͯ͢ͷྫ֎ &YDFQUJPOΫϥεͷαϒΫϥε ʹͳ͓ͬͯΓ ΤϥʔͷछྨʹԠ༷ͨ͡ʑͳྫ֎ Λఆ͍ٛͯ͠Δʢ1ࢀরʣ w SFTDVFઅͰࢦఆͨ͠ྫ֎ͷछྨ ྫ֎Ϋϥε ͷΫϥε໊Ͱ͋Δ
w ࢦఆΛߦΘͳ͍߹ 4UBOEBSE&SSPSͱͦͷ αϒΫϥε͕ัଊ͞ΕΔʢॏཁʣ ྫ֎Ϋϥε
w ࣗͰྫ֎Λఆٛ͢Δ͜ͱͰ͖Δ w 4UBOEBSE&SSPSΫϥεΛܧঝͨ͠ΫϥεΛ࡞ ͠ ߋʹͦΕΛܧঝ͢Δͷ͕ҰൠతͰ͋Δ w ࠷ޙʹσϞΛ͠·͢ ྫ֎Ϋϥε
ྫ֎Λൃੜͤ͞Δ
w ࣗͰྫ֎Λൃੜͤ͞Δʹ SBJTFϝιουΛ͏ ʢ݅ʹΑͬͯྫ֎Λൃੜͤ͞Δ ͳͲʣ w SBJTFϝιουʹݺͼग़͠ํ๏͕ͭଘࡏ͢Δ ᶃ SBJTFϝοηʔδ ᶄ
SBJTFྫ֎Ϋϥε ᶅ SBJTFྫ֎Ϋϥε ϝοηʔδ ᶆ SBJTF ྫ֎Λൃੜͤ͞Δ
ᶃ SBJTFϝοηʔδ 3VOUJNF&SSPSΛൃੜͤ͞ ྫ֎ΦϒδΣΫτʹϝοηʔδͱ͠ ͯจࣈྻΛηοτ͢Δ ᶄ SBJTFྫ֎Ϋϥε ࢦఆͨ͠ྫ֎Λൃੜͤ͞Δ ᶅ SBJTFྫ֎Ϋϥε
ϝοηʔδ ࢦఆͨ͠ྫ֎Λൃੜͤ͞ ৽͘͠ੜ͞Εͨྫ֎ΦϒδΣΫτʹ ϝοηʔδͱͯ͠จࣈྻΛηοτ ᶆ SBJTF 3VOUJNF&SSPSΛൃੜͤ͞ΔSFTDVFઅͰ࣮ߦ͢Δͱ ࠷ޙʹൃ ੜͨ͠ྫ֎Λ͏Ұൃੜͤ͞Δ ྫ֎Λൃੜͤ͞Δ
w ྫʣྫ֎ΫϥεΛ࡞͠ ͦͷྫ֎Λൃੜͤ͞Δ ྫ֎Λൃੜͤ͞Δ
w ͱ͜ΖͰ 4UBOEBSE&SSPSͷεʔύʔΫϥεͰ͋ Δ&YDFQUJPOΫϥεΛԿނܧঝ͠ͳ͍ͷ͔ w SFTDVFઅࢦఆ͕ͳ͍߹ 4UBOEBSE&SSPSΫ ϥεͱͦͷαϒΫϥεΛัଊ͢ΔͨΊ ྫ֎Λൃੜͤ͞Δ
w ͭ·Γ &YDFQUJPOΛܧঝͨ͠ΫϥεͩͱSFTDVF અͰΩϟον͞Εͳ͍ ྫ֎Λൃੜͤ͞Δ
w SFTDVFઅͰ&YDFQUJPOΛࢦఆ͢ΕΩϟον͢ Δ͜ͱͰ͖Δ͕ʜ w ͯ͢ͷྫ֎ΛΩϟονͯ͠͠·͏ͷͰ ·͠
͘ͳ͍ ྫ֎Λൃੜͤ͞Δ
w &YDFQUJPOΛัଊ͢Δͱ͍͏͜ͱ ͯ͢ͷྫ ֎ΛΩϟον͢Δ͜ͱʹͳΔ w 4JHOBM&YDFQUJPOͷ4*(*/5ͳΜ͔$USM$Λั ଊ͢ΔͷͰ ࠷ѱऴΘΒͳ͍ϓϩάϥϜ͕ग़དྷ্ ͕ͬͯ͠·͏Մೳੑʜ w
ྫ֎ΫϥεΛ࡞Δ࣌ 4UBOEBSE&SSPSΫϥεΛ ܧঝ͠·͠ΐ͏ ྫ֎Λൃੜͤ͞Δ
ࠓճͷ ·ͱΊ
·ͱΊ w SFTDVFઅΛ༻͍Δ͜ͱͰ ྫ֎ॲཧΛߦ͏͜ͱ͕ Ͱ͖Δ w SFTDVFʹྫ֎Λࢦఆ͢Δͱ ͦͷྫ֎ͷΈัଊ͢ Δ͜ͱ͕Ͱ͖Δࢦఆ͠ͳ͍߹
4UBOEBSE&SSPSͱͦͷαϒΫϥε͕ิ͞ΕΔ w ྫ֎͕ى͜Δ ى͜Βͳ͍ʹ͔͔ΘΒͣߦ͍͍ͨॲ ཧ FOTVSFઅʹهड़͢Δ w SBJTFͰྫ֎Λҙਤతʹൃੜͤ͞Δࣄ͕Ͱ͖Δ