フロントエンドとバックエンドについて
仕事をしていると意外と説明する機会が多いような気がしなくはない、フロントエンド・バックエンドについて備忘録を書いていこうと思います。
まず結論
フロントエンド
フロントエンドとは、後述(MVVM)のWEBページ
を返してくれるサーバや、生成されたフロントアプリケーションのことを指します。
言語
React, Vueなどで作成できる、WEBアプリ。
Flutterや、Kotlin, Swiftなどで、作成できるスマホアプリ。
バックエンドエンド
そして、バックエンドとは、上記フロントアプリは虫食いの状態となっています。
その食われたところをの情報を情報を取得するためのサーバです。
言語
Java, Python, Goなどで作成します。
情報は、JSONという形式で返すのが主流かなと思います。
RESTful APIなどと言います。
MVC
今までの主流。
フロントエンドとバックエンドの明確な区別はない(はず)です。
MVCとは
MVCモデルとは、プログラムを役割ごとにModel(モデル)・View(ビュー)・Controller(コントローラー)の3つに分けて管理するソフトウェア設計モデルのことです。 システムの保守性や生産性の向上を図ることができます。 Model・View・Controllerの頭文字を取ってMVCモデルと呼ばれます。
参考Link
要するに、1つのサーバが、データをDBに取りにいって、取得したデータを含めた形でWEBページをこねこね作って返してくれます。
MVVM
今伝えたい方。
MVVMとは
MVVMとは、利用者に対する表示・操作の機能(ユーザーインターフェース)が存在するソフトウェアの構造を階層的に整理したモデルの一つで、全体を「Model」(モデル)-「View」(ビュー)-「ViewModel」(ビューモデル)の3層に分割にしたもの。
参考Link
要するに、WEBページを返してくれるサーバと、データを返してくれるサーバがそれぞれ分かれています。
あとがき
最近はMVVMの形式が主流ですね。
これからWEB3.0になったら、確実に必要な知識になりますので、頭の片隅にでも置いておいていただくのがいいかなと思います。
Discussion