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
DESAMIS Go Training Season 1 Day 2
Search
Yutaka Kato
April 13, 2021
Technology
0
1.4k
DESAMIS Go Training Season 1 Day 2
デザミス社内 Go 研修 (第1期) の2日目の資料です。
今回は Go と VS Code の環境構築です。GitHub で Hello, world! を含むプルリクエストを作成できればゴール。
Yutaka Kato
April 13, 2021
Tweet
Share
More Decks by Yutaka Kato
See All by Yutaka Kato
Introducing Kaginawa
mikan
0
34
DESAMIS Go Training Season 1 Day 12
mikan
0
900
DESAMIS Go Training Season 1 Day 11
mikan
0
920
DESAMIS Go Training Season 1 Day 10
mikan
0
930
DESAMIS Go Training Season 1 Day 9
mikan
0
940
DESAMIS Go Training Season 1 Day 8
mikan
0
1k
DESAMIS Go Training Season 1 Day 7
mikan
0
1k
Introducing Go CDK (Developer Preview)
mikan
0
750
DESAMIS Go Training Season 1 Day 6
mikan
0
1.1k
Other Decks in Technology
See All in Technology
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
SREによる隣接領域への越境とその先の信頼性
shonansurvivors
2
520
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
The Rise of LLMOps
asei
7
1.4k
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
210
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Into the Great Unknown - MozCon
thekraken
32
1.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Navigating Team Friction
lara
183
14k
Being A Developer After 40
akosma
86
590k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
How GitHub (no longer) Works
holman
310
140k
Building an army of robots
kneath
302
43k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Transcript
(Pݚमୈظ %": :VUBLB,BUP 3% %&4".*4 %&4".*4ࣾݚम
ຊͷΰʔϧ w 🚩ΰʔϧ w (Pͷ։ൃʹඞཁͳಓ۩Λἧ͑Δ w ಓ۩ͷجຊతͳ͍ํΛशಘ͢Δ w ❌ΰʔϧͰͳ͍ w
ݴޠͷߏจػೳΛशಘ͢Δ
ݚमܭը ճ ࣍ ༧ఆ λΠτϧ ୈճ Ր (Pͷجຊ
ୈճ Ր ڥߏஙͱ(JU (JU)VCͷجຊ ୈճ Ր جຊߏจ ୈճ Ր ߏମɺεϥΠεɺϚοϓ ୈճ Ր ඪ४ϥΠϒϥϦΊ͙Γ ୈճ Ր ϞδϡʔϧγεςϜͱ֎෦ϥΠϒϥϦ ୈճ Ր )FSPLV(Pೖ ୈճ Ր "84-BNCEB(Pೖ ୈճ Ր ฒߦॲཧϓϩάϥϛϯά ୈճ Ր ୯ମςετٕ๏ ୈճ Ր σʔλϕʔεΞΫηε ୈճ Ր 'ZOFʹΑΔ(6*ΞϓϦέʔγϣϯ։ൃ ୈճ Ր ࣾ(PϓϩδΣΫτͷίʔυղઆ
࣮ࢪҊ w ຊݚमͷશࢀՃऀͷ04͕8JOEPXTͩͬͨͨ ΊɺNBD04-JOVYͷઆ໌ল͖·͢ w ༻ҙͨ͠(JU)VCΞΧϯτʹϩάΠϯͰ͖Δ͜ ͱ '"ͷ४උ Λ֬ೝ͍ͯͩ͘͠͞ w
ಋೖ͢ΔιϑτΣΞ͕طʹ1$ʹಋೖࡁͷ߹ ͦͷखॱΛεΩοϓͰ͖·͕͢ɺઃఆόʔ δϣϯࠩҟʹෆ͕҆͋Δ߹ҰΞϯΠϯε τʔϧ͔ͯ͠ΒຊखॱΛ࣮ࢪ͍ͯͩ͘͠͞
ڥߏங
खॱ֓ཁ (Pͷಋೖ 74$PEFͷಋೖ (JUGPS8JOEPXTͷಋೖ ֦ுػೳͷಋೖ
ϦϙδτϦͷෳ ίʔυͷࣥචͱө ʲҙʳ ͜ͷॱংΛݫक ͍ͯͩ͘͠͞ʂ
(Pͷಋೖ ᶃ ϒϥβΛىಈ͠ɺIUUQTHPMBOHPSHΛ։͍͍ͯͩ͘͞ ᶄ <%PXOMPBE(P>ϦϯΫΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
(Pͷಋೖ ᶃ .JDSPTPGU8JOEPXTͱॻ͔Ε͔ͨΒNTJͷϦϯΫΛ։͍ͯ ͍ͩ͘͞ 1 ʲඋߟʳ ຊݚमHPܥΛఆ͠
͍ͯ·͢ ύονόʔδϣϯҟͳͬͯ ͍ͯߏ͍·ͤΜ
(Pͷಋೖ ᶃ μϯϩʔυ͞ΕͨϑΝΠϧΛ։͍͍ͯͩ͘͞ 1
(Pͷಋೖ ᶃ Πϯετʔϥʔ͕ىಈ͢ΔͷͰɺ</FYU>ΛΫϦοΫɺͦͷޙ ͷը໘શͯͦͷ··</FYU>ͱ<*OTUBMM>ͰਐΊ͍ͯͩ͘͞ 1 ʲඋߟʳ ৽͍͠όʔδϣϯͷ(PΛೖ
ΕΔ߹ɺઌʹݹ͍΄͏Λ ΞϯΠϯετʔϧ͢Δ͜ͱΛ ͓͢͢Ί͠·͢
(Pͷಋೖ ᶃ શ͕ͯ͏·͍ͬͨ͘Βྃը໘ʹͳΔͷͰɺ<'JOJTI>Λ ΫϦοΫ͍ͯͩ͘͠͞ 1 ʲิʳ εΫϦʔϯγϣοτʹ͋Δ
lzͱ͋Δͱ͜Ζɺօ͞ ΜͷڥͰlBNEzʹͳ ΔͣͰ͢
(Pͷಋೖ ᶃ 8JOEPXTϘλϯΛӈΫϦοΫ͍ͯͩ͘͠͞ ᶄ 8JOEPXT1PXFS4IFMMΛ։͍͍ͯͩ͘͞ 1 ʲඋߟʳ ઃఆʹΑͬͯ1PXFS4IFMM
ͷͱ͜Ζ͕lίϚϯυϓϩϯ ϓτzʹͳΓ·͢ɻͦΕΛ։ ͍͍ͯͩ͘͞ɻ 2
(Pͷಋೖ ᶃ දࣔ͞Εͨը໘ʹʮHPWFSTJPOʯ&OUFSͱೖྗ͍ͯͩ͘͠͞ ᶄ ʮHPWFSTJPOHPYʜʯͱදࣔ͞ΕΕಋೖޭͰ͢ 1
74$PEFͷಋೖ ᶃ ϒϥβͰIUUQTDPEFWJTVBMTUVEJPDPNΛ։͍͍ͯͩ͘͞ ᶄ <%PXOMPBEGPS8JOEPXT>ϦϯΫΛ։͍͍ͯͩ͘͞ 1 2
74$PEFͷಋೖ ᶃ μϯϩʔυͨ͠ϑΝΠϧΛ։͍͍ͯͩ͘͞ 1
74$PEFͷಋೖ ᶃ ΠϯετʔϧઌΛ֬ೝ͠ɺ<࣍>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ ࣍ͷը໘ͦͷ··<࣍>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
74$PEFͷಋೖ ᶃ ՃλεΫΛ֬ೝ͠ɺ<࣍>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ <Πϯετʔϧ>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
74$PEFͷಋೖ ᶃ 74$PEF͕ىಈ͢ΕޭͰ͢ͷͰ<9>Ͱด͍ͯͩ͘͡͞ ΧελϚΠζཉҰ୴ԡ͠ཹΊ͍ͯͩ͘͞ 1
(JUͷಋೖ ᶃ ϒϥβͰIUUQTHJUGPSXJOEPXTPSHΛ։͍͍ͯͩ͘͞ ᶄ <%PXOMPBE>ϦϯΫΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
(JUͷಋೖ ᶃ μϯϩʔυͨ͠ϑΝΠϧΛ։͍͍ͯͩ͘͞ 1
(JUͷಋೖ ᶃ 6"$ը໘͕ग़ͨΒ<͍>ΛΫϦοΫ͍ͯͩ͘͠͞ 1
(JUͷಋೖ ᶃ ϥΠηϯε (1- Λ֬ೝ͠ɺ</FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ ΠϯετʔϧઌΛ֬ೝ͠ɺ</FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ 1
2
(JUͷಋೖ ᶃ ίϯϙʔωϯτΛ֬ೝ͠ɺ</FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ ελʔτϝχϡʔઃఆΛ֬ೝ͠ɺ</FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
(JUͷಋೖ ᶃ ΤσΟλʔઃఆը໘ʹͳΔͷͰ<6TF7JTVBM4UVEJP$PEFBT (JU`TEFGBVMUFEJUPS>Λબ͍ͯͩ͘͠͞ ᶄ </FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ 1
2
(JUͷಋೖ ᶃ ৽͍͠ϦϙδτϦͷॳظϒϥϯν໊ઃఆը໘ʹͳΔͷͰ <0WFSSJEFUIFEFGBVMUCSBODIOBNFʜ>Λબ͍ͯͩ͘͠͞ ᶄ </FYU>ΛΫϦοΫ͍ͯͩ͘͠͞ 1
2 ʲඋߟʳ (JU)VCΛ͏߹ɺ৽نϦ ϙδτϦͷσϑΥϧτϒϥϯ νNBJOʹͳΓ·ͨ͠ (JU͜Εʹ߹Θͤ·͢
(JUͷಋೖ ᶃ ͔͜͜ΒઌશͯσϑΥϧτͰߦ͖·͕͢ɺσϑΥϧτͷ֬ೝ ͷͨΊεΫϦʔϯγϣοτΛఴ͓͖͑ͯ·͢ 1 1
(JUͷಋೖ ᶃ σϑΥϧτͷ··ਐΊ·͢ 1 1
(JUͷಋೖ ᶃ σϑΥϧτͷ··ਐΊ·͢ 1 1
(JUͷಋೖ ᶃ σϑΥϧτͷ··ਐΊ·͢ 1 1
(JUͷಋೖ ᶃ <7JFX3FMFBTF/PUFT>ͷνΣοΫΛ֎͍ͯͩ͘͠͞ ᶄ <'JOJTI>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
֦ுػೳͷಋೖ ᶃ ελʔτϘλϯΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ 7JTVBM4UVEJP$PEFΛ୳ͯ͠ىಈ͍ͯͩ͘͠͞ 1 2
֦ுػೳͷಋೖ ᶃ ը໘ࠨखͷ&YUFOTJPOTΞΠίϯΛΫϦοΫ͠·͢ ᶄ ݕࡧ૭ʹʮ+BQBOʯͱೖྗ͠·͢ ᶅ +BQBOFTF-BOHVBHF1BDLΛݟ͚ͭ<*OTUBMM>ΛΫϦοΫ͠·͢ 1
3
֦ுػೳͷಋೖ ᶃ ݕࡧ૭ʹʮ(Pʯͱೖྗ͠ʮ(Pʯ֦ுػೳΛݟ͚ͭ·͢ ᶄ <*OTUBMM>ΛΫϦοΫ͠·͢ 1 2
֦ுػೳͷಋೖ ᶃ ݕࡧ૭ʹʮ(JU)VCʯͱೖྗ͠ʮ(JU)VC1VMM3FRVFTUTBOE *TTVFTʯ֦ுػೳΛݟ͚ͭ·͢ ᶄ <*OTUBMM>ΛΫϦοΫ͠·͢ 1
2
֦ுػೳͷಋೖ ᶃ ը໘ӈԼʹ<3FTUBSU>Ϙλϯ͕͋ΔͣͳͷͰΫϦοΫ͠·͢ 1
֦ுػೳͷಋೖ ࠶ىಈͨ͠74$PEF͕ຊޠʹͳ͍ͬͯΕޭͰ͢
ϦϙδτϦͷෳ ᶃ ը໘ʹ͋Δ<ϦϙδτϦͷෳ>ϘλϯΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ <(JU)VC͔Βෳ>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
ϦϙδτϦͷෳ ᶃ ը໘ʹ͋Δ<ϦϙδτϦͷෳ>ϘλϯΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ <(JU)VC͔Βෳ>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶅ μΠΞϩά͕ग़ͨΒ<ڐՄ>ΛΫϦοΫ͍ͯͩ͘͠͞ 3
1 2
ϦϙδτϦͷෳ ᶃ ϒϥβ͕ىಈ͠։͍ͨϖʔδͰ<$POUJOVF>ΛΫϦοΫ͠·͢ ᶄ ·ͩ(JU)VCʹϩάΠϯ͍ͯ͠ͳ͚ΕϩάΠϯ͠ɺೝՄը໘ʹ ભҠͨ͠Β<"VUIPSJ[F(JU)VC>ΛΫϦοΫ͠·͢ 2
1
ϦϙδτϦͷෳ ᶃ ϒϥβͰμΠΞϩά͕ग़ͨΒࢦࣔʹै͍ͬͯͩ͘͞ ᶄ 74$PEFͰμΠΞϩά͕ग़ͨΒ<։͘>ΛΫϦοΫ͍ͯͩ͘͠͞ 2 1
ϦϙδτϦͷෳ ᶃ ϑΥʔΧε͞ΕͨೖྗཝʹʮVNPUJPOHPUSBJOJOHʯͱೖྗɺ ֘ϦϙδτϦ͕ݟ͔ͭͬͨΒΫϦοΫ͍ͯͩ͘͠͞ 1
ϦϙδτϦͷෳ ᶃ ίʔυͷෳઌΛฉ͔ΕΔͷͰɺϗʔϜσΟϨΫτϦҎԼʹ ʮHPʯʮTSDʯʮHJUIVCDPNʯʮVNPUJPOʯ ͱϑΥϧμΛ࡞ɺͦͷϑΥϧμʹೖ͍ͬͯͩ͘͞ 1
ϦϙδτϦͷෳ ᶃ <ϦϙδτϦͷॴΛબ>ΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ ͠Βͭ͘ͱෳ͕ऴΘΔͷͰ<։͘>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
ϦϙδτϦͷෳ ᶃ ը໘ࠨԼͷ<NBJO>ͱ͍͏ϥϕϧΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ <ʴ৽͍͠ذͷ࡞ʜ>ΛΫϦοΫ͍ͯͩ͘͠͞ 1 2
ϦϙδτϦͷෳ ᶃ ϑΥʔΧε͞ΕͨೖྗཝʹʮϢʔβʔ໊QSBDUJDFʯͱೖྗɺ ͦͷޙ&OUFSΛೖྗ͍ͯͩ͘͠͞ ྫNJLBOQSBDUJDF 1
ίʔυͷࣥචͱө ᶃ ࠨϝχϡʔͰΤΫεϓϩʔϥʔΛ։͍͍ͯͩ͘͞ ᶄ Ϣʔβʔ໊ͰϑΥϧμΛ࡞͍ͬͯͩ͘͞ ྫNJLBO 1 2
ίʔυͷࣥචͱө ᶃ ࡞ͬͨϑΥϧμΛӈΫϦοΫͯ͠දࣔ͞ΕΔϝχϡʔͰ <౷߹λʔϛφϧͰ։͘>Λબ͍ͯͩ͘͠͞ 1
ίʔυͷࣥචͱө ᶃ දࣔ͞ΕͨλʔϛφϧͰʮgo mod initʯʻ&OUFSʼΛೖྗ ͍ͯͩ͘͠͞ 1
ίʔυͷࣥචͱө ᶃ ʮgit config --global user.name "͋ͳͨͷ໊લ"ʯʻ&OUFSʼ ᶄ
ʮgit config --global user.email ϝʔϧΞυϨεʯʻ&OUFSʼ 1 2 ʲิʳ ͜ͷ࡞ۀ௨ৗ(JUΛΠϯε τʔϧͨ͠ޙʹ͚࣮ͩߦ ͢Δ͚ͩͰߏ͍·ͤΜ
ίʔυͷࣥචͱө ᶃ Ϣʔβʔ໊ϑΥϧμҎԼʹʮEBZIFMMPʯϑΥϧμΛɺͦͷԼʹ ʮNBJOHPʯϑΝΠϧΛ࡞͍ͯͩ͘͠͞ ᶄ (P֦ுػೳ͕ग़͢ը໘Ͱ<*OTUBMM"MM>ΛΫϦοΫ͍ͯͩ͘͠͞ 1
2 ʲิʳ <*OTUBMM"MM>੩తղੳπʔ ϧͳͲΛಋೖ͠·͢ ͠Β͕͔͔࣌ؒ͘Γ·͢
ίʔυͷࣥචͱө ᶃ ʮ"MMUPPMTTVDDFTTGVMMZJOTUBMMFEʯදࣔΛ֬ೝ͍ͯͩ͘͠͞ ᶄ (P֦ுػೳͷλϒΛ<9>Ͱด͍ͯͩ͘͡͞ 2 1 ʲิʳ
<*OTUBMM"MM>੩తղੳπʔ ϧͳͲΛಋೖ͠·͢ ͠Β͕͔͔࣌ؒ͘Γ·͢
ίʔυͷࣥචͱө ᶃ ڭՊॻ1ʹ͋ΔϓϩάϥϜΛࣸܦ͠ɺอଘ͍ͯͩ͘͠͞ 1
ίʔυͷࣥචͱө ᶃ λʔϛφϧλϒʹΓସ͍͑ͯͩ͘͞ ᶄ ʮgo run day2-hello/main.goʯͰίʔυΛ࣮ߦ͍ͯͩ͘͠͞ 2
1
ίʔυͷࣥචͱө ᶃ ࠨϝχϡʔͷ<ιʔεཧ>ΞΠίϯΛΫϦοΫ͍ͯͩ͘͠͞ ᶄ <มߋ>ϖΠϯͷ<ʴ>ϘλϯΛΫϦοΫ͍ͯͩ͘͠͞ ᶅ <㾎>ΛΫϦοΫ͠ɺίϛοτϝοηʔδΛೖΕͯʻ&OUFSʼ 1
2 3
ίʔυͷࣥචͱө ᶃ ը໘ӈԼͷϒϥϯν໊ͷӈʹ͋ΔൃߦΞΠίϯΛΫϦοΫ͠·͢ ᶄ ֦ுػೳͷը໘Ͱ<$SFBUF1VMM3FRVFTUʜ>ΛΫϦοΫ͠·͢ 1 2
ίʔυͷࣥචͱө ᶃ ϓϧϦΫը໘Λ֬ೝ͠<$SFBUF>ϘλϯΛΫϦοΫ͠·͢ ᶄ ϓϧϦΫ͕࡞͞Ε·ͨ͠ʂ 1
ίʔυͷࣥචͱө (JU)VC্ͰϓϧϦΫ͕࡞͞Ε͍ͯΔ͜ͱΛ֬ೝͰ͖·͢ ϓϧϦΫ͕ϨϏϡʔ͞Εɺ߹֨͢ΕNBJOʹө͞Ε·͢
͕࣌ؒ༨ͬͨΒʜ w ڭՊॻͷୈষͷ࿅शΛղ͍ͯΈ͍ͯͩ͘͞ w ࣮ࢪͱ͝ͱʹϑΥϧμΛΘ͚ͯͩ͘͞ ͍ ྫEBZFY w దٓίϛοτɾࣗͷϒϥϯνͷϓογϡΛ
͓ئ͍͠·͢
࣍ճ༧ࠂ w ࣍ճʮجຊߏจʯͰ͢ w ڭՊॻ ϓϩάϥϛϯάݴޠ(P Λͨ͘͞Μ ͏ͷͰɺΕͳ͍Α͏ʹ͍ͯͩ͘͠͞ w ͔Βͳ͔ͬͨͱ͜Ζ࣭ͳͲɺࣾ
4MBDLHPQIFSTνϟϯωϧʹߘ͍ͩ͘͞