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
Vavrコレクションの紹介 〜 Javaでより安全で楽な関数型プログラミング〜
Search
Shota Sada
June 08, 2025
0
36
Vavrコレクションの紹介 〜 Javaでより安全で楽な関数型プログラミング〜
JJUG CCC 2025春の交流会LTで発表した資料です
Shota Sada
June 08, 2025
Tweet
Share
Featured
See All Featured
Amusing Abliteration
ianozsvald
0
110
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
190
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
The browser strikes back
jonoalderson
0
430
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
My Coaching Mixtape
mlcsv
0
52
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
110
Building an army of robots
kneath
306
46k
Transcript
Vavrコレクションの紹介 〜 Javaでより安全で楽な関数型プログラミング〜 JJUG CCC 2025 Spring 交流会LT さだ(@sada_ft)
自己紹介 • さだ(@sada_ft) • ユーザー系IT企業勤務(新卒2年目) • フロント(TS/React) • バック(Java/Spring Boot)
• 初LTです!
こんなことありませんか? • うっかりMutableな引数を渡してしまった 処理中に別スレッドから data.add(“邪魔者”);
こんなことありませんか? • stream噛ませて、最後に終端操作、、、 素晴らしい機能だが、ちょっとめんどくさい • できれば戻り値もイミュータブルにしたい
そこで今回紹介するライブラリが、、、
Vavr • デフォルトで イミュータブル • 関数型プログラミングをサポート • 発音はヴァヴル・ヴェイヴァーかと思ったが、 ヴェイヴっぽい(/ˈveɪ.vɚ/)
None
コードで見る不変性 常に新しい イミュータブルリスト が帰ってくる!
メモリ効率の工夫
シンプルな関数型プログラミング体験 Stream化・終端操作 が不要
パフォーマンス比較
まとめ • 安全なコードを書きたいなら Vavrは便利! • Javaの標準に比べるとパフォーマンスが落ちるが、 バグを未然に防げるのはうれしい (Map、Setもいい感じ) • デメリット
• 標準コレクションとごっちゃになりそう (チーム開発で使う場合は何かしらのご配慮を) 公式:https://vavr.io/