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
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
脱★JSON色付け係
Watanabe Jin
January 30, 2026
More Decks by Watanabe Jin
See All by Watanabe Jin
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
290
レンタル移籍のすゝめ | カオスエンジニアリングを人に適応する
jinwatanabe
0
34
シン・リスコフの置換原則 〜現代風に考えるSOLIDの原則〜
jinwatanabe
0
360
ソフトウェアを 「道具」にする技術 〜OOUIとAIが交差するフロントエンドのドメインモデリング〜
jinwatanabe
0
250
キーフレーズ抽出手法「SIFRank」について
jinwatanabe
0
820
Other Decks in Programming
See All in Programming
1B+ /day規模のログを管理する技術
broadleaf
0
120
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.8k
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
210
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.5k
スマートグラスで並列バイブコーディング
hyshu
0
270
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.4k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
320
The NotImplementedError Problem in Ruby
koic
1
980
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
120
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
260
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
7.1k
Featured
See All Featured
HDC tutorial
michielstock
2
720
Deep Space Network (abreviated)
tonyrice
0
220
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
450
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
Making Projects Easy
brettharned
120
6.7k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
Everyday Curiosity
cassininazir
0
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Transcript
脱★JSON色付け係 わたなべじん
とあるところに重要人物の言及がありました
品質向上で人物名の構造が変わりました
HTML上で文字列結合しようとするドライバー それは絶対だめだ!と叫ぶナビゲーター
フロントエンドのドメインについて 考え方がサーバーと混ざってしまってない?
脱★JSON色付け係
そもそもドメインとはなにか?
すべてのソフトウェアプログラムは、 使用するユーザの何らかの活動や関心と関係がある。 ユーザがプログラムを適用する対象領域が、 ソフトウェアのドメインである。
フロントエンドにおける 「ユーザーの何らかの活動や関心」とはなんだろう
当時のコンピュータは、文字を動かすだけでも複雑なコマンドや「モード」の切り替えが必 須で、専門家にとっても手間のかかる「特殊な操作」でした。ラリー・テスラーはこの不便さ を解消し、現実世界のハサミと糊のように誰もが直感的に行える「当たり前の動作」として 編集作業を再定義しました。 彼がその成果を披露した際、歴史的な場面が訪れます。ラリーがいつものカット・アンド・ ペーストをやったとき、突然ピーター・ドゥイッチが立ち上がって、 スクリーンを指さして叫んだ。 「今やったのは、やったんじゃないかと俺が思ってることか?」 ドゥイッチが衝撃を受けたのは、かつては苦労した操作が「ユーザーがこうしたいと意図し た通り」に、一瞬で完了したその魔法のような簡潔さにあったのです。
『未来をつくった人々』の Chapter 15要約
フロントエンドのドメインはユーザーが 「した」と思ったことを、画面に「表す」こと
つまり「操作」と「表示」
サーバーサイドのドメインは ビジネス(業務)ロジック ビジネスロジックはフロントエンドには「ない」
フロントエンド開発中は ビジネスロジックという言葉は使われない サーバー感覚でやるとドメインを見失う
我々はJSON色付け係ではない
フロントエンド開発中は ビジネスロジックという言葉は使われない サーバー感覚でやるとドメインを見失う
HTML上で文字列結合しようとするドライバー
None
Viewはユーザーに何を示すのかに注力する
None
ドメインオブジェクトはあくまで「このデータは今 『エラー状態』である」という業務上の判断(意味) だけを返し、それをどう装飾するかはViewが決め るので下はNG
None
フロントエンドの多くは「画面設計」に注力されがちだが 「ソフトウェア設計」も大切にしよう
参考文献 WEBフロントエンドにおけるソフトウェア設計の考察 現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法 エリック・エヴァンスのドメイン駆動設計 未来をつくった人々: ゼロックス・パロアルト研究所とコンピュータエイジの黎明