Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Mosh-ヘンリー合同ギベンLT-MobXの感想.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
TASUKU
March 18, 2025
1.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Mosh-ヘンリー合同ギベンLT-MobXの感想.pdf
TASUKU
March 18, 2025
More Decks by TASUKU
See All by TASUKU
LT for making a goal
taskkawahara
1
330
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
440
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
680
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
We Are The Robots
honzajavorek
0
380
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
Agile that works and the tools we love
rasmusluckow
331
22k
WCS-LA-2024
lcolladotor
0
830
Transcript
Copyright © Henry, Inc. All rights reserved. MobXを導入されたメンバー視点 Redux, Jotaiと比較して
川原 祐 (@task-k0414) Mosh × ヘンリー合同技術勉強会
Copyright © Henry, Inc. All rights reserved. name: 川原 祐
(@task-k0414) job: Frontend Engineer team: EMR joined: 去年7月 hobby: - 娘(2歳) に遊ばれること - サ活 - 麻雀 - 社内大会でトップとりました! - キャンプ - 行けてない - ゲーム - モンハンやりたいとおもって... 自己紹介
Copyright © Henry, Inc. All rights reserved. 状態管理にMobXを 導入した話
Copyright © Henry, Inc. All rights reserved. 先日、弊社アーキテクトの @creasty がMobXを導入した話をテックブログに出
しました - https://dev.henry.jp/entry/mobx MobXを導入した話
Copyright © Henry, Inc. All rights reserved. MobXとは?
Copyright © Henry, Inc. All rights reserved. • シグナルベースの状態管理ライブラリで、関数型リアクティブプログラミン グを透過的に適用
• 「アプリケーションの状態から導出できるものは、自動的に導出されるべ き」という哲学 MobXとは?(概念)
Copyright © Henry, Inc. All rights reserved. • シンプルさ:ボイラープレートが少なく、直感的なコード記述が可能 •
最適なレンダリング:状態変更を自動的に追跡し、必要な時だけ再計算・再 レンダリング • アーキテクチャの自由度:特定のUIフレームワークに依存せず、アプリケー ション状態を管理可能 • 透過的な関数型リアクティブプログラミング(TFRP):グリッチフリー、同 期的、予測可能、効率的な実装 MobXとは?(特徴)
Copyright © Henry, Inc. All rights reserved. • シンプルさ:ボイラープレートが少なく、直感的なコード記述が可能 •
最適なレンダリング:状態変更を自動的に追跡し、必要な時だけ再計算・再 レンダリング • アーキテクチャの自由度:特定のUIフレームワークに依存せず、アプリケー ション状態を管理可能 • 透過的な関数型リアクティブプログラミング(TFRP):グリッチフリー、同 期的、予測可能、効率的な実装 MobXとは?(特徴)
Copyright © Henry, Inc. All rights reserved. • クラスベースで書けて、関数型プログラミングとオブジェクト指向のいいと こ取りできそうなライブラリ、という理解。
• 複雑なドメインをクラスベースで整理して書けそう。 MobXとは?(要するに)
Copyright © Henry, Inc. All rights reserved. 複雑なドメインを豊か に表現できる
Copyright © Henry, Inc. All rights reserved. クラスベースでドメインモデルを振る舞いまで集約して書ける カプセル化によって重要なビジネスロジックをドメインモデルに隠蔽できる 入れ子になっている複雑なドメインも直感的に実装できる
複雑なドメインを豊かに表現できる 医師の処方の指示 薬と用法などの 指示のブロック 医薬品とその成分量や 用法などの内容
Copyright © Henry, Inc. All rights reserved. 医師の処方の指示 薬と用法などの 指示のブロック
医薬品とその成分量や 用法などの内容 クラスベースでドメインモデルを振る舞いまで集約して書ける カプセル化によって重要なビジネスロジックをドメインモデルに隠蔽できる 入れ子になっている複雑なドメインも直感的に実装できる 複雑なドメインを豊かに表現できる 医師や患者の紐づ け 飲み合わせな どの禁忌 投薬日数 調剤の指示 医薬品の種類 成分量の算出
Copyright © Henry, Inc. All rights reserved. 他の状態管理ライブ ラリと比較して
Copyright © Henry, Inc. All rights reserved. 入れ子構造を持ったモデルを表現する(MobX Class)
Copyright © Henry, Inc. All rights reserved. Redux
Copyright © Henry, Inc. All rights reserved. Jotai
Copyright © Henry, Inc. All rights reserved. MobX vs Jotai
Copyright © Henry, Inc. All rights reserved. MobX vs Jotai
Copyright © Henry, Inc. All rights reserved. • オブジェクト指向の知識があれば理解しやすい •
デコレーターさえ受け入れられれば、すごく簡単にかける • リアクティブプログラミングの考え方に慣れる必要がある 比較してMobXのいいところ
Copyright © Henry, Inc. All rights reserved. • React Functional
Component は基本的にイミュータブルで単方向フローの データを要求している • MobXでは observer() を使って High-Order Component の形でリアクティ ビティを提供する • 暗黙的なところが辛くなることもありそう • Jotaiとかできっちり関数型ドメインモデリングできるとかっこいい! とはいえ,,,
Copyright © Henry, Inc. All rights reserved. • モデルに状態を持っているので、コンポーネント単位で複雑でない場合は ViewModelを噛まさずにDomain
Modelに直接書いている部分がある • ある程度整理しないと、Domain Model が境界を超えて肥大化するのでは • 暗黙的なところが辛くなる可能性はある。やめたくなったときにすんなりと いこうできるのか? • ある程度はクラスベースを維持しつつも不変性や単方向フローに寄らせるこ とはできそう 今後についての個人の感想
Copyright © Henry, Inc. All rights reserved. • 最近流行りの AI駆動開発だと、関数型、純粋関数に寄ったほうがよいので
は? • 実はコード量が少なく、文脈がある方がLLMもミスが少ない可能性 • 世の中のコードがOOPの方が多い説 おまけ
Copyright © Henry, Inc. All rights reserved. https://note.com/henry_app 会社ブログやってます We
are hiring!! https://henry.jp/ Thank you https://dev.henry.jp/ 技術ブログやってます