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.4k
型で語るカタ
関ジャバ'25 7月度
https://kanjava.connpass.com/event/360931/
20分程度のセッションです。
irof
July 11, 2025
Tweet
Share
More Decks by irof
See All by irof
技術的負債の正体を知って向き合う
irof
0
220
関ジャバと言う場
irof
0
79
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
370
複数アプリケーションを育てていくための共通化戦略
irof
9
5k
SpringBootにおけるオブザーバビリティのなにか
irof
1
1.1k
Javaアプリケーションモニタリングの基本
irof
7
2.7k
Webアプリケーションを作りましょう
irof
0
200
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
6.7k
バッチを作らなきゃとなったときに考えること
irof
2
870
Other Decks in Programming
See All in Programming
AI Agent 時代的開發者生存指南
eddie
4
2k
ALL CODE BASE ARE BELONG TO STUDY
uzulla
27
6.6k
XP, Testing and ninja testing ZOZ5
m_seki
3
790
なぜGoのジェネリクスはこの形なのか? - Featherweight Goが明かす設計の核心
qualiarts
0
230
AkarengaLT vol.38
hashimoto_kei
1
110
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
230
理論と実務のギャップを超える
eycjur
0
170
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
200
Google Opalで使える37のライブラリ
mickey_kubo
3
130
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
230
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
240
PHPに関数型の魂を宿す〜PHP 8.5 で実現する堅牢なコードとは〜 #phpcon_hiroshima / phpcon-hiroshima-2025
shogogg
1
320
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
KATA
mclloyd
PRO
32
15k
Code Reviewing Like a Champion
maltzj
526
40k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Navigating Team Friction
lara
190
15k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
A better future with KSS
kneath
239
18k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
YesSQL, Process and Tooling at Scale
rocio
173
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
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