フレームワークの種類


フレームワークとは何かでは、その基本概念を説明しました。つまり、構造と解決済みの配管工事に加えて、フレームワークがあなたのコードを呼び出すというものです。このチャプターは、実際に存在するものの地図です。これらすべてを知っている人はいないという安心感が組み込まれたツアーです。働いているデベロッパーは1つまたは2つのファミリーをよく知り、残りを認識しています。ここでもそれが目標です。名前よりもファミリーが重要です。1つのメンバーをよく学べば、その兄弟姉妹はすぐに習得できます。
ウェブ:フロントエンドとバックエンド
ウェブフレームワークは、ウェブ自体が分割される線に沿って分割されます。フロントエンドフレームワークはブラウザで実行され、ユーザーが見るものを管理します。バックエンドフレームワークはサーバー上で実行され、データ、アカウント、および舞台裏のすべてを管理します。ウェブ開発に進む場合、双方から1つずつが日々のツールになる可能性が高く、どちらを選ぶかは通常、あなたが参加するチームまたはプロジェクトによって決まります。
あなたが出会うフロントエンド名:
- React:圧倒的に最も使用されており、最大のエコシステムと求人市場を持っています。技術的には完全なフレームワークではなくUIライブラリですが、この区別には下で扱う有用なコアがあります。
- Vue:緩いオンランプと実際に楽しまれるドキュメントで知られています。完全で、整理された中道です。
- Angular:Googleのバッテリー内蔵フレームワークで、すべてについて独断的です。各項目に対して1つの承認されたやり方を望む大規模組織で最も活躍します。
- Svelte:ビルド時にその作業を行い、ブラウザに送信するコードが少なくなります。小さなコミュニティですが、その中にいる人々によく賞賛されています。
そしてバックエンド名。ここでフレームワークは通常言語に関連しています:
- Django(Python):データベースから管理インターフェースまで、バッテリー内蔵。既に知っているPythonの頻繁なパートナーです。
- Rails(Ruby):設定より慣例を普及させたフレームワーク。その考え方はほとんどの現代ウェブフレームワークに広がっていますが、Laravelも含まれています。
- Laravel(PHP):PHPの世界の現代標準で、ウェブの非常に大きなシェアをまだ実行しています。
- Express(JavaScript):意図的に最小限で、完全なフレームワークよりもツールキットに近いです。残りを自分で組み立てます。
- Spring(Java):エンタープライズの労働馬で、広大で、深く確立されており、大企業の至る所にあります。
アプリとゲーム
モバイル開発には独自のフレームワークストーリーがあり、1つの質問を中心に展開します。iPhoneとAndroid用に個別に構築するか、両方に1回構築するか?2つのフレームワークが「1回で構築」という答えを支配しています。Flutter(Dartプログラミング言語を使用するGoogleから)はそのインターフェースをピクセル単位で描画するため、アプリはどこでも同じに見えます。**React Native**はReactのコンポーネントモデルをモバイルにもたらし、各プラットフォームのネイティブインターフェースピースを駆動します。これはReactを既に知っていれば、自然な継続です。
ゲームエンジンは、最も完全なフレームワークです。1秒間に60回実行されるループを所有し、あなたのコードは各オブジェクトが内部で何をするかを埋めます。Unity(C#)はインディーおよび中規模ゲーム、およびモバイルゲームの多くのデフォルトです。Unreal(C++)は、ビジュアル忠実度が重要な場所、大予算のゲームから映画制作まで主導しています。**Godot**は無料のオープンソースエンジンで、そのコミュニティは急速に成長しており、始めるのに親切な場所です。
静かなもの:テストとデータ
すべてのフレームワークが製品を構築することについてではありません。その周りの仕事を整理するものもあります。テストフレームワークが最も明確なケースであり、最後のチャプターの定義の最も純粋な例です。pytest(Python)、Jest(JavaScript)、および**JUnit**(Java)は各々、あなたのテスト関数を検出し、実行し、報告し、あなたが独自のテストを呼び出すプログラムを書くことはありません。ほぼすべての職業的なコードベースで、通常はプロジェクトの言語と一致するものを、あなたは出会うでしょう。
データと機械学習にもフレームワークがあります。**PyTorchは研究と、ますます本番番を支配しています。TensorFlow**は、Googleの深い本番番ツール付きエコシステムです。両者とも、あなたのコードが計算ではなくモデルを記述できるように、モデルのトレーニングの数学的機械を処理します。AIの仕組みトラックが興味を持った場合、これは世界が構築するツールです。
これがどこへ進むか
それが地図です。ウェブは両側のワイヤー、モバイル、ゲーム、テスト、データで、すべて異なるユニフォームを着ている同じ考え方です。残りの質問は実践的なもので、2つの半分があります。どれか、そしてそれすべてかどうか。フレームワークの選択と学習は両方を正面から取ります。ここでの定義が不安定に感じた場合、フレームワークとは何かは短い読み戻しです。

