Go言語

Go言語

Goで学ぶファイルディスクリプタ

今回はファイルディスクリプタの解説をしていきます。こちらを読むことで、プログラムからファイルを操作がどのようにされているか理解することができます。ファイルディスクリプタとは?ファイルディスクリプタとはプログラムからファイルを操作する際に、操...
Go言語

Goのメモリ管理:アロケータ、ガベージコレクション

開発をしていてあまりに気にしないが重要なアロケータや、ガベージコレクションについて解説をしていきます。アロケータGoのアロケータはオブジェクトを操作するのに必要なメモリブロックを動的に割り当てられ、ロックや断片化を回避してOSヘの遅いシステ...
Go言語

なぜGoは並行処理に優れているか?

Goがなぜ並行処理に長けているのか、Gorutineのどのような部分が良いのかについて解説をしていきます。スタック、ヒープGoroutineの良さを知るためにはまずスタック、ヒープを知っておく必要があります。スタックは引数や変数、返り値、静...
API

[開発者必読]REST Clientを使って、HTTPリクエストを送る方法

REST Clientを使って、HTTPリクエストを送る方法を紹介。こちらを参考にすれば大体のAPIのリクエストを作成できます。
Go言語

go-cmpで便利なOptionを使って、テスト結果を簡単に比較しよう

go-cmpを使ってテスト結果と期待値を比較することができますが、さらにOptionを使うことで単純に比較すること以外もできるようになります。そんなOptionでよくテストで使う方法について紹介をしていきます。
Go言語

gorutineで並行実行数を制限する場合、チャネルを使ったほうがいいですよ

以前gorutineで並行実行しすぎると、リソースの問題が発生するので並行実行数を制限したい時は、sempahoreを使おうという記事を書きました。しかしチャネルを使う方がよかったので、今回それを紹介していきます。以前の記事試したこと試しに...
Go言語

Goで空の構造体を使おう!!

Goで空の構造体を使うことで、mapやチャネルを使った処理のメモリ効率が良くなることがあります。その方法について解説をしています。
Go言語

Go言語でプロセスがKillされても正常な処理をしてから終了させる方法

処理によっては、プロセスやサービスが停止する前に、データの整理や正常な終了手順の実行をしたい場合があります。シグナルを使って、処理が強制終了されてもその前に終了処理をする方法について解説をしていきます。
Go言語

Go言語でJSONを扱う方法

ソフトウェアを開発をしていくにあたって、JSONの操作をすることは多いと思います。この記事では、Go初心者向けに、シンプルな処理を紹介して、Go言語でJSONの操作ができるように書いています。
Go言語

Goのcontextについて

Goの開発をしている時にcontextをよく見かけるけど、contextの用途がよくわからず使用していることがあると思います。そんな方向けにcontextの機能についてまとめています。