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.4k
Java 使いのための Clojure 入門
ayato
May 29, 2015
Tweet
Share
More Decks by ayato
See All by ayato
Clojureという言語が私逹にもたらしたもの
ayato0211
6
3k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
240
Re:REPL-Driven Development
ayato0211
3
1.2k
Meta Template Engine
ayato0211
2
1.1k
超変換! Hiccup data structure!!
ayato0211
2
570
About Integrant
ayato0211
0
520
Muscle Assert
ayato0211
0
240
Clojureを用いたWebアプリケーション開発
ayato0211
2
3k
翻訳にまつわるエトセトラ
ayato0211
6
1.2k
Other Decks in Programming
See All in Programming
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
210
Learning Kotlin with detekt
inouehi
1
210
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
56
18k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.6k
クックパッド検索システム統合/Cookpad Search System Consolidation
giga811
0
160
From the Wild into the Clouds - Laravel Meetup Talk
neverything
0
190
SwiftUI Viewの責務分離
elmetal
PRO
2
280
CloudRun, Spanner に対する負荷試験の反省と オブザーバビリティによるアプローチ
oyasumipants
1
180
技術を改善し続ける
gumioji
0
180
AIプログラミング雑キャッチアップ
yuheinakasaka
20
5.3k
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
nealle
2
790
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
11
540
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Practical Orchestrator
shlominoach
186
10k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Done Done
chrislema
182
16k
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 ࠓ͙͢μϯϩʔυ