Webサービスにてユーザーがアクセスする部分と管理者だけがアクセスする部分(管理ツールなど)とがあって、
個人的には前者を「フロントエンド」後者を「バックエンド」と呼称したいのだけど、
それで違和感がないか自信が持てなかったので少し調べてみた。
検索で一番最初に出てくるのはJavaベースの開発。
アプリケーションの構造によってかなり違いはあるけれども、ざっくり言えば、
- フロントエンド … HTTP処理を行う部分(Webサーバ/アプリケーションサーバ)
- バックエンド … データベースサーバ
というのが普通っぽいようだ。
業務用途としての裏表ではなくて、アーキテクチャ的に見てどうかというような。
HTTP処理すればそこはアプリケーション的にはフロントエンドであり、
それを介して更新されるデータ部分がバックエンドだよねと言う。
まぁそりゃそうか。それはそれで筋が通ってる。
ただその後の様々な文章を読んでいくと解釈は結構適当なようで、
ざっくりと「後ろにあるもの」的な用法をしているところもちらほら。
並べてみるとこんな感じ。
Webサービス
- フロントエンド … Webサービスそのもの、ユーザーのPCやブラウザ
- バックエンド … APIや会員情報を管理する部分(「バックエンドシステム」と呼称)
バックエンドにインフラやサーバ等ハードウェアを含める場合もあり。
ブログサービスなど
- フロントエンド … CMSが出力するHTMLファイル
- バックエンド … CMSソフトウェアおよびデータベース
広告配信サービス
- フロントエンド … 広告を表示させる部分
- バックエンド … どの広告を表示させるか決める部分
一般的なビジネス
- バックエンド … 「POSシステム」「需要予測システム」「会計システム」など。イントラネット内の内部向けサイトも
まぁ確かにこれはこれで「裏側」ですね。間違ってはない。
んー厳密じゃないのか?
結論的なもの:
ニュアンスで良いんじゃないかな。うん。
別にアーキテクチャの概念を反映した設計を書くわけではなく、
単純に呼称をどうするかという話だし。
あんまり気にしないことにします。
続きを読む