Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
脱★JSON色付け係
Search
Watanabe Jin
January 30, 2026
Programming
190
0
Share
脱★JSON色付け係
Watanabe Jin
January 30, 2026
More Decks by Watanabe Jin
See All by Watanabe Jin
シン・リスコフの置換原則 〜現代風に考えるSOLIDの原則〜
jinwatanabe
0
130
ソフトウェアを 「道具」にする技術 〜OOUIとAIが交差するフロントエンドのドメインモデリング〜
jinwatanabe
0
120
キーフレーズ抽出手法「SIFRank」について
jinwatanabe
0
800
Other Decks in Programming
See All in Programming
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
810
Coding as Prompting Since 2025
ragingwind
0
730
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
540
安いハードウェアでVulkan
fadis
1
910
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
120
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
500
おれのAgentic Coding 2026/03
tsukasagr
1
130
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
230
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
220
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
170
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.8k
How STYLIGHT went responsive
nonsquared
100
6k
KATA
mclloyd
PRO
35
15k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
700
For a Future-Friendly Web
brad_frost
183
10k
Claude Code のすすめ
schroneko
67
220k
Designing for Performance
lara
611
70k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
470
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
170
A designer walks into a library…
pauljervisheath
211
24k
Transcript
脱★JSON色付け係 わたなべじん
とあるところに重要人物の言及がありました
品質向上で人物名の構造が変わりました
HTML上で文字列結合しようとするドライバー それは絶対だめだ!と叫ぶナビゲーター
フロントエンドのドメインについて 考え方がサーバーと混ざってしまってない?
脱★JSON色付け係
そもそもドメインとはなにか?
すべてのソフトウェアプログラムは、 使用するユーザの何らかの活動や関心と関係がある。 ユーザがプログラムを適用する対象領域が、 ソフトウェアのドメインである。
フロントエンドにおける 「ユーザーの何らかの活動や関心」とはなんだろう
当時のコンピュータは、文字を動かすだけでも複雑なコマンドや「モード」の切り替えが必 須で、専門家にとっても手間のかかる「特殊な操作」でした。ラリー・テスラーはこの不便さ を解消し、現実世界のハサミと糊のように誰もが直感的に行える「当たり前の動作」として 編集作業を再定義しました。 彼がその成果を披露した際、歴史的な場面が訪れます。ラリーがいつものカット・アンド・ ペーストをやったとき、突然ピーター・ドゥイッチが立ち上がって、 スクリーンを指さして叫んだ。 「今やったのは、やったんじゃないかと俺が思ってることか?」 ドゥイッチが衝撃を受けたのは、かつては苦労した操作が「ユーザーがこうしたいと意図し た通り」に、一瞬で完了したその魔法のような簡潔さにあったのです。
『未来をつくった人々』の Chapter 15要約
フロントエンドのドメインはユーザーが 「した」と思ったことを、画面に「表す」こと
つまり「操作」と「表示」
サーバーサイドのドメインは ビジネス(業務)ロジック ビジネスロジックはフロントエンドには「ない」
フロントエンド開発中は ビジネスロジックという言葉は使われない サーバー感覚でやるとドメインを見失う
我々はJSON色付け係ではない
フロントエンド開発中は ビジネスロジックという言葉は使われない サーバー感覚でやるとドメインを見失う
HTML上で文字列結合しようとするドライバー
None
Viewはユーザーに何を示すのかに注力する
None
ドメインオブジェクトはあくまで「このデータは今 『エラー状態』である」という業務上の判断(意味) だけを返し、それをどう装飾するかはViewが決め るので下はNG
None
フロントエンドの多くは「画面設計」に注力されがちだが 「ソフトウェア設計」も大切にしよう
参考文献 WEBフロントエンドにおけるソフトウェア設計の考察 現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法 エリック・エヴァンスのドメイン駆動設計 未来をつくった人々: ゼロックス・パロアルト研究所とコンピュータエイジの黎明