👁

この講座で学べること

1. なぜGoを学ぶのか

Goは、Googleが開発したシンプルで習得しやすいプログラミング言語です。シングルバイナリで配布できる高速な実行性能、充実した標準ライブラリ、goroutineによる並行処理を言語仕様レベルで扱いやすい点などが特徴で、Webアプリケーションのバックエンド・CLIツール・Kubernetesなどのシステムソフトウェアまで、幅広い分野で採用されています。

DevOps CampではPython講座もすでに提供していますが、PythonとGoは得意領域が異なるため、それぞれ別の講座として用意しています。

これまでDevOps Campでは、自動化スクリプトやBoto3によるAWS操作、AWS Lambdaでのサーバレス開発など、インフラ・DevOpsの周辺でコードを書く場面を想定して、Pythonをメインのプログラミング言語講座として提供してきました。

一方でGoは、Kubernetesやコンテナランタイムなどのシステムソフトウェア、AWS SDKの実装自体もGoで書かれているように、Webアプリケーションのバックエンド(サーバサイド)で選ばれる場面が増えている言語です。この講座は「バックエンド開発に特化したプログラミング言語」の位置付けで用意しており、Python講座と組み合わせて学ぶことで、自動化・サーバレスから本格的なREST APIのバックエンド開発まで、場面に応じて言語を使い分けられる構成にしています。

1.1 こんな方におすすめ

  • インフラエンジニアとしてGoを扱えるようになりたい方
  • 単一バイナリで配布できるCLIツールを作れるようになりたい方
  • 並行処理を活かした高速なAPIサーバを構築したい方
  • KubernetesやCloud Native系ツールのソースコードを読めるようになりたい方

1.2 学べること・身につくこと

スキル 内容
Goの基本文法 変数・データ型・制御構文・関数・structを使ったプログラミングができる
Go応用 エラーハンドリング・ジェネリクス・モジュール管理などの実践的な記述ができる
並行処理 goroutineとchannelを使った並行処理プログラムを設計・実装できる
データベース操作 MySQLに database/sql および GORM を使ってCRUD操作ができる
REST API開発 net/httpと Gin を使って、データベース連携のREST APIを構築できる
API保護 GinでCORS対応とJWT認証を組み込み、保護されたエンドポイントを構築できる
テスト・品質管理 golangci-lint による静的解析、testing パッケージによる自動テストができる
CLIツールの開発 flag / cobra を使って、業務で使えるCLIツールをGoで作成できる

2. 章一覧

3. 学習の流れ

3.1 この講座を学んだら

本講座の後は、以下を実施するのがおすすめです。

講座名 おすすめの理由
コンテナ講座 本講座で作成した Go アプリケーションを Docker コンテナとして動かせるようになるため
CI/CDパイプライン講座 本講座で学んだ静的解析・自動テストを CI/CDパイプラインに組み込めるようになるため

この教材は役に立ちましたか?

いいねをたくさんいただけると、制作者の励みになり、より多くのセクションが作れるようになります。

感想を一言(任意)

いただいたコメントは次の制作のヒントになります。ぜひお気軽にご投稿ください。

このコメントは他の受講生には公開されません。DevOps Camp運営が、教材改善のために確認します。

0 / 2000