10年間で約15万行のコードを抱え、jQuery -> React + DDD -> React + Redux とアーキテクチャの変遷を辿ってきたChatworkを事例として、 組織フェーズの変化によって発生する課題と、それらをアーキテクチャの観点からどのように乗り越えるか紐解きたいと思います。

Vanilla JSのメリット フレームワークのサイズが大したことないなら、バニラでやるメリットはあるのか?という話になりますが、実際作ってみてバニラの方が優位だった点が1つありました。 それは動作が速いことです。 今回作ったSPAの中に1つ、画面内の要素が多すぎて描画に数秒時間がかかるページがありました。 どれくらい多いかというと、テキストボックス・チェックボックス・プルダウンなどの入力要素が1画面に1万個以上あります。 この画面を高速化したいと思い、試しにVue.jsで同じようなページを作ってみたのですが、比較するとVanilla JSの方が速かったです。 仮想DOMは速いみたいな記事を目にすることがあり、VueやReactはなんとなく速いイメージを持っていたのですが、よく考えてみるとVueやReactだって最終的には画面描画のためにリアルDOMを操作するわけで、それなら必要最小限のリ
Japan Financial institution Code Web API金融機関検索APIのスタンダード銀行、信用金庫等の統一金融機関コード、名称を検索できる Web API。 毎月 8,000万を超える検索リクエストを処理し、トラフィック増加時にも優れた可用性とレイテンシを提供しています。 BankcodeJP APIシンプルそしてパワフルに設計されたAPIは、Eコマースにおける金融機関検索に最高のパワーを与えます。 JSONフォーマットで金融機関情報を返却するAPIはCORS対応しているためAjaxで通信できます。JQuery はもちろん、Angular や React、Ember.js、Aurelia、Vue.js などの SPAフレームワーク からも利用できます。 いくつもの企業がBankcodeJP APIを導入し、素早く効率的に Webサービスを構築しています。
そうはっきり言ったほうが良かった。いや言わなくても伝わる現場は良かったんだけど、伝わらないままごく一部だけをコンポーネントに移行、それ以外はただ生 DOM API に変えて終わり(あるいは他は jQuery のまま)みたいな「モダン化」で済ます余地を与えたのは発信の失敗だった……という10年代の振り返り。 テンプレートエンジンはなぜ倒された方が(…といって悪ければ、変わったほうが)良いのかは端的に指摘できて、それは初回レンダリングしか考慮してないからだということになる。 Web の UI には状態変化がつきもの(になったのは実は最近の話)だが、テンプレートエンジンは1回目のレンダリングだけを担当し、変化した後の2回目以降の見え方は JavaScript が担当するというパラダイムを構成する。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く