フロントエンドvs.バックエンドvs.フルスタックWeb開発
コンテンツ
Web開発はただ1つのことではありません。複数のスキルセットが含まれており、Web開発スペースにはさまざまな種類のキャリアがあります。よく使用される3つの用語は、「フロントエンド」、「バックエンド」、「フルスタック」です。 3つの主な違いは次のとおりです。
フロントエンドWeb開発
フロントエンド開発は、そのコンポーネントは常に変化しますが、基本的にはWebサイトまたはWebアプリケーションの外側に面する部分を扱います。基本的に、フロントエンド開発にはHTML、CSS、JavaScriptが含まれます。
- HTML:ハイパーテキストマークアップ言語(HTML)は、インターネット上のすべてのWebサイトの主要な構造コンポーネントです。それがなければ、ウェブページは存在できません。
- CSS:CSSはHTMLにスタイルを追加します。 HTMLは顔のようなもので、CSSは化粧のようなものです。
- JavaScript:JavaScript(JS)は、過去数年にわたって進化しています。フロントエンド開発に関しては、JSはWebページをインタラクティブにするのに役立つので重要です。
フロントエンドはレイアウトと設計の原則に関連付けられていますが、フロントエンドの開発者は必ずしもデザイナーではありません。基本的に、フロントエンドの開発者は、ユーザーに表示されるWebサイトページである外観を構築します。つまり、フロントエンドの開発者は、サイトやアプリケーションの可読性と使いやすさを考慮する必要があります。さらに、フロントエンドはクライアントで実行されます。つまり、ユーザーのローカルコンピューターです。ほとんどの場合、Webブラウザーです。また、情報はクライアント側には保存されません。
バックエンドWeb開発
バックエンドWeb開発は、裏で行われていることです。バックエンドはフロントエンド体験を可能にします。
物事を簡単にするために、フロントエンドを水上の氷山の一部として考えます。ユーザーが目にするのは、洗練された外観のサイトです。バックエンドは残りの氷です。エンドユーザーには表示されませんが、Webアプリケーションの最も基本的な要素です。バックエンドはサーバー、または「サーバー側」と呼ばれることも多いサーバーで実行されます。
フロントエンド開発(主にHTML、CSS、JavaScriptを使用)とは異なり、バックエンドWeb開発はさまざまな言語とフレームワークに依存できます。
バックエンドで使用されるいくつかの一般的な言語は次のとおりです。
- ルビー (多くの場合、Railsフレームワーク(別名Ruby on Rails)と組み合わせて使用されます)
- パイソン (バックエンドのDjangoフレームワークでよく使用されます)
- PHP (人気のあるWordPress CMSはバックエンドでPHPを使用しています-PHPにはいくつかの人気のあるフレームワークがあり、1つはLaravelです)
- Node.js (より人気を得ています-これはJavaScriptで構築されたWebアプリのバックエンド環境です)
大規模なWebサイトとWebアプリケーションが機能するためには、バックエンドの言語とフレームワーク以上のものです。 Webサイトまたはアプリケーションのすべての情報は、どこかに保存する必要があります。
ここがデータベースの出番です。バックエンドの開発者もこれらを処理します。
人気のあるデータベースは次のとおりです。
- MySQL
- PostgreSQL
- MongoDB
- その他
通常、特定のバックエンド言語/フレームワークには特定のデータベースが必要です。たとえば、MEANフルスタックフレームワークにはMongoDBが必要です。
バックエンドの言語/フレームワークを理解し、データベースを実行するだけでなく、バックエンドの開発者はサーバーアーキテクチャについても理解している必要があります。
サーバーを適切に設定すると、サイトが高速で実行され、クラッシュせず、ユーザーにエラーを与えません。ほとんどのエラーはフロントエンドではなくバックエンドで発生するため、これはバックエンド開発者のドメインに該当します。
フルスタック
フルスタックは、フロントエンドとバックエンドの両方の組み合わせです。フルスタックの開発者は、すべてのトレードのジャックです。彼らは、サーバーの設定から設計関連のCSSまで、開発のすべてのレベルを担当します。
最近では、Web開発に必要なものが多すぎて、両方を処理することはほとんど不可能です。多くの人がフルスタックであると主張することができますが、実際にはそうですが、通常はクライアントまたはサーバーのどちらかに重点を置いています。
中小企業/新興企業では、1人の担当者がWeb開発のあらゆる側面に責任を持つ可能性が高くなります。ただし、大企業では、人々はチームで作業し、特別な役割を持っています。1つはサーバーアーキテクチャにのみ焦点を当て、もう1つ(または数人)はフロントエンドに焦点を当てています。
結論
Web開発には多くの面があり、日々進化しています。学ぶべきことはたくさんありますが、一度にすべてを学ぶようにプレッシャーを感じないでください。職場環境では、通常、他の人とチームになります。一度にWeb開発の1つの側面でスキルを磨くことに焦点を当てます。圧倒されないでください。気づかないうちにプロになれます。