OSS紹介

React

React最新情報

NRIのOpenStandiaが提供するReact最新情報

Reactの保守サポートサービスの内容はこちら Reactの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

React最新トピック

■2017-03-06
[ニュース・市場動向] JavaScriptでネイティブアプリが作れる「React Native」。アプリの利用状況を分析するために、Segment.ioとKeen.ioを導入、設定する手順を詳しく解説。
■2017-02-27
[ニュース・市場動向] Web開発に特化したAdobeのOSSエディター「Brackets」がユーザー属性を発表 - もっとも使うJSフレームワークは?
■2017-02-27
[ニュース・市場動向] ゼロから学ぶ! Single Page Applicationの特徴と主なフレームワーク5選 (1/2)
■2017-02-27
[セミナー・イベント] 2017/03/25(土) 13:00 開催 広島県 福山 Reactハンズオン
■2017-02-13
[ニュース・市場動向] リアクティブデータベースアクセスを主とした次世代Spring Dataの最初のマイルストーンをPivotalはリリースした
■2017-02-13
[ニュース・市場動向] 基礎からはじめるReact入門 第2回 Reactコンポーネントへの理解を深める
■2017-02-13
[ニュース・市場動向] アメブロでReactやIsomorphic Web Applicationを採用した理由――その成果と構成技術 (1/2)
■2017-02-13
[ニュース・市場動向] Reactネイティブとネイティブアプリでの開発の違いとは
■2017-01-30
[ニュース・市場動向] React代替ライブラリInfernoが1.0になる
■2017-01-30
[ニュース・市場動向] 2017年にReact、Angular、Vueから期待されること

すべてを見る

Reactバージョンアップ情報

■2016-05-24
[VerUP]React 0.14.8(リリース日:2016/03/29)
■2016-05-24
[VerUP]React 15.0.0(リリース日:2016/04/07)
■2016-05-24
[VerUP]React 15.0.1(リリース日:2016/04/08)
■2016-05-24
[VerUP]React 15.0.2(リリース日:2016/04/29)
■2016-05-24
[VerUP]React 15.1.0(リリース日:2016/05/20)

すべてを見る

更新日:2016-05-24

Reactの概要

React (リアクト) とは、UI (ユーザインターフェース) を構築するためのJavaScriptライブラリです。

Reactは、FacebookやInstagram、Yahoo、Airbnbなどのサイトで利用されているJavaScriptライブラリの一つです。

Reactは Facebookによって開発さ れ、2013年5月30日に初期バージョンがリリースされています。日本国内でも2014年末頃から話題 (※1) となり、AngularJS (※2) と並んで人気のあるJavaScriptライブラリの一つとなっています。

現在の最新バージョンは、0.14.8、15.0.2、15.1.0です。 (2016年5月現在)

※1 Qiita (プログラミングに関する知識を記録・共有するためのサービス) に投稿された下記の記事が火付け役となり、日本国内でも話題となりました。
* [なぜ仮想DOMという概念が俺達の魂を震えさせるのか]
(http://qiita.com/mizchi/items/4d25bc26def1719d52e6)
* [一人React.js Advent Calendar 2014](http://qiita.com/advent-calendar/2014/reactjs)
※2 Googleとコミュニティによって開発が進められているJavaScriptフレームワークの一つです。


Reactの特徴

Reactは、下記の特徴を持つライブラリです。


JUST THE UI

Reactはビュー部分のみを担当するシンプルなライブラリとなっています。シンプルなため覚えることも少なく、とっつきやすいライブラリとなっています。
また、Reactでは簡単にUIをコンポーネント化できるような仕組みになっています。コンポーネントを組み合わせてより大きなコンポーネントを作成することができます。React向けのコンポーネントはOSSで公開されているものも多数あり、うまく活用することで効率よく開発することもできます。

VIRTUAL DOM

Reactは Virtual DOM (仮想DOM) と呼ばれる仕組みを持っています。開発者はブラウザのDOM (Document Object Model) を操作することなく、Virtual DOM に対して変更をかけることで画面が描画されます。
実際のDOMへの反映は、VirtualDOMにより最適化されて行われます。具体的には、VirtualDOMが前回描画時との差分比較を行い、必要な箇所だけをまとめて更新するような仕組みになっています。これにより、アプリケーションコードをシンプルに保ちつつ良いパフォーマンスも出せるようになっています。

DATA FLOW

Reactでは一方通行のデータフローを採用しています。
AngularJS などの他のJavaScriptフレームワークでは双方向のデータフローとなる 2-way-データバインディング が提供されていますが、Reactではアプリケーションコードの保守性を高めることをとても意識しており、シンプルで理解しやすい一方通行のデータフローでUIを構築していきます。

Reactの動作環境

前提となる動作環境は、ES5に対応している一般的なブラウザとなっています。Internet Explorerの場合はバージョン9 以降が対象となっています。
最新の情報は https://facebook.github.io/react/docs/working-with-the-browser.html を参照してください。

Reactのライセンス

Reactのライセンスは、BSDライセンスです。

BSDライセンスでは無保証であることの明記と著作権およびライセンス条文の表示を条件に、オブジェクトコードの自由な改変・頒布が認められています。

関連OSS

* [React Native](https://facebook.github.io/react-native/)
* iPhone・Android向けのフレームワークで、Reactを使用してネイティブアプリケーションを開発することができます。
注意点として、Web向けに開発した物がそのままiPhone・Android向けに動作するわけではありません。Learn once, write anywhere という思想で作られており、一度Reactによる開発を学べば同じスタイルでネイティブアプリケーションも開発できるようになることを狙いとしています。
* [react-router](https://github.com/reactjs/react-router)
* React用のルーティングライブラリです。Reactでルーティング機能が必要な場合に使用することができます。
* [Redux](http://redux.js.org/)
* アプリケーションの状態管理行うためのライブラリです。Redux自体は AngularJS などの他のフレームワークからも利用できる独立性の高いライブラリとなっています。
Reactでより複雑なアプリケーションを開発する際は、その状態管理が鍵となってきます。状態管理を担当するライブラリは多数存在しますが、2016年4月時点ではReduxが人気のあるライブラリとなっています。

その他、リッチなグリッドテーブルや入力フォームといった、React向けのコンポーネントがOSSで多数公開されています。
https://github.com/facebook/react/wiki/Complementary-Tools#ui-components でも紹介されていますので、そちらを参照してください。

Reactの公式サイト

http://facebook.github.io/

Reactのダウンロード

http://facebook.github.io/react/downloads.html

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気OpenAM
  • 注目MongoDB
  • OpenIDM
  • Corosync
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • BIND
  • Apache Struts
  • PostgreSQL
  • Pentaho
  • Spring Framework
  • Apache Tomcat
  • Solr
  • Dovecot
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Liferay
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • BIND
  • OpenDJ
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • sendmail
  • Courier-IMAP
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO
?
<--!-->