Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
初学者歓迎!Go言語でWebサーバー構築ハンズオン!
Search
Keitaro Miyano
April 16, 2024
51
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
初学者歓迎!Go言語でWebサーバー構築ハンズオン!
2024年4月16日に開催された「初学者歓迎!Go言語でWebサーバー構築ハンズオン!」の資料です!
Keitaro Miyano
April 16, 2024
More Decks by Keitaro Miyano
See All by Keitaro Miyano
Amebaブログにおけるbobの活用術
miyakei1225
0
32
React × Tailwind × v0で始める コンポーネント開発をしてみよう!
miyakei1225
0
100
全部お見せします!現役エンジニアが開発現場で実際に使っているツールと便利設定集
miyakei1225
0
49
【初学者向け】Honoを使ったREST APIを構築してみよう!
miyakei1225
0
380
React勉強会
miyakei1225
0
280
お手軽環境構築!はじめてのDocker講座
miyakei1225
1
410
Expo SDK 50について&早速アップデートしてみた
miyakei1225
0
120
Webエンジニアが スマホアプリを個人開発した話📱
miyakei1225
0
74
connect-webの恩恵
miyakei1225
0
140
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Fireside Chat
paigeccino
43
4k
First, design no harm
axbom
PRO
2
1.3k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
710
Building AI with AI
inesmontani
PRO
1
1.3k
Typedesign – Prime Four
hannesfritz
42
3.2k
A Tale of Four Properties
chriscoyier
163
24k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Between Models and Reality
mayunak
4
470
Tell your own story through comics
letsgokoyo
1
1.1k
Transcript
初心者歓迎! Go言語でWebサーバー構築 ハンズオン! 技育CAMPメンター 宮野 奎太朗
はじめに 2 学生の皆さま、 今回ご参加いただきありがとうございます!
はじめに 3 【名前】宮野 奎太朗(ミヤケイ) 【出身】青森県青森市🍎 【会社】株式会社サイバー・バズ (インターン募集中!) 【作っているもの】SNSデータ可視化ツール 【趣味】ランニング、自転車、個人開発 (React Native)
【X】@38ke1 本日はよろしくお願いします!
4 こちらから!
5 勉強会の詳細
はじめに 6 ・サーバーサイド言語に挑戦してみたい ・Go言語に興味がある方 ・プログラミングに挑戦してみたい方
はじめに 7 前半のインプットタイムで Go言語の概要などについて話します!
はじめに 8 後半はアウトプットタイムとして 実際にコードを一緒に書いてみましょう!
今回のゴール 9 ・Go言語の特徴を知る ・簡単なWebサーバー&APIを構築してみる
今回のアジェンダ 10 1. Go言語とは? 2. Goの構成について(go.mod、go.sum) 3. パッケージについて 4. Postmanについて
【インプットタイム🌞】
今回のアジェンダ 11 5. リポジトリのクローン 6. 環境構築をしてみよう! 7. サンプルファイルを見てみよう! 8. httpパッケージでHello
World 9. PostmanでAPI実行 【アウトプットタイム🌝】
今回のゴール 12 ・Go言語の構成、特徴を知る ・簡単なAPIサーバーを動かしてみる
1. Go言語とは? 13 Go言語とは?
1. Go言語とは? 14 Go言語とは? →Googleが開発した サーバーサイド言語
1. Go言語とは? 15 簡単に書ける言語とよく言われている? →シンプルな文法、命名規則により 書き方のブレが少ない(個人的観測)
1. Go言語とは? 16 「Goに入ってはGoに従え」
1. Go言語とは? 17 例外処理が無い
1. Go言語とは? 18 例外処理が無い どういうこと? →try-catch-finallyの 例外処理機構が無い
1. Go言語とは? 19
1. Go言語とは? 20
1. Go言語とは? 21 軽量な並行処理が扱える
1. Go言語とは? 22
1. Go言語とは? 23
1. Go言語とは? 24 引用
2. Goの構成について 25 今回はこの2つを覚えて帰ってください! 1. go.mod 2. go.sum
2. go.modについて 26 go.modは「道具箱」のイメージ
2. go.modについて 27 go.modは「道具箱」のイメージ →モジュールの依存関係を 管理するファイル
2. go.modについて 28 ライブラリを使うためには 「go install」を実行する →従来はgo getだったが 1.16から機能が分かれた
2. go.modについて 29 引用記事
2. go.modについて 30 go mod tidyコマンド →ソースコードを参照して 整合性を見てくれる
2. go.sumについて 31 go.sumは「整合性」を保つ役割を担う →モジュールの依存関係をハッシュ化して保存
2. go.sumについて 32 「一貫性」と「信頼性」を 担保しているんだな〜の認識でok!
3. packageについて 33 packageは 「コードの再利用」と「整理」を担う
3. packageについて 34 Goのコードファイルは必ず 特定のパッケージに所属する
4. Postmanについて 35 APIを叩ける便利なツール! こちらからダウンロード
36 お疲れ様でした! いよいよアウトプットタイムに移ります!
37 5. リポジトリのクローン GitHubのリポジトリをクローンしましょう! URL
38 6. 環境構築をしてみよう! Goのインストールをまだ 済ませていない方はこちらから! URL
39 6. 環境構築をしてみよう! Goのバージョンをチェックしてみましょう! → go version
40 6. 環境構築をしてみよう! VS Codeで拡張機能を入れてみよう!
41 7. サンプルファイルを見てみよう! 予め作ったプロジェクトを 一緒に見て動かしてみましょう!
42 7. サンプルファイルを見てみよう! go run main.go
43 7. サンプルファイルを見てみよう! nilとnullの違いについて URL
44 7. サンプルファイルを見てみよう! スライスについて
45 7. サンプルファイルを見てみよう! スライスについて →配列の要素を可変にすることが 出来るデータ構造
46 8. httpパッケージでHello World! 【お題】 1.Go言語でHello World! 一緒にサーバーを立ち上げてみましょう!
47 8. httpパッケージでHello World! 【お題】 1.Go言語でHello World! Postman入れられなかった方はこちらで🙆 curl localhost:8080
48 8. httpパッケージでHello World! もし動かなくなったらコメントください (OSでの環境差分もある)
49 8. httpパッケージでHello World! まずはプロジェクト作成から! go mod init sample-project
50 8. httpパッケージでHello World! 一緒にファイルを作っていきましょう!
51 完成! みなさん動かすことは出来ましたか?
まとめ 52 今回はGo言語の概要に触れて 簡単なWebサーバーを構築 してもらいました
まとめ 53 Zoomのチャット欄に コメントを書いていただけると嬉しいです!
まとめ 54 粘った経験が必ずエンジニアとしての 糧になります!
まとめ 55 最後に僕の好きなキャッチコピーを紹介します👀
まとめ 56 ハッカソンについて
まとめ 57 最後に僕の好きなキャッチコピーを紹介します👀
まとめ 58 皆さま本日はお疲れ様でした!👋