$30 off During Our Annual Pro Sale. View Details »
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.5k
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
39
DESAMIS Go Training Season 1 Day 12
mikan
0
1k
DESAMIS Go Training Season 1 Day 11
mikan
0
1.1k
DESAMIS Go Training Season 1 Day 10
mikan
0
1k
DESAMIS Go Training Season 1 Day 9
mikan
0
1.1k
DESAMIS Go Training Season 1 Day 8
mikan
0
1.1k
DESAMIS Go Training Season 1 Day 7
mikan
0
1.1k
Introducing Go CDK (Developer Preview)
mikan
0
890
DESAMIS Go Training Season 1 Day 6
mikan
0
1.2k
Other Decks in Technology
See All in Technology
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
210
非CUDAの悲哀 〜Claude Code と挑んだ image to 3D “Hunyuan3D”を EVO-X2(Ryzen AI Max+395)で動作させるチャレンジ〜
hawkymisc
1
160
GitLab Duo Agent Platformで実現する“AI駆動・継続的サービス開発”と最新情報のアップデート
jeffi7
0
210
エンジニアリングマネージャー はじめての目標設定と評価
halkt
0
250
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
320
第4回 「メタデータ通り」 リアル開催
datayokocho
0
120
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
210
学習データって増やせばいいんですか?
ftakahashi
1
250
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
670
Security Diaries of an Open Source IAM
ahus1
0
130
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
210
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
270
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Speed Design
sergeychernyshev
33
1.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
[SF Ruby Conf 2025] Rails X
palkan
0
490
YesSQL, Process and Tooling at Scale
rocio
174
15k
Site-Speed That Sticks
csswizardry
13
990
Become a Pro
speakerdeck
PRO
31
5.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
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νϟϯωϧʹߘ͍ͩ͘͞