2. 基礎

2. 基礎

Go言語(Golang)1.26で刷新された「go fix」の使い方|差分確認・自動修正によるコード移行

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)には破壊的変更を含む仕様変更が入った際に、自動修正するためのツールとして「go fix」コマンドがありましたが、Go言語は基本的に後方互換性を維持するため、...
2. 基礎

Go言語(Golang)1.26で導入されたnew(expr)とは?|使い方・メリット・従来のnew関数との違いを解説

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)にはメモリを確保してそのポインタを返す組み込み関数のnewがありますが、バージョン1.26からnew(expr)が導入され、値(式)から直接ポインタを作るこ...
2. 基礎

Go言語(Golang)1.26で追加されたerrors.AsTypeの使い方|型安全なエラーハンドリング

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)のバージョン1.26からerrorsパッケージに新しい関数「errors.AsType」が追加されました。これはerrors.Asのジェネリクス版になってお...
2. 基礎

Go言語(Golang)golangci-lintの使い方|おすすめformatter・lintの設定方法

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)には標準のformatter(go fmt)やlint(go vet)が使えるようになっていますが、実務では他にも定番のライブラリがよく使われたりします。そ...
2. 基礎

Go言語(Golang)testing/synctestの使い方|Go1.25で並行処理・非同期処理テストを高速化

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)のバージョン1.25から並行処理・非同期処理テストを高速化するための「testing/synctest」が追加されました。この記事では、そんなGo言語(Go...
2. 基礎

Go言語(Golang)slog.GroupAttrsの使い方|Go1.25でログ属性をグループ化

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)のバージョン1.25からログ出力用のslogに新しいメソッド「GroupAttrs」が追加され、ログ属性をグループ化できるようになりました。この記事では、そ...
2. 基礎

Go言語(Golang)sync.WaitGroup.Goの使い方|Go1.25の新機能によるgoroutineの新しい書き方

こんにちは。Tomoyuki(@tomoyuki65)です。Go言語(Golang)のバージョン1.25から「sync.WaitGroup」に新しいメソッド「Go」が追加され、新しいgoroutineの書き方ができるようになりました。この記...
2. 基礎

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

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

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

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

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

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