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
ネタじゃない ClojureScript
Search
ayato
July 30, 2015
Programming
3
1k
ネタじゃない ClojureScript
ayato
July 30, 2015
Tweet
Share
More Decks by ayato
See All by ayato
Clojureという言語が私逹にもたらしたもの
ayato0211
6
2.9k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
230
Re:REPL-Driven Development
ayato0211
3
1.2k
Meta Template Engine
ayato0211
2
1k
超変換! Hiccup data structure!!
ayato0211
2
560
About Integrant
ayato0211
0
510
Muscle Assert
ayato0211
0
230
Clojureを用いたWebアプリケーション開発
ayato0211
2
3k
翻訳にまつわるエトセトラ
ayato0211
6
1.2k
Other Decks in Programming
See All in Programming
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
370
HTML/CSS超絶浅い説明
yuki0329
0
190
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
140
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
200
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
950
functionalなアプローチで動的要素を排除する
ryopeko
1
210
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
420
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
We Have a Design System, Now What?
morganepeng
51
7.3k
Fireside Chat
paigeccino
34
3.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
3
180
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
It's Worth the Effort
3n
183
28k
How STYLIGHT went responsive
nonsquared
96
5.3k
Designing for Performance
lara
604
68k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Transcript
ωλ͡Όͳ͍ $MPKVSF4DSJQU !@BZBUP@Q ୈेೋճौ୩KBWB
EFG!@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU> CMPHl EFGBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^ ͷ͜ͱ
EFG!@BZBUP@Q \OBNFl͋ͽʔz MBOH<$MPKVSF3VCZ+BWB4DSJQU> CMPHl EFGBZBMPHb z DPNQBOZl$ZCP[V4UBSUVQT *ODz^ ͷ͜ͱ ͍͍ͩͨ$MPKVSFͷਓ
લճͷ͓͞Β͍ ୈेҰճौ୩KBWB
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT ʢʀƅЧƅʣʜʂʁ
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT ͭш㱬 ŠƄŢŠƄŢ
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT ʢʀƅЧƅʣʜʂʁ
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT ौ୩l+BWBz͚ͩͲ
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT "MU+4ͷͯ͠ ྑͦ͞͏
IUUQXXXTMJEFTIBSFOFUUBLF[PFTDBMBKT ωλ͡Όͳ͍ $MPKVSF4DSJQU ͷ͠·͢
ωλ͡Όͳ͍ $MPKVSF4DSJQU !@BZBUP@Q ୈेೋճौ୩KBWB
w $MPKVSF4DSJQUͱ w $MPKVSF4DSJQUͷ࣮༻తͳͱ͜ w $MPKVSF4DSJQUͷ࢝Ίํ w $MPKVSF4DSJQUͷඍົͳͱ͜ w ͓·͚
࣍
$MPKVSF4DSJQUͱ
w +BWB4DSJQUͱίϯύΠϧ͞Ε w /PEFKT্Ͱಈ͘ w $MPKVSFͱ΄΅ಉ͡ಛΛ࣋ͭ w $MPKVSF $MPKVSF4DSJQUͱ w
ಋೖاۀྫ w "E[FSL w $JSDMF$* w $JTDP w F#BZ w FUD w ($$Ͱ࠷దԽ͞Εͨ+4Λు͖ग़͢ 4UVBSU4JFSSB -VLF7BOEFS)BSUl$MPKVSF4DSJQU6QBOE3VOOJOHz
w "MU+4ͱ͍͏ΑΓ$MPKVSF͕ಈ͘ϓϥοτϑΥʔϜ ͷͻͱͭͱͯ͠+BWB4DSJQU͕͋Δɺͱ͍͏΄͏͕ͬ͠ ͘Γ͘Δ ؾ͕͢Δ w (PPHMF$MPTVSF$PNQJMFS͕ؤுͬͯ͘ΕΔͷͰͦ ΕͳΓʹύϑΥʔϚϯε͕ྑ͍ w
$JSDMF$*Ͱར༻͞Ε͍ͯͯͨ·ʹΛूΊΔ $MPKVSF4DSJQUͱ
$MPKVSF4DSJQU ͷ࣮༻తͳͱ͜
w -JTQͱ͔*NNVUBCMFͱ͔$PODVSSFODZͱ͔ ޠΓਚ͘͞Ε͍ͯΔ $MPKVSF4DSJQU Ͱ͍͍ͩͨ $MPKVSFͱಉ͡ w ͷͰɺͬͱ࣮༻తͳ෦Λհ͠·͢ $MPKVSF4DSJQUͷ࣮༻తͳͱ͜
IUUQXXXTMJEFTIBSFOFULBXBTJNBTIJCVZBKWNDMPKVSF
w વ͚ͩͲ+BWB4DSJQUͷݺͼग़͕͠ग़དྷΔ w ͱ͍͑ɺؾ࣋ͪѱ͍ͷͰ$-+4+4ͱ͍͏औΓ Έ͕͋ͬͨΓ͢Δ +BWB4DSJQUJOUFSPQ
+BWB4DSJQUJOUFSPQ MPHKTDPOTPMFl)FMMP $MPKVSF4DSJQUz
w 3&1- 3FBEFWBMQSJOUMPPQ Λ$MPKVSF4DSJQU Ͱ͑Δ w Ճ͑ͯ3&1-Λϒϥβͱଓग़དྷΔ w ͭ·Γ
w 3&1-͔Β%0.Λૢ࡞ग़དྷΔ #SPXTFS3&1-
#SPXTFS3&1- w ্͕&NBDT্ͷίʔυ w Լ͕'JSF'PYͷίϯιʔϧ
w ϑΝΠϧͷมߋΛݕͯࣗ͠ಈతʹϦϩʔυ w ͨͩ͠ɺϒϥβͷϦϑϨογϡͰͳ͍ ॏཁ w ಈతʹมߋΛಡΈࠐΉ w MFJOpHXIFFM
CPPUSFMPBEͳͲ -JWFDPEFSFMPBEJOH
-JWFDPEFSFMPBEJOH w ӈpHXIFFMΛͬͨ ։ൃ෩ܠ w ܯࠂΤϥʔݟ͢ ͘ग़ͯ͘Δ w ࣗಈతʹมߋΛద༻͠ ͯͦͷը໘ͷॳظঢ়ଶ
͔Β࠶࣮ߦ w ෭࡞༻ܥੵ͞ΕΔ
w ϓϥοτϑΥʔϜؒͰಉҰίʔυΛ͑ΔΑ͏ʹ ͢ΔΈ $MPKVSF͔Β w ڈ͞ΕͨϦʔμʔϚΫϩʹΑ࣮ͬͯݱ͞ΕΔ $MPKVSFͰUBHHFEMJUFSBMTͱ͍͏७ਮͳϦʔμʔϚΫϩͰͳ͍ͷ 3FBEFS$POEJUJPOBMT IUUQTTQFBLFSEFDLDPNBZBUPSFBEFSDPOEJUJPOBMT
3FBEFS$POEJUJPOBMT OTFYBNQMFDPSF SFRVJSF ! DMK<<GPPCBSBTCBS>> DMKT<<IPHFGVHBBTGVHB> <UBUBUJUJBTUJUJ>> EFGOTUSJOU<Y>
DMK *OUFHFSQBSTF*OUY DMKT QBSTF*OUKTXJOEPXY
w 0N 3FBHFOU 2VJFTDFOU 3VNͳͲͱ։ൃ͕׆ൃ w ϚΠΫϩϕϯνϚʔΫͰૉͷ3FBDUΑΓૣ͍ͱ ݴΘΕ͍ͯΔ w ݸਓతʹ3FBHFOUSFGSBNFͷΈ߹Θ͕ͤ࠷ߴ
3FBDU8SBQQFST
EFGOIVOHSZDPNQPOFOU<> MFU<UJNF TVCTDSJCF<UJNF> > XIFO MVODIUJNF UJNF
<I*NIVOHSZ> 3FBDU8SBQQFST w ӈͷίʔυล3FBHFOUSF GSBNFͰॻ͍ͨྫ w )5.-ΛIJDDVQͷه๏Ͱॻ͚ Δ w ͭ·Γɺ$MPKVSFͷσʔλߏ Ͱॻ͚Δ w +49Έ͍ͨͳؾ࣋ͪѱ͕͞ͳ͍
w $MPKVSF4DSJQUࣗͰॻ͚ͳ͍͚Ͳ͑Δ w ϚΫϩࣗମΛݏ͏ਓଟ͍͕ͳίʔυΛ ͘͢Δͷʹʹཱͭ .BDSPT
.BDSPT OTDMKTEFNPDPSF SFRVJSFNBDSPT<SFBHFOUSBUPNSFGFS<SFBDUJPO>> SFRVJSF<TDIFNBDPSFBTTJODMVEFNBDSPTUSVF> <SFBHFOUDPSFBTSFBHFOU> <SFGSBNFDPSFSFGFS<SFHJTUFSIBOEMFS QBUI
SFHJTUFSTVC EJTQBUDI EJTQBUDITZOD TVCTDSJCF>>
$MPKVSF4DSJQU ͷ࢝Ίํ
w ΤσΟλ w &NBDT7JN*OUFMMJ+*%&"FUDͲΕͰ0, ॳ৺ऀʹ*%&" $VSTJWFΛનΊ͍ͯ·͢ w Ϗϧυπʔϧ w
-FJOJOHFO#PPU ࡉ͔͍Λ͢Δͱ৭ʑͱ໘͍͚͘͞Ͳ࠷ۙ#PPUͰྑͦ͞͏ $MPKVSF4DSJQUͷ࢝Ίํ
w -JHIU5BCMF࠷ۙԼՐؾຯ w $VSTJWFσόοάػೳ͕ಛʹ༏ल w ࠓ࠷Ως͍Δ$MPKVSF༻*%& w IUUQTDVSTJWFDMPKVSFDPN *OUFMMJ+*%&" $VSTJWF
IUUQTTQFBLFSEFDLDPNBZBUPKBWBTIJJGBMTFUBNFGBMTFDMPKVSFSVNFO
w -FJOJOHFOͰग़ͯ͘ΔॾॴͷΛղফ͢Δͨ Ίʹ࡞ΒΕͨπʔϧ w -FJOJOHFOͷ։ൃ͕ԼՐͳத#PPUίϛϡχςΟ ͍ w IUUQTHJUIVCDPNCPPUDMKCPPU #PPU
w $MPKVSF4DSJQU8FC3&1- ৭ʑΠϯετʔϧͨ͘͠ͳ͍͚Ͳڵຯ͋Δਓ͚ IUUQDMPKVSFTDSJQUOFU w $MPKVSF4DSJQU,PBOT $MPKVSF,PBOTͷ$MPKVSF4DSJQU൛ɺϒϥβ͚ͩͰֶΔ IUUQDMPKVSFTDSJQULPBOTDPN $MPKVSF4DSJQUΛษڧ͢Δ
w -FJOJOHFO͏ͳΒDIFTUOVUςϯϓϨʔτ͕ྑͦ͞ ͏ ৭ʑόʔδϣϯ͍͚Ͳʜ IUUQTHJUIVCDPNQMFYVTDIFTUOVU w #PPU͏ͳΒCPPUDMKTFYBNQMFΛDMPOFͯ͠ΈΔ IUUQTHJUIVCDPNBE[FSLPTTCPPUDMKTFYBNQMF $MPKVSF4DSJQUΛ࢝ΊΔ
IUUQXXXTMJEFTIBSFOFUTPIUBDMPKVSFTDSJQU
$MPKVSF4DSJQU ͷඍົͳͱ͜
$MPKVSF4DSJQU ͷඍົͳͱ͜ ͋ΔΘ͚͕ͳ͍
w ίϯύΠϧʹ+BWB͕ඞཁͳͱ͜Ζ w ࠷ॳͷίϯύΠϧʹ΄Μͷগ͕͔͔࣌ؒ͠Δ w ίϯύΠϧޙͷϑΝΠϧαΠζ͕ͪΐͬ͜ͱ͓ $MPKVSF4DSJQUͷඍົͳͱ͜
͓·͚
w ࠷ۙηϧϑϗεςΟϯά͞ΕΔΑ͏ʹͳͬͨͷͰɺ ϒϥβ্Ͱ$MPKVSF4DSJQUΛίϯύΠϧग़དྷΔ IUUQTXBOOPEFUUFHJUIVCJPDMPKVSFTDSJQU w J1IPOF "OESPJEΞϓϦ͋ΔΑ J1IPOFIUUQTJUVOFTBQQMFDPNVTBQQSFQMFUFJE "OESPJEIUUQTHJUIVCDPNUBINJETBEJL3FQMJDBUPS ͓·͚
0OFNPSFUIJOH
͓͍ͰΑ$MPKVSFίϛϡχςΟ IUUQTDMPKVSJBOTUZQFGPSNDPNUPC*/W ຊਓ͕ࢁ͍ΔͷDMPKVSFKBQBOͰ͢
&OKPZ$MPKVSF