wordiのブログスマートフォン用の表示で見るwordiのブログこの広告は、90日以上更新していないブログに表示しています。2016-05-25ReactJS界隈の人に聞きたい、への返答JavaScriptReact.js界隈の人に聞きたいmizchiさんの返答により一段落した感がありますが、自分もidコールされてたので自分の考えを返答しておきます、Qiitaに書くような事ではないのではてなブログを開設(はてなダイアリー:wordiの日記もあるけど長い事更新してないし今からならはてなブログの方が良い気がしたので)。自分のブコメBackbone(&Marionette)に対するReactの利点は、構造に各Viewが縛られた構造変更時のView改築コストからの解放。JSX嫌ならjadeを使うのも手。Marionette.js)と比較してどうか」についてを掘り下げたいと思います。jQueryではなくReact.jsを選定する基準についてサーバ・クライアントの計算・通信コスト等がありますが、ここでは開発時の筋の良さについて考えてみます。jQueryを使うと現状態のDOMの取得・追加・更新が直感的に、かつ手軽に行えます、シンプルなページに何か小さな機能を加える、って程度ならjQueryがマッチするでしょう。ここに状態を持ったデータが含まれると状況が変わってきます、jQueryが出来るのは現DOMに対しての差分の適用です、データ(MVCのMにあたる)をもとにDOM(MVCのVにあたる)に適用しようとする時、jQueryだけだと初回のDOM構築、途中の差分DOM更新とロジックが複雑化してくるでしょう、それを緩和する為にJsRenderやHandlebars、Jade等のテンプレートエンジンを使ってロジックから複雑さを排除し、Viewの冪等性を簡単に保障する仕組みが欲しくなるでしょう、jQueryの役目はここまでです。Marionette.js)やReact.jsを使えって事になります。Marionette.js)とReact.jsの両方で開発経験があり、その二つを比較した結果React.jsの方が開発しやすいと結論を出したのでReact.js推しです。});これらを継承するようにすればthis.model.set()でrender()が発火したりと(ただし、配列等の参照型の場合はchangeイベントが発生しない為、明示的な発火が必要ですが)React.jsのsetStateとほぼ似たような使用感に近づける事が出来ます。Marionette.js)で辛いのはレイアウト変更の時です、上記コードでも少し使ってますが、ViewにはItemView・CollectionView・CompositeView・LayoutViewがあり、レイアウトにより適切に使い分ける必要があります。CompositeViewから直属のItemViewが無くなる、とかであればCollectionViewへの格下げや、ItemViewをnullにするとかでいいのですが、CompositeViewのItemViewもCollectionにしたい、って時には改めてLayoutViewを設け、Regionを用意し、CollectionViewを2つぶら下げる、というめんどくさい手順を踏む必要があります。Marionette.js)辛い、ってなります、React.jsではそういった煩わしさがありません。domの方が速いんだろうなあ、とは思っていますが。一応、React.jsを使う前にもベンチをとったりしてるので、その時のページを載せておきます。月別アーカイブ参加グループプログラミングはてなブログをはじめよう!wordiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。