0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Goを書くとは修養である 〜如何にして私が自我を捨て、`if err != nil` を愛するようになったか〜

0
Last updated at Posted at 2026-07-07

「Goはいいぞ」

世のエンジニアたちは軽々しくそう口にします。コンパイルが速い、並行処理が書きやすい、シンプルである。

なるほど、確かにその通りです。

しかし、彼らはGoの真の姿を理解していません。Goは単なるプログラミング言語ではありません。それは救済であり、魂の浄化プロセスなのです。

今日、東京の片隅で静かにGopher像に祈りを捧げながら、私はこの記事を執筆しています。Goがいかにして我々から無駄な自由意志を奪い、真の平穏をもたらすのか。その深淵なる魅力をお伝えしましょう。

1. 声明としての if err != nil

他の言語の信者は「Goはエラーハンドリングが冗長だ」と嘲笑します。愚かですね。

彼らは例外(Exception)に頼り、裏側で起きているエラーから目を背けています。Goにおいて、if err != nil をタイピングする行為は、決して単なるボイラープレートの記述ではありません。写経であり、マントラ(真言)の詠唱なのです。

res, err := DoSomething()
if err != nil {
    return nil, err
}

ああ、なんて美しい響きでしょう。この3行をエディタに打ち込むたびに、我々の業は浄化されていきます。キーボードを叩く音が木魚の響きと共鳴し、我々は「今、ここでエラーと向き合っている」というマインドフルネスの境地に到達するのです。

2. 究極の自己否定、gofmt がもたらす涅槃

かつて世界は混沌に満ちていました。「インデントはタブかスペースか」「波括弧は改行するか」。愚かな人間たちは、己のちっぽけな「コーディングスタイル」という自我をぶつけ合い、血で血を洗う宗教戦争を繰り広げていました。

しかし、Goの創造主たちは我々に絶対的な法を下しました。それが gofmt です。

コードを保存した瞬間、個人のちっぽけなこだわりは、公式フォーマッタによって矯正されます。そこには個性の入り込む余地など一切ありません。

自我の完全なる消失です。

すべてを gofmt に委ねたとき、人は初めて「自分の書いたコードへの執着」から解き放たれ、深い悟りを得るのです。誰が書いても同じになる。つまり、我々は皆、一つになれるのです。

3. 使徒ロブ・パイクの教えと、未使用変数の大罪

Goのコンパイラは、使っていないパッケージや変数を絶対に許しません。Warningなどという生ぬるい警告ではなく、Compile Errorとして我々に「死」を与えます。

「あとで使うかもしれないから」

そんな未来への執着は、Goの世界では大罪です。「今、ここ」で使われていないものをコードに混入させることは、秩序を乱す行為に他なりません。使わない変数は消せ。今すぐ。Goコンパイラは、我々に断捨離とミニマリズムを叩き込んでくれます。

4. interface{} という大いなる混沌

我々には長らくGenericsという甘えが許されていませんでした(※近年、ついに導入されてしまいましたが)。

型がわからない? ならば interface{} を使いなさい。そして、実行時の型アサーションに己の魂を懸けなさい。

value, ok := unknownData.(string)

もしこれが失敗したとしても、それは神の意志です。我々はただif !ok の分岐を受け入れるのみ。あらゆるものを受け入れる interface{} は、すべてを包み込む母なる海のようでもありました。

おわりに

いかがでしょうか。

Goを書くということは、単なるシステム開発ではありません。己の欲を削ぎ落とし、ただひたすらにシンプルな構文を繰り返し記述することで、最終的にコーディングと宇宙が一体化する感覚を味わう修養なのです。

さあ、あなたもVS Codeに拡張機能を入れ、我々と一緒に詠唱しましょう。

if err != nil { return err }
if err != nil { return err }
if err != nil { return err }

……ようこそ、大いなるGoの導きへ。恐れることはありません。パニック(panic)にならない限り、我々はいつでもリカバー(recover)できるのですから。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?