AIを使ったコードリーディングの手順について
2025年11月2日AIを活用したコードリーディングの手順についての雑多なメモ。 プロンプトの工夫などもあればよいが、プロセスだけまとめておく。 手順 1. コードの全体像と重要な部分を確認 プロンプトでコードの全体と読むべき重要な部分を確認する。 その際、READMEや他のドキュメント、ツール(コールグラフなど)を活用して、全体像の把握が概ね正しそうか確認する。 データ構造やシーケンスについても確認できると良い。 ...
AIを活用したコードリーディングの手順についての雑多なメモ。 プロンプトの工夫などもあればよいが、プロセスだけまとめておく。 手順 1. コードの全体像と重要な部分を確認 プロンプトでコードの全体と読むべき重要な部分を確認する。 その際、READMEや他のドキュメント、ツール(コールグラフなど)を活用して、全体像の把握が概ね正しそうか確認する。 データ構造やシーケンスについても確認できると良い。 ...
クリーンコードクックブック ―コードの設計と品質を改善するためのレシピ集を読んだ。 本全体を通して、全単射と偶発的複雑さの概念について教えてくれる本であり、コードの設計と品質を改善するテクニックを学ぶことができる。 よく見知った法則なども網羅的に書かれているので、手元に置いておきたい一冊。 ...
初めてのGo言語 第2版 ―他言語プログラマーのためのイディオマティックGo実践ガイドを読んだ。 久しぶりに業務でGoを書く機会に恵まれたので、新しい情報のキャッチアップや復習を兼ねて読んだ。 この本は単なる入門書ではなく、Goの思想やイディオムを沢山紹介しており、Goという言語の理解を深めることができる。 他の入門書は拾わなさそうなことも拾われており、良書であった。 ...
はじめに 単体テストを書く際、テスト対象のコードが外部のデータベース、APIサーバー、ファイルシステムなどに依存していると、以下のような問題が発生する: テストの実行が遅い テスト環境の準備が複雑 テスト結果が不安定(ネットワークエラーなど) 特定の状態やエラーケースの再現が困難 これらの問題を解決するために使われるのがテストダブル(Test Double)である。 テストダブルとは、テストに...
クリーンコードクックブック ―コードの設計と品質を改善するためのレシピ集を読んでいて、インターフェースの実装よりも変更頻度が低いという主張が気になったので、言語化してみた。 インターフェースは「契約(contract)」であり「抽象」 インターフェース(interface)は、 「この機能はこう使える」という"契約"を表すものである。 一方で実装(implementatio...
はじめに シングルトンパターンは、デザインパターンの中でも最もよく知られ、広く使われているパターンの一つである。しかし、クリーンコードや保守性の観点から見ると、多くの問題を抱えている。 本記事では、シングルトンパターンの主要な問題点について、具体的なGoのコード例を交えながら解説する。 シングルトンパターンとは シングルトンパターンは、クラスのインスタンスが常に1つだけ存在することを保証するデザイ...
システム設計面接の傾向と対策を読んだ。 面接対策というテーマではあるが、システム設計のパターンを学ぶにもちょうど良い。 作問する側にとっても参考になると思う。 システム設計の勘所を抑えた質問のパターンについても参考になる部分があるので、システム設計面接ではない技術面接の面接官にとっても役立ちそう。 この手の本は少ないが、アーキテクチャの設計事例やパターンについて実例に近い形で学ぶことができる本はも...