Web開発(ウェブ開発)について、基本的なところを、用語の意味を中心に備忘録を兼ねてまとめておきたいと思います。
目次
Web開発とは?
Web開発者が、Webアプリケーションを開発(作成)することです。
Webとは?
インターネット内に存在している文字・画像・動画・音声などの情報を結びつけて閲覧・利用できるようにした世界規模の巨大なコンピュータネットワークシステム。
正式名は「Wordl Wide Web」。
Web開発者とは?
Webアプリケーションを開発(作成)する技術者のことで、WebエンジニアやWebアプリケーションエンジニアもほぼ同じ意味です。
Webアプリケーションとは?
SafariやGoogle ChromeのようなWebブラウザが持っている表示・通信・データ処理などの基本機能を使って動作させるアプリケーションのことです。
例 » Google検索、Gmail、Amazon、楽天、YouTube、Twitter、Instagram、NetFlixなど。
各Webアプリケーションは、それぞれ独自の機能を実現するためにプログラミングされています。
プログラミングとは?
プログラムを使ってコンピュータに何かをさせる命令をすることです。
プログラムとは?
コンピュータに指示を出すために専用設計された「プログラミング言語」という言葉を用いて、コンピュータが何かするを時にどのように動作すればよいのかのルールを書いたものです。
一般的に「ソースコード」と(単に「ソース」あるいは「コード」とも)言われるテキスト(人が見て読める「文字」で書かれた情報)を何かしらの方法でコンピュータに理解させます。
Web開発では、原則「HTML」「CSS」「JavaScript」という3つのプログラミング言語は必須と言えます。
HTMLとは?
「Hyper Text Markup Langage」の略で、Webページ(Webブラウザで見るためのページ)の内容(意味や構造)を記述するための言語です。
CSSとは?
Webページのスタイル(見た目やデザイン)に関する情報を記述する言語です。
スタイルをゼロから整えるのは大変な作業になるので、整ったデザインを比較的簡単に作れるよう利用頻度の高いパーツやレイアウトのCSSがまとめられた「CSSフレームワーク」が使われることも多いです。
CSSフレームワークの例 » Bootstrap、Foundation、Tailwind CSS、Materializeなど
JavaScriptとは?
Webブラウザで動作させることができるものとしては、唯一と言える、本格的なプログラミング言語です。
JavaScriptを使うと、表示・通信・データ処理などの様々な処理をブラウザに行わせることができるため、Webページに動きをつけたり、Webページ内容の一部だけを動的に更新するなど多くの場面で利用されます。
JavaScriptにも、便利な機能がまとめられた「JavaScriptフレームワーク」や「JavaScriptライブラリ」があり、よく利用されています。
例 » jQuery、Vue.js、Nuxt.jsなど
クライアントとサーバー
上記の「HTML」「CSS」「JavaScript」を使えば、Webブラウザ単体で動作する簡単なWebアプリケーションを開発することは可能です。
しかし、より高度なWebアプリケーションの開発を行うためには、Webブラウザで動作させる部分のほかに、インターネット内で公開されているサーバーというコンピュータで動作させる部分の開発も必要になります。
サーバーに対して、Webブラウザ側をクライアントと呼びます。
Webアプリケーションは、サーバーが提供している各種機能を、クライアントがインターネットを介して通信することで操作・利用するという形態となることが多くなっています。
クライアント側(クライアントサイド、あるいはフロントエンド)の機能を作ることをフロントエンド開発、サーバー側(サーバーサイド)の機能を作成することをサーバーサイド開発などと言います。
クライアントとサーバーの役割分担はWebアプリケーションにより異なるため、一律に機能を切り分けることはできませんが、主に、
- クライアント側は見た目や操作に関する機能
- サーバー側は情報の提供や収集、加工、保存に関する機能
などを担当することが多く、開発に関しても、必然的にそれぞれの側で担当する機能を作成していくことになります。
なお、サーバーサイド開発ではWebブラウザの仕様に縛られることなくプログラミング言語を選べるため、JavaScriptはもちろん、PHP、Ruby、Python、Go言語、Java、Perlなど、非常に多種多様なプログラミング言語が使われますが、詳細についてはここでは割愛させていただきます。
まとめ
以上、Web開発(主にクライアント側)について、基本的なところを、用語の意味を中心にまとめてみました。
ここに挙げた内容だけでは、まだWeb開発の入り口にすら立っていないくらいかもしれませんが、少しでも参考になったらうれしいです。