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
型で語るカタ
Search
irof
July 11, 2025
Programming
2
1.5k
型で語るカタ
関ジャバ'25 7月度
https://kanjava.connpass.com/event/360931/
20分程度のセッションです。
irof
July 11, 2025
Tweet
Share
More Decks by irof
See All by irof
視座の上げ方
irof
1
71
アーキテクチャと考える迷子にならない開発者テスト
irof
10
3.9k
技術的負債の正体を知って向き合う
irof
0
780
関ジャバと言う場
irof
0
220
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
440
複数アプリケーションを育てていくための共通化戦略
irof
9
5.3k
SpringBootにおけるオブザーバビリティのなにか
irof
1
1.3k
Javaアプリケーションモニタリングの基本
irof
7
2.9k
Webアプリケーションを作りましょう
irof
0
230
Other Decks in Programming
See All in Programming
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
CSC307 Lecture 05
javiergs
PRO
0
490
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
460
CSC307 Lecture 01
javiergs
PRO
0
680
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
590
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
190
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
680
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.7k
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
370
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
12
6.4k
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
Vibe codingでおすすめの言語と開発手法
uyuki234
0
220
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
1
1.6k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
910
The Spectacular Lies of Maps
axbom
PRO
1
510
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
120
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
96
WCS-LA-2024
lcolladotor
0
440
New Earth Scene 8
popppiees
1
1.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
WENDY [Excerpt]
tessaabrams
9
36k
A designer walks into a library…
pauljervisheath
210
24k
The Cult of Friendly URLs
andyhume
79
6.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Transcript
型 語 関 '25 7 月 度 @irof
前置  2
型 話 型 話 正直 思 役 立 型 言
言 葉 自 体 広 意味 持 焦点 合  3
型 話 型 扱 型 型 各部分 計算 値 種類
分類 種 振 舞 起 保証 計算量的 扱 構文 的 手 法 -- TaPL 型 話 型 前提 多 型 勢 人 ձ話 際 必ਢ知識  4
型 is ... 軽量 形式 手 法 振 舞 制御
制約 前提 機能 型 活用 言 語機能 言 語 機能 使 型 創 型設計  5
Kata 武道 CodeKata 開発文脈 使 最ۙ 聞 型 活用 見
方 ײ 1 ≒  6
型 検出 抽象Խ Խ 言 語 安全性 効率性  7
7原則 型 全数 不可能 型 制約 範囲 全数 可能 可能
範囲 少 広 早期 時間 節約 型 検査 時 実装後 動作検証 早期 確実 行  8
型 語  9
型 語 զʑ 語 手 段 語 際 型 使
ײ 話 型 扱 型 限 広ٛ 型 話 ؚ  10
語 相 手 向 語 人 向 語 本 主
話  11
語 Java標準 1 var ... 設計 1 関連 名前 ...
 12
1  13 Grok 突 込 作 画像
1  14
1 語 人 向 : null 入 否 向 :
効率性 …… 語 ʁ  15
1 語 null 入 否 1 語 微妙 ׳習的 読
取 得 語 読 取 場合 int -> Integer OptionalInt 使 明 示 的 聞 型 語 双方׳ 導入 悩  16
null 話 Optional 話 飛 被 省略  17
 18
 19 https://docs.oracle.com/javase/jp/21/core/creating-sequenced-collections-sets-and-maps.html
語  20 Collection: 集合 Set: 重複 List: 順序 詳
CollectionsFramework Javadoc読
語  21 集合 常 順序 重複ڐ容 期待 List 十
分 多 私 …… 順序未定ٛ List 使 避 Կ順 ʁ 探 未定ٛ Set List Collection 使
参考: JIG ADR  22 https://github.com/dddjava/jig/blob/main/docs/adr/collections-usage.md 一般的 自 分 思
規則 形式Խ
発展: Java 限 標準 集合 語 使 扱 要素 語
程度 歴史的経緯 実 行 時例外 操作 静的型検査 機能 操作 限定 集合ԋ算 追Ճ 対 興味 持 語  23
語 要素数0以上 以上 重要 使 側 要素 関 興味 要素選択
要素 一 一 興味 特定 条件 満 1 要素 興味 or 要素 集合 興味 要素 興味 設計 …… 他 色 ʑ  24
共通 EventId 対 EventIds 作 文脈 異 AllEventIds FutureEventIds 色
ʑ作 片方 統一  25
var  26
var 変数 変数型 書 勝 手 解決 仕組  27
var 語 変数 型 興味 右辺 十 分語 変数名 十
分語 本当 知 必要  28
var  29 同 var ArrayList<String> 私 思想 行 左側
一等地 上 選 最ۙArrayList new 自 体 見
右辺 var  30
右辺 var  31
var 書 ʁ var jshell 普段 IDE *常 右辺 変数宣
言 生 成 * ק 際 var IDE 設定  32
var 語 var 削減 技術 同時 有用 情報量 削減 注意
強制 型情報 lambda 宣 言 右辺 場 合 表現 右辺 型 示 変数名 右辺 型 示 型 知 必要 扱  33
enum, sealed 他 被 思 省略 switch 抜ṅ switch使 新
追Ճ 既存 Ԇ長 Optional 系 扱 型 活用 余白 書 ڱ  34
1  35
1 語 不変 型 示 動的 状態 相 手 動作
予測可能性 向 上 予想外 動作 不具合 減 変更 実務的 実質的 1 十 分 完全 1  36
 37
語 値 取 範囲 ۀ務 扱 数値 int 大抵 場合
過剰 場合 21ԯ 扱 場合 short 話 Always-Valid domain model 1  38
関連  39
関連 語 扱 間 関連 型 語 型 関連 関連
方向 語  40
関連 語 出ՙ 受注 作 出ՙ static 出ՙ from(受注) 受注
出ՙ 変換 受注 to出ՙ() 受注 出ՙ 無関係 …… 型 関連 語  41
実務 関連 語 ؚ 型 関連 語 細ʑ 全体 語
ڑ離 程度固 関連 語 良 JIG 使  42 https://github.com/dddjava/jig
名前  43
名前 型 語 上 名前 大事 命名 設計 名前 㚽
語 名前 一発 命名 技術 身  44
紹介: Naming as a Process  45 https://www.digdeeproots.com/articles/naming-process/ 1 話
大体書 読
 46
型  47