4. ツール&環境

GitHub CLIのghコマンドのインストール方法と使い方

こんにちは。Tomoyuki(@tomoyuki65)です。通常の開発ではGitさえ使えればなんとかなりますが、タスク管理をGitHubのIssues機能でやっている場合は、GitHub CLIを使うのが便利だったりします。この記事では、そ...
2. 基礎

Go言語(Golang)でシェルコマンドを実行する方法【os/execパッケージ】

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)でなんらかのツールを作る際、"プログラムの中から直接シェルコマンドを実行したい"という場合もあると思います。その際は外部コマンドを実行させる「os/exec...
3. 応用

DockerとGo言語(Golang)からPostgreSQLとORM「Bun」を使う方法

こんにちは。Tomoyuki(@tomoyuki65)です。Webサービスの開発では何らかのRDB(リレーショナルデータベース)を使うことが多いですが、これから新規開発をするなら将来の複雑化を見越してPostgreSQLを使うケースが増えて...
2. 基礎

Go言語(Golang)で双方向連結リスト(Doubly Linked List)を扱うcontainer/listパッケージについて

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)で複数の要素を扱う際はスライスなどを使いますが、処理内容によっては双方向連結リスト(Doubly Linked List)を使った方がいい可能性があります。...
6. その他

データベース(Database/DB)の種類と使い分けについて

こんにちは。Tomoyuki(@tomoyuki65)です。Webサービスを開発する際は、何らかのデータベース(Database/DB)を使ってデータの保存や更新などをする必要がありますが、そんなDBには様々な種類があり、作るものによって使...
2. 基礎

Go言語(Golang)とビッグオー記法(Big-O記法)で時間計算量と空間計算量を学ぶ

こんにちは。Tomoyuki(@tomoyuki65)です。コードを書く際に大事なこととして、データ量が増えても処理が重くならないよう、そしてそこがボトルネックにならないようにしておくことが大事です。例えば新規サービスをリリース直後は利用者...
2. 基礎

Go言語(Golang)で型の構造やメタ情報を扱うためのreflectパッケージについて

こんにちは。Tomoyuki(@tomoyuki65)です。普段の開発ではあまり必要になりませんが、例えば開発者用のツールやライブラリ、そしてフレームワークなどを作りたいというような場合は、入力値の型情報を調べる必要がでてきたりします。そん...
2. 基礎

Go言語(Golang)におけるpanicについて

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)のサンプルコードでエラーハンドリングがあった際に、よく「panic」関数が使われたりしますが、実務におけるAPI開発ではほぼ使わないです。この記事では、そん...
6. その他

SLOの定義とモニタリングの運用に向けたリクエストメトリクスの収集方法について

こんにちは。Tomoyuki(@tomoyuki65)です。以前にSREに関する記事を書きましたが、リリースしたサービスを中長期的かつ安定的に運用していくためには、SLOの定義と日々のモニタリングによる検証が必要です。ただそんなSLOの定義...
3. 応用

Go言語(Golang)でGraphQLのBFFを開発する方法まとめ

こんにちは。Tomoyuki(@tomoyuki65)です。マイクロサービスなどでバックエンドAPIが複数あり、エンドポイントが多くなりすぎてフロントエンド側(Webとアプリなど)で使いづらくなった場合、GraphQLのBFF(Backen...
スポンサーリンク