大AI時代。何を学ぶべきか

image

こんにちは、Mukaigaです。 最近ではAIエージェントによる開発がとてもトレンドですよね。

かくいう私も、claude codeを使って開発を進めています。

しかしながら、何も考えずに全てをAIによって書かせていては、アプリケーションの品質やスケーラビリティなどが損なわれる可能性があります。

勿論、個人開発やモックなどで品質よりアプトプットのスピードを重視されるようなケースでは、何も考えずAIに任せるのも良いでしょう。というか任せましょう。

ただ、チーム開発やプロダクションレベルのアプリケーション開発においては、AIに全てを任せるのは危険です。

そこで、その様な場合にAIを最大限に活用しつつ、品質を担保するにはどうすればよいかを考えてみます。

実装力はAIによって増えていく

AIエージェントを使うことで、実装力は増えていきます。
しかし、この急な実装力の増加にプロジェクトが耐えられていない場合、それはスケールアップの準備ができていないです。

準備ができていないのはアプリケーションの開発上だけに留まりません。 これはチームとして、人員を増やすスケール化の準備ができていないのです。

というのも、開発リソースを増やすことも、AIを導入することも、チームのスケールアップに他ならないからです。

今までプロジェクトがどれだけリソースのスケールアップを受け入れる準備ができていたか。これがそのままAIによる開発効率の有効性に直結すると思います。

チームの開発体制の話はおいて、アプリケーションの話に戻りましょう。

設計が良ければ、実装力は新卒程度で良い

「設計が良ければ、実装力は新卒程度で良い」 この言葉はこちらの記事から引用させていただきました。
Claude Code時代のソフトウェアエンジニア生存戦略

この言葉は、割と新卒エンジニアである自分にとって、意外と刺さりました。
確かに、「実装力」と言う言葉をとあるタスクがあって、そのタスクにおける計画・仕様があって、ただそれを実装するような意味で捉えた時に、実装力が新卒で良いと言うのは正しいと思います。

なぜなら上記の流れで、新卒の自分がスムーズに開発を行えているからです。

そして、自分かAIエージェントを有効に使えてしまっているからです。

悲観的に捉えるならば、AIでもできることを僕は仕事としてやっている時があると言うことです。

楽観的に捉えるならば、今のプロジェクトにおける設計が優れているおかげで、他のコードに倣うだけでスムーズに実装ができているということです。 (他のコードに倣える = 良い設計であるわけではないが。)

すみません、つまり何が言いたいかというと、AIエージェントをうまく使うには、良い設計が必要だということです。

TDDを取り入れる

自分が思う、AIと上手く開発する方法は、TDDによる開発手法です。

TDDは調べたら色々出てきますが、 しっかりこちらの本を読むと良いでしょう。

テスト駆動開発
https://www.amazon.co.jp/%E3%83%86%E3%82%B9%E3%83%88%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA-Kent-Beck/dp/4274217884

簡単にいうと、TDDはテストを書いてから実装を書くことです。

勿論TDD単品で、AIを使わずとも有効な開発手法です。

ただなぜAIと親和性が高いかというと、良いテストケースを書きやすくするために、
我々は、「凝集度が高く、結合度が低いたくさんの部品で構成された設計を行うようになる」からです。

これはAIに開発を指示する上で、曖昧な指示をポンと投げるのではなく、なるべく一つずつタスクを分割して丁寧に指示をした方が解決しやすいことと親和性が高いです。

設計の話でTDDの話を出したのは、先ほどの「結合度が低い部品で構成された設計をするようになる」に繋がるからでした。

まとめ

そもそも良い設計の定義は何でしょうか。

これは明確にはプロジェクトの要件や仕様などによって適切なものがあるので、一概には言えません。

ただ確実に言えることは、特に若手のエンジニアなどは、AIにより細かな実装は自分たちが行う作業量は減っていき、全体の設計やアーキテクチャを考える時間や機会が増えていくことです。

そのため、直ぐにでも設計・アーキテクチャを学ぶことで、AIをより効率的に扱う設計ができるようになるでしょう。

また細かな実装に関しても、日頃から勉強し、AIの判断が正しいかどうかを素早く見極めることも開発効率を上げるために重要です。

まとめ:いっぱい勉強しよう!!

お知らせ

可茂IT塾ではFlutter/Reactのインターンを募集しています!

可茂IT塾ではFlutter/Reactのインターンを募集しています!

可茂IT塾ではFlutter/Reactのインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More
U30可茂ITインターンハッカソン

U30可茂ITインターンハッカソン

12月28,29日開催。2日間でアプリ開発の企画から完成までを目指す!U30可茂ITインターンハッカソンを開催します。

Read More

タグ

Flutter (121)初心者向け (32)イベント (19)Google Apps Script (17)Nextjs (12)可茂IT塾 (11)React (8)riverpod (7)Firebase (7)デザイン (6)ChatGPT (5)vscode (5)Figma (5)AI (5)JavaScript (5)新卒 (4)就活 (4)Dart (4)お知らせ (4)FlutterWeb (3)Prisma (3)NestJS (3)Slack (3)TypeScript (3)アプリ開発 (3)ワーケーション (3)インターン (3)設計 (2)線型計画法 (2)事例 (2)Git (2)CSS (2)Freezed (2)Image (2)File (2)Material Design (2)経験談 (2)画像 (2)iOS (2)React Hooks (2)tailwindcss (2)社会人 (2)大学生 (2)RSS (1)Google (1)Web (1)CodeRunner (1)NotebookLM (1)個人開発 (1)Android (1)Unity (1)WebView (1)Twitter (1)フルリモート (1)TextScaler (1)textScaleFactor (1)学生向け (1)supabase (1)Java (1)Spring Boot (1)shell script (1)正規表現 (1)table (1)テーブル (1)hooks (1)パワーポイント (1)MCPサーバー (1)Obsidian (1)趣味 (1)モンスターボール (1)SCSS (1)Swift (1)MapBox (1)Cupertino (1)ListView (1)就活浪人 (1)既卒 (1)保守性 (1)iPad (1)シェアハウス (1)スクレイピング (1)PageView (1)画面遷移 (1)flutter_hooks (1)Gmail (1)GoogleWorkspace (1)ShaderMask (1)google map (1)Google Places API (1)GCPコンソール (1)Google_ML_Kit (1)Vercel (1)Google Domains (1)DeepLeaning (1)深層学習 (1)Google Colab (1)コード生成 (1)GitHub Copilot (1)GitHub Actions (1)オンラインオフィス (1)html (1)オブジェクト指向 (1)クラスの継承 (1)ポリモーフィズム (1)LINE Messaging API (1)LINE Notify (1)LINE (1)Bitcoin (1)bitFlyer (1)コミュニティー (1)文系エンジニア (1)build_runner (1)ヒーター (1)作業効率 (1) (1)Flutter実践開発 (1) (1)permission_handler (1)flutter_local_notifications (1)markdown (1)GlobalKey (1)ValueKey (1)Key (1)アイコン (1)go_router (1)FireStorage (1)debug (1)datetime_picker (1)Apple Store Connect (1)FlutterGen (1)デバッグ (1)Widget Inspector (1)VRChat (1)API (1)検索機能 (1)Shader (1)SharedPreferences (1)オフラインサポート (1)Navigator (1)メール送信 (1)FlutterFlow (1)Firebase App Distribution (1)Fastlane (1)Dio (1)CustomClipper (1)ClipPath (1)video_player (1)IMA (1)カスタム認証 (1)アニメーション (1)Arduino (1)ESP32 (1)フリーランス (1)会社員 (1)mac (1)csv (1)docker (1)GithubActions (1)Dialog (1)BI (1)LifeHack (1)ショートカット (1)Chrome (1)高校生 (1)キャリア教育 (1)非同期処理 (1)生体認証 (1)BackdropFilter (1)レビュー (1)getAuth (1)クローズドテスト (1)PlayConsole (1)Algolia (1)コンサルティング (1)Symbol (1)

お知らせ

可茂IT塾ではFlutter/Reactのインターンを募集しています!

可茂IT塾ではFlutter/Reactのインターンを募集しています!

可茂IT塾ではFlutter/Reactのインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。

Read More
U30可茂ITインターンハッカソン

U30可茂ITインターンハッカソン

12月28,29日開催。2日間でアプリ開発の企画から完成までを目指す!U30可茂ITインターンハッカソンを開催します。

Read More