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
890
型で語るカタ
関ジャバ'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
330
複数アプリケーションを育てていくための共通化戦略
irof
10
4.6k
SpringBootにおけるオブザーバビリティのなにか
irof
1
1k
Javaアプリケーションモニタリングの基本
irof
7
2.7k
Webアプリケーションを作りましょう
irof
0
150
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
6.3k
バッチを作らなきゃとなったときに考えること
irof
2
800
SpringBoot3.4の構造化ログ #kanjava
irof
3
1.4k
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
12
5.3k
Other Decks in Programming
See All in Programming
decksh - a little language for decks
ajstarks
4
21k
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
フロントエンドのパフォーマンスチューニング
koukimiura
6
2.3k
Advanced Micro Frontends: Multi Version/ Framework Scenarios
manfredsteyer
PRO
0
120
What's new in AppKit on macOS 26
1024jp
0
180
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
210
新世界の理解
koriym
0
100
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
760
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
490
Android 15以上でPDFのテキスト検索を爆速開発!
tonionagauzzi
0
180
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
250
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
860
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Pragmatic Product Professional
lauravandoore
35
6.8k
It's Worth the Effort
3n
185
28k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
How GitHub (no longer) Works
holman
314
140k
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