【読書ログ】ソフトウェア開発にChatGPTは使えるのか?
読もうと思った動機
個人開発や学習においてAIツールをうまく活用できていないなぁと思っており、内容がなんだかよさそうだったので。
AIツールは不明点がでたら都度利用していたけど、こういう時はこう、この段階ではこう、的に自分の中で体系化して使いたかったというのもある。
ざっくり目次
1.ChatGPTでなにができるか
2.プログラミングでの活用
3.リファクタリング
4.ドキュメントの生成
5.開発手法の提案
DDD、TDDなど
6.学習での活用
7.API
8.長文データを扱う
9.LangChainによる自動化
ざっくり読書内容
今の自分だと5章以降は今回は読み進められずでした。
またそこに近いことをし出した時に。
1.ChatGPTでなにができるか
調べると時間がかかるもの、理解しているが覚えてないもの・苦手なもの(正規表現とか)そういうことに使うのが良い。
Ttransformerの内容は今はスキップ。
2.プログラミングでの活用
コーディングでの使用。エラーが出たら3回くらいは続けて聞いてみる。
それでもダメなら
・「これまでの内容を踏まえて」
・「議長として認識してもらい、異なる二つの意見を聞くようにしてもらう」
などする。
Mermind記法でクラス図を書いてもらう。それを元にコードを生成してもらう。
状態遷移図からコードを生成してもらう。
リファクタリングする上で
〇〇の処理をする上で最適なデザインパターンを聞いてみる。
何をやりたいか、使用を明確に伝えた上で適したアルゴリズムを提案してもらう。
段階的積み上げ手法
一気に目的のコードを作成するのは無理なので、段階的に組み立てていく。
3.リファクタリング
別名の同内容のコードを整える・まとめる。
セキュリティの脆弱性チェックをする。SQLインジェクションがあるとか。
5.開発手法の提案
DDDを説明してもらい、それに基づいて設計してもらうなど。
6.学習での活用
わからない概念や内容について聞いてみる。
例え話をしてもらう。
先生役になってもらい、こちらに質問してもらう。理解が誤ったもので無いか確認してもらう。ソクラテスの家庭教師。
感想
文体も読みやすく所々に冗談も散りばめられていて読みやすかった。
つよつよエンジニアはAIを使わなくてもつよつよ、つかったらもっとつよつよだけど
つよつよじゃ無いエンジニアをつよつよに少しでも近づけるための使い方が大切、的な文章があーそうだよなって響きました。
Discussion