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
Java 使いのための Clojure 入門
Search
ayato
May 29, 2015
Programming
2
2.5k
Java 使いのための Clojure 入門
ayato
May 29, 2015
Tweet
Share
More Decks by ayato
See All by ayato
マイクロサービス内で動くAPIをF#で書いている
ayato0211
1
970
Clojureという言語が私逹にもたらしたもの
ayato0211
6
3.1k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
270
Re:REPL-Driven Development
ayato0211
3
1.3k
Meta Template Engine
ayato0211
2
1.1k
超変換! Hiccup data structure!!
ayato0211
2
620
About Integrant
ayato0211
0
570
Muscle Assert
ayato0211
0
280
Clojureを用いたWebアプリケーション開発
ayato0211
2
3.2k
Other Decks in Programming
See All in Programming
Nitro v3
kazupon
2
320
目的で駆動する、AI時代のアーキテクチャ設計 / purpose-driven-architecture
minodriven
10
3.3k
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.2k
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
340
Java_プロセスのメモリ監視の落とし穴_NMT_で見抜けない_glibc_キャッシュ問題_.pdf
ntt_dsol_java
0
230
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
160
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
600
詳細の決定を遅らせつつ実装を早くする
shimabox
2
1.3k
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
300
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
670
関数の挙動書き換える
takatofukui
4
750
Doc Translate - LLMを活用したコードドキュメント自動翻訳VSCode拡張機能
eycjur
0
110
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Building Applications with DynamoDB
mza
96
6.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Mobile First: as difficult as doing things right
swwweet
225
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
For a Future-Friendly Web
brad_frost
180
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
@_ayato_p l-JTQ͕͖Ͱ͔͢ʁͱฉ͔ΕͨΒʮ:FTʯͱ͑ΔͰ͠ΐ͏ɻ +BWB͕͖Ͱ͔͢ʁͱฉ͔ΕͨΒʮ/Pʯͱ͑ΔͰ͠ΐ͏ɻ ͚ͩͲɺ&NBDT͕͖Ͱ͔͢ʁͱฉ͔ΕͨΒʮ:FTʯͱ͑ΔͰ͠ΐ͏ɻz
+BWB͍ͷͨΊͷ $MPKVSFೖ !@BZBUP@Q ͋ͽʔ ୈेҰճौ୩KBWB
ͷ͜ͱ EFG@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU4DIFNF> CMPHl EFpOFBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^
ͷ͜ͱ EFG@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU4DIFNF> CMPHl EFpOFBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^ ͍͍ͩͨ$MPKVSFͷਓ
ौ୩+BWBॳ৺ऀͰ͢ w -5Ͱʮ$MPKVSFͷ͠·͢ʯͱॻ͍ͨΒԠื͕ ࡴ౸ͨ͠ ؾͷ͍ͤ w ืू։͔࢝Βܦͨͳ͍͏ͪʹิ͕ܽग़࢝ΊΔ ࣄ࣮
w ͖ͬͱΈΜͳ$MPKVSFͷΛฉ͖͍ͨͱࢥ͍ͬͯ ΔΜͩ צҧ͍ w -5ηογϣϯʹม͑·ͨ͠ ল͍ͯ͠Δ
ಥવͰ͕͢
2-JTQʹ͍ͭͯ Ͳ͏ࢥ͍ͬͯ·͔͢ʁ
-JTQʹର͢Δѱ͍Πϝʔδ w w ׅހͷ͕߹Θͳͯ͘σόοάʹҰ͔͔Δ w ຐज़ࢣຊΛಡ·ͳ͍ͱҰਓલͷ-JTQFSʹͳΕͳ͍ w -JTQΛॻ͘ͱϞςͳ͍
w ख़࿅-JTQFS͕ׅހΛ͛ͯ͘Δ w -JTQΛͬͯΔਓ಄͓͔͍͠
ݱ࣮ w w ۙతͳΤσΟλͷࢧԉ͋Γׅހʹෛ͚ͳ͍ w ຐज़ࢣຊίϯϐϡʔλʔαΠΤϯεͷຊ w -JTQΛॻ͘ͱϞςΔ
w -JTQίϛϡχςΟΏΔ;Θ w -JTQͬͯΔਓ಄͓͔͍͠
ݱ࣮ w ʜ w ۙతͳΤσΟλͷࢧԉ͋Γׅހʹෛ͚ͳ͍ w ຐज़ࢣຊίϯϐϡʔλʔαΠΤϯεͷຊ w -JTQΛॻ͘ͱϞςΔ
w -JTQίϛϡχςΟΏΔ;Θ w -JTQͬͯΔਓ಄͓͔͍͠ ˞ݸਓͷউखͳໝͰ͢
ݱ࣮ w w ۙతͳΤσΟλͷࢧԉ͋Γׅހʹෛ͚ͳ͍ w ຐज़ࢣຊίϯϐϡʔλʔαΠΤϯεͷຊ w -JTQΛॻ͘ͱϞςΔ
w -JTQίϛϡχςΟΏΔ;Θ w -JTQͬͯΔਓ಄͓͔͍͠
ࠓ͢Δ ςΩετΤσΟλΛ͍ͨ͘ͳ͍ਓͷͨΊͷ $MPKVSFೖํ๏ͷհ
ࠓ͠ͳ͍ w &ͳΜͱ͔ͱ͔7ͳΜͱ͔ͷ͍ํ w $MPKVSFͷݴޠతͳ w ϚΫϩͷ w -JTQ"MJFOͷ w
-FJOJOHFO#PPUͷ
$MPKVSFॻ͘ͷʹ ΘΕ͍ͯΔΤσΟλ
IUUQTDPHOJUFDUXVGPPDPNSFQPSUTTUBUFPGDMPKVSFSFTVMUT
IUUQTDPHOJUFDUXVGPPDPNSFQPSUTTUBUFPGDMPKVSFSFTVMUT
ੈքͰΘΕ͍ͯΔ ΤσΟλ
IUUQTUBDLPWFSqPXDPNSFTFBSDIEFWFMPQFSTVSWFZUFDIFEJUPS
IUUQTUBDLPWFSqPXDPNSFTFBSDIEFWFMPQFSTVSWFZUFDIFEJUPS
&NBDT͍ ઈ໓ةዧछ͡Όͳ͍Ͱ͔͢ʜ
ߟ͑ͨ
ੈքతʹ&NBDT͍ݮ͍ͬͯΔͣͳͷ ʹɺ$MPKVSFΛॻ͘ڥͱͯ͠&NBDT͕Ұ൪ ΘΕ͍ͯΔͷ͕$MPKVSF͕ྲྀߦΔͷΛअຐͯ͠ ͍ΔΜ͡Όͳ͍ͩΖ͏͔ʜ
μϝͳྫ $MPKVSFΖ͏Α
μϝͳྫ $MPKVSFΖ͏Α *%&͋Δ
μϝͳྫ $MPKVSFΖ͏Α *%&͋Δ &NBDT͑
μϝͳྫ $MPKVSFΖ͏Α *%&͋Δ &NBDT͑ ੈلͳͷʹ &NBDT͆͆͆
μϝͳྫ $MPKVSFΖ͏Α
μϝͳྫ $MPKVSFΖ͏Α *%&͑Δ
μϝͳྫ $MPKVSFΖ͏Α *%&͑Δ &NBDT*%&
μϝͳྫ $MPKVSFΖ͏Α *%&͑Δ &NBDT*%& ৸ݴ৸͔ͯΒݴͬͯ
μϝͳྫ $MPKVSFΖ͏Α *%&͑Δ &NBDT*%& ৸ݴ৸͔ͯΒݴͬͯ ˞&NBDTͰ͢
ྑ͍ྫ $MPKVSFΖ͏Α
ྑ͍ྫ $MPKVSFΖ͏Α *%&͋Δ
ྑ͍ྫ $MPKVSFΖ͏Α *%&͋Δ *OUFMMJ+*%&"͕͑ΔΑ
ྑ͍ྫ $MPKVSFΖ͏Α *%&͋Δ *OUFMMJ+*%&"͕͑ΔΑ ૉఢ๊͍ͯὑ
ྑ͍ྫ $MPKVSFΖ͏Α *%&͋Δ *OUFMMJ+*%&"͕͑ΔΑ ૉఢ๊͍ͯὑ ϞςΔ
IUUQTDPHOJUFDUXVGPPDPNSFQPSUTTUBUFPGDMPKVSFSFTVMUT
None
$VSTJWF w *OUFMMJ+*%&"ͷ$MPKVSF༻ϓϥάΠϯ w কདྷతʹ3VCZ.JOF1Z$IBSNΈ͍ͨʹಠཱ w -FJOJOHFOO3&1-࿈ܞ͕ग़དྷΔ w ͦΕ&ͳΜͱ͔ͰͰ͖ΔΑې۟
$VSTJWFͻͱΊ͙Γ
-FJOJOHFOϓϩδΣΫτ w 'JMF0QFOͰQSPKFDUDMK͕͋ΔϓϩδΣΫτ ͳΒ؆୯Πϯϙʔτ w ϚϧνϞδϡʔϧΛ͍ͬͯΔෳࡶͳϓϩδΣΫ τͷ߹*NQPSU1SPKFDUΛ͍·͢
-FJOJOHFOϓϩδΣΫτ -FJOJOHFOλεΫͷҰཡ
ΩʔόΠϯυ $VSTJWFಛ༗ͷΞΫγϣϯ ͱΩʔόΠϯυҰཡ
3&1- ϑΝΠϧͷࣜΛ 3&1-ͰධՁ 3&1-ʹࣜΛ ॻ͍ͯධՁ
3&1- 3FNPUF3&1-ͷଓ
σόοΨ ϒϨʔΫϙΠϯτͰͷ มͷࢀর͕ग़དྷΔ
ิ ᘳͳิػೳ
ϦωʔϜ ಉ໊ͷؔͳ͍ γϯϘϧΛר͖ࠐ·ͳ͍
ςετ ςετͷ࣮ߦ͕؆୯
ͦͷଞ w γϯλοΫεϋΠϥΠτ w γϯϘϧؒδϟϯϓ w ؔੜ w +BWBͱͷซ༻͕༰қ w
ߏతฤू w ίʔυϑΥʔϚοτ w ϚΫϩల։ w FUD
EFNP
w ίʔυϑΥʔϚοτ͕গ͠ඍົ w ΩʔόΠϯυ͕ඍົ ͤΊͯετϩʔΫʜ w $-+4ͷαϙʔτ͕ͪΐͬͱ·ͩΓͯͳ͍ w
ϥΠϒϥϦͷίʔυΛॻ͖͑ͯධՁͰ͖ͳ͍ w ࣌ʑॏ͍ w ۃكʹڍಈ͕͓͔͍͠ ։ൃதͳͷͰํͳ͍
࠷ޙʹ w $MPKVSF͕&NBDT͡Όͳ͍ͱμϝͳ࣌ऴΘͬͨ w +BWBϢʔβʔخ͍͠*OUFMMJ+*%&"Ͱॻ͚Δ w $MPKVSFΛॻ͖·͠ΐ͏ w $VSTJWFͷຊޠυΩϡϝϯτॻ͍͍ͯ·͢ ਐߦத
w IUUQBZBUPHJUIVCJPDMPKVSFCFHJOOFS HFUUJOH@TUBSUFEJOUFMMJK@XJUI@DVSTJWFIUNM
͋ͳͨͱ$MPKVSF ࠓ͙͢μϯϩʔυ