💼

Reactとは

2023/10/15に公開

Reactとは

WEBフレームワークで、javascriptライブラリの一つでUser interfaceを作るため使われます。

WEB開発が複雑になるにつれ、html、css、jsだけでは限界が発生して、初期にはWeb開発のためのフロントエンドライブラリとしてDOM操作をしやすくしてくれるjQueryライブラリが主に使われていました。

👾details DOM(Document Object Model)とは
DOMは文書オブジェクトモデル(Document Object Model)の略で、ウェブページ文書をツリー構造のnodeとして表現します。
WEBページドキュメントをツリー構造のnodeとして表現します。 JavaScriptを使ってこれらのノードを操作することができます。 DOMはウェブページの要素に動的にアクセスして修正するために使用され、ウェブアプリケーションの動的な機能を実装する上で重要な役割を果たします。
しかし、その後DOMを直接操作する方式に限界を感じ、大規模プロジェクトに効率的にコードを管理し、コンポーネントベースのUI開発を支援するフロントエンドフレームワーク(ライブラリ)が登場しました。 そのうちAngular、React、Vueをフロントエンド開発を代表するツール3つと呼びます。

👾要約

  • facebookで作られたライブラリ
  • Single page application(SPA)または Mobile applicationの開発し使われます。
    SPAとは
    サーバーからデータを受け取るたびにリクエストを送信し、返却されたデータでサイトの内容を更新します。

Reactの特徴

👾宣言的(Declarative)です
リアクトはUIを作成するのに有利である。 データが変更された時に効率的にレンダリングを行えるようにする。
👾コンポーネントベース(Component-based)です
カプセル化されたコンポーネントが自分で状態を管理し、複雑なUIも効果的に構成できる
👾一度学んでどこでも使います。(Learn Once, Write Anywhere)
既存ソースを不要に書き換えることなく新機能を開発できる。 Nodeサーバーでレンダリングすることもでき、オンラインウェブでも使用できる。 RN(React Native)を使えば、モバイルアプリも作れる。

JSX(JavaScript Syntax Extension)

JSXとは、Reactの中で一般的なHTML形式の文法を使用できるように、JavaScriptを拡張した文法で、React elementを生成することができ、JavaScriptのすべての機能が含まれています。

const element = <h1>Hello, world!</h1>;

マークアップとロジックの両方を含むコンポーネント形式で構成できます。

React Project Start

node.js DL

https://nodejs.org/ja

React Project生成

npx create-react-app [projectName]

cd projectName
npm start

Discussion