生成AIを駆使することでWebアプリケーション開発のハードルは劇的に下がる。
ただ、いくらプログラミングの負担が少なくなったとはいえ、開発に必要な知識で押さえておくべきことはいくつかある。
今回はWebアプリの開発をする際に生成AI世代の初学者が押さえておいた方がいい知識について紹介する。
Web開発する際に必要な知識

そもそもWebアプリケーションを開発する時にはどんな知識が必要なのか。
- プログラミング言語の知識
- Webが動く仕組みについての知識
- データベース操作に関する知識
- その他開発をする上で必要になる知識(Gitとか、クラウドとか)
ざっと考えてみるとこんなところの知識が必要になる。
生成AIを使うことで劇的に簡単になる部分

上記の知識は大体AIで補完することができる。
中でも「プログラミング言語の知識」と「データベース操作に関する知識」が劇的に楽になる。
わからないものは1から作ってくれるし、間違いを直したりするのも、コードを渡せば全部やってくれる。
逆にある程度知らないとできない部分
逆に、AIに聞いたところでどうしていいかわからない場所もある。
それを紹介するとともに、自分が参考にした本などの学習媒体を紹介する。
Webアプリが動く仕組み

フロントエンドとバックエンドがそれぞれあること、それらが通信をすることによってWebが動いていること、データベースの仕組みなど、これらは基本的なことは理解しておく必要がある。
コードが出力されていても、どのようにそれを設定すれば動くのかわからなければWebアプリは動かない。
さらに、世の中にある多くの開発を補助するツールもどの場所で使えるのかがわからないと使うことができない。
学習に使ったのはこの書籍。
Webアプリを実装するまでの流れ

最初にどのようなことを検討する必要があるのか、どのようにプログラミング言語を記述するのか、どのようにすればWebアプリとして世の中に公開できるのか。
この辺の知識もある程度ないといけない。
設計→プログラミング→テスト→デプロイ→メンテナンスとアップデート
この流れを押さえておくといい。
これはそれぞれの工程に対応した記事を参考したりした。

開発の環境で使われているツール

開発の環境ではGitなどのバージョン管理ツール、実行環境としてのDocker、クラウドサービスであるGCPやAWSなど。
実際の環境では多くのツールが使われている。これらの使い方やコマンドなどはChatGPTに聞くことができるけど、存在自体は知る必要がある。
実際に働いているエンジニアとやりとりをしたり、巷にある記事を読んだりする時にも結構必要になるので、基本的な理解はしておく必要がある。
Gitについて学べるサイト

Dockerについて学べるYouTube動画
AWSについて勉強できる書籍
根幹に関わる部分を「理解する」

まとめると基本的にはWebアプリの根幹に関わること=時代や流行での変化が小さい部分を丁寧に理解しておくことが必要。
また、暗記をする必要はない。大体の流れを理解して、実装していく中で出会ったタイミングで復習するのがおすすめ。
例えば、最初の段階で「JSON形式」については珍紛漢紛だったけど、実装していくとこれが多用されている。だから、そこで学ぶことになったし、その段階で学んだ方が理解が早かった。
まとめ
正直、この座学の部分は面白くない。
ただ、この後アプリを作ったり、実際にエンジニアの人と仕事をする時に絶対に必要になる知識になっている。
プログラミング言語の学習が進んできた段階でここら辺を学習しておくことをお勧めする。