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
69
はじめての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
100
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
130
ISUCONってなんだ / What is ISUCON
bath_poo_
0
310
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
160
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
140
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
230
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
110
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
190
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
230
Other Decks in Programming
See All in Programming
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
subpath importsで始めるモック生活
10tera
0
310
Macとオーディオ再生 2024/11/02
yusukeito
0
370
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.7k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
120
C++でシェーダを書く
fadis
6
4.1k
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
1.4k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
Realtime API 入門
riofujimon
0
150
CSC509 Lecture 12
javiergs
PRO
0
160
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1366
200k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
4 Signs Your Business is Dying
shpigford
180
21k
Writing Fast Ruby
sferik
627
61k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Embracing the Ebb and Flow
colly
84
4.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Statistics for Hackers
jakevdp
796
220k
It's Worth the Effort
3n
183
27k
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Ͱྫ֎Λҙਤతʹൃੜͤ͞Δࣄ͕Ͱ͖Δ