こんにちは @p1ass です。 Go のよくある間違いとして、ループのイテレーター変数の参照をループの中で使ってしまうという間違いがあります。 イテレーター変数のアドレスは 1 イテレーションごとに変わらないので、その参照をそのまま配列に append すると配列の結果が全て同じ値になるといったことが発生してしまいます。この問題はよくある間違いとして Go の wiki にも取り上げています。しかし、現状では公式でこの間違いを検出する静的解析ツールは用意されていません。 そこで、僕はメルカリのインターンで、イテレーター変数の参照をループ内で使っている箇所を検出する静的解析ツールを作成したのでそれを紹介したいと思います。 Using reference to loop iterator variable 検出対象である「Using reference to loop iterator va
最近、趣味で書くWebアプリは、いわゆるSPAで、バックエンドのJSONを返すAPIにはGo、フロントエンドは仕事で使うための検証・学習を兼ねて適当なJavaScriptのフレームワークを選択している。 この記事は、Goで書いたWebサーバを本番(自分の場合、OSがCentOSのVPS)でどうやって動かすかという内容。 プロセス管理ツール プロセスを複数立ち上げたり、プロセスが死んだ時に再び起動したりしてほしかったので、プロセス管理ツールを検討した。 色々調べたところ、circusが以下の点でよさそうだった。 プロセスまわりで癖のある(forkできないなど)Goと組み合わせて使うプロせス管理ツールとして実例を多く見かけた 設定で記述する内容が他のプロセス管理ツールと比べて少ない(ような気がする) (fdを受けとるようにアプリケーションコードを変更しないといけないのがちょっと微妙だけど)プロ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く