カッパでも分かるiOSアプリゲーム開発

カッパがひたすらゲーム制作に関することを書くブログです。Railsに関するTipsもたまにまとめてます。

React.js の考えてる事はさっぱり分からん

スポンサードリンク

f:id:InvokeTwoA:20151023183618p:plain「Json schema, React, Redux,オフショア開発……新しい事ばかりだ」
f:id:InvokeTwoA:20151215172640p:plain「メモしながら勉強しなくては。しなくては〜」

react.js

  • UIパーツを作るためのライブラリ
  • 結構独特なソースコード
  • Facebook が作っている(これを聞いた瞬間、react.js がチャラいライブラリにしか見えなくなった)
  • インスタグラムとか大手企業も使ってるらしい。やはりチャラい
  • Backbone.jsやAngular.js とも併用可能

何がすごいの?

  • 仮想DOMなので早いらしい。ザクとは違うって事かー
  • Reactive らしい(なんじゃそりゃ)。なんかを変更すれば反応して自動で色々変わるとか

Redux

f:id:InvokeTwoA:20151023183618p:plain「グゴゴゴ……新しい単語がありすぎて混乱する」
f:id:InvokeTwoA:20151215172640p:plain「新しい単語を受け入れられない時、人は老害となるんですな」

Redux ってなんだ?

  • ReactJSのstate(状態)を管理をするためのフレームワーク
  • Reactではstateの管理するデータフローにFluxを提案してるけど、ReduxはFluxの概念を拡張してより扱いやすく設計されてるらしい
  • 要するに Flux は Redux に NTRされた訳だ

どんな作りなの?

Action 「何をする」という情報を持ったオブジェクト。typeプロパティを必ず持っている
ActionCreator ユーザーの入力内容を受けて、 Action を生成する
Store state(状態)を保持してる場所。Actionはストアに送られるらしい
State 状態
Reducer Actionとstateから、新しいstateを作成して返すメソッド。Actionごとに case 文使って処理をする感じになる


f:id:InvokeTwoA:20151023183618p:plain「これらの要素があるのか」
f:id:InvokeTwoA:20151215172640p:plain「既に発狂しそう」

結局

よく動かねー

既存コード(バグで動かない)でいきなり理解しようとするより、ハローワールドからやった方が近道な感じがするな。

追記

  • ちょこちょこ動かして見たけど、確かに画面の切り替わりとかが凄く早い
  • これが仮装DOMの力かー