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
500
Muscle Assert
ayato0211
0
220
Clojureを用いたWebアプリケーション開発
ayato0211
2
3k
翻訳にまつわるエトセトラ
ayato0211
6
1.2k
Other Decks in Programming
See All in Programming
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
130
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
770
Refactor your code - refactor yourself
xosofox
1
260
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
200
return文におけるstd::moveについて
onihusube
1
1.1k
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
MCP with Cloudflare Workers
yusukebe
2
220
たのしいparse.y
ydah
3
120
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
110
useSyncExternalStoreを使いまくる
ssssota
6
1k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Unsuck your backbone
ammeep
669
57k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Faster Mobile Websites
deanohume
305
30k
Designing for Performance
lara
604
68k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Statistics for Hackers
jakevdp
796
220k
Making Projects Easy
brettharned
116
5.9k
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