Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Clojure Cup for Xcoo, Inc.

Takashi AOKI
October 10, 2014

Clojure Cup for Xcoo, Inc.

2014/10/10 第1回Clojure夜会 セッション3
「2日ガチ開発合宿で作った
Webアプリケーション2選」の資料です。

- ClojureCupの紹介
- ClojureCupで開発したアプリケーション2つ(news.async/AstroCats)

内容はClojureの初心者に向けた解説です。

Takashi AOKI

October 10, 2014
Tweet

Other Decks in Programming

Transcript

  1. ೔Ψν։ൃ߹॓Ͱ࡞ͬͨ

    8FCΞϓϦέʔγϣϯબ
    גࣜձࣾςϯΫʔ 9DPP *OD

    1

    View full-size slide

  2. ࣗݾ঺հ
    2
    ੨໦و࢘
    !GFEFSLBTUFO
    גࣜձࣾςϯΫʔ 9DPP *OD

    $PGPVOEFS
    ஛಺ढ़و
    !UPUBLLF
    גࣜձࣾςϯΫʔ 9DPP *OD

    $SFBUJWF3FTFBSDIFS

    View full-size slide

  3. גࣜձࣾςϯΫʔͷ঺հ
    w IUUQTYDPPKQ
    w ઃཱ
    w $MPKVSFΛϝΠϯʹγεςϜ։ൃ
    w ݚڀऀ޲͚ήϊϜղੳɾՄࢹԽαʔϏε$ISPWJT ΫϩϏε

    3
    Λ$MPKVSFͰ࣮૷͍ͯ͠·͢ʂ

    View full-size slide

  4. 4
    ೔Ψν։ൃ߹॓
    $MPKVSF$VQ
    !
    $MPKVSFͷࠃࡍϓϩάϥϛϯάϋοΧιϯ
    ࣌ؒͰ8FCΞϓϦέʔγϣϯΛͭ࡞Δ

    View full-size slide

  5. "HFOEB
    $MPKVSF$VQͷ঺հ
    $MPKVSF$VQͰ։ൃͨ͠ΞϓϦέʔγϣϯͭ
    w OFXTBTZOD
    w "TUSP$BUT
    5
    $MPKVSFͷॳ৺ऀʹ޲͚ͨղઆ
    $MPKVSFͳΒͰ͸ͷྑ͔ͬͨ఺ͱۤ࿑ͨ͠఺

    View full-size slide

  6. $MPKVSF$VQͷ঺հ
    6

    View full-size slide

  7. $MPKVSF$VQͷ঺հ
    w IUUQTDMPKVSFDVQDPN
    w ࣌ؒͷࠃࡍϓϩάϥϛϯάϋοΧιϯ
    w $MPKVSF$MPKVSF4DSJQU
    w ࠓ೥Ͱճ໨
    w 65$
    ʙ 65$

    w ϦϞʔτ
    w ࣌ؒͰ8FCΞϓϦέʔγϣϯΛͭ࡞Δ
    w νʔϜਓ
    w ฐࣾ͸ڈ೥ʹҾ͖ଓ͖ɺ೔ຊ͔Β͸།Ұͷग़৔
    7

    View full-size slide

  8. ฐ͔ࣾΒͷग़৔νʔϜ
    8
    !UPUBLLF
    !BMVNJ !EFMJIJSPT
    !TOVGLPO
    !ZVLJ#
    !BZBNBEB !TBUPNJNPUBT
    !CPYQ
    9DPP"MQIB
    9DPP#SBWP

    View full-size slide

  9. 16
    6TUSFBNͷϥΠϒ഑৴ɾUPLZPDMKͱͷ4LZQFதܧ

    View full-size slide

  10. 19
    OFXTBTZOD
    هࣄ͔ΒԻ੠Λ߹੒͢Δ
    χϡʔεΞϓϦέʔγϣϯ
    "TUSP$BUT
    ଟਓ਺ϦΞϧλΠϜ

    ରઓΞΫγϣϯήʔϜ
    $MPKVSF$VQͰ։ൃͨ͠ΞϓϦέʔγϣϯͭ
    CZ9DPP"MQIB
    CZ9DPP#SBWP

    View full-size slide

  11. OFXTBTZOD
    w /FX:PSL5JNFTͱ5IF(VBSEJBOͷχϡʔεΛ

    57ͷ༷ʹࢹௌͰ͖ΔΞϓϦέʔγϣϯ
    w ΧςΰϦબ୒΋Մೳ
    21
    IUUQOFXTBTZODUW

    View full-size slide

  12. OFXTBTZOD
    22
    EFNP

    View full-size slide

  13. OFXTBTZODͷγεςϜߏ੒
    23

    View full-size slide

  14. $MPKVSFͰྑ͔ͬͨ఺
    24
    w MFJOJOHFO
    w QSPKFDUDMK
    w NBWFOͷQPNYNMͷΑ͏ͳ΋ͷ
    ґଘؔ܎ͷղָܾ͕

    View full-size slide

  15. $MPKVSFͰྑ͔ͬͨ఺
    25
    w (Pͷ(PSPVUJOFTMJLFͳϥΠϒϥϦ
    w KTTFU5JNFPVUΛ࢖Θͳͯ͘Α͍
    DPSFBTZOD͕ศར

    View full-size slide

  16. $MPKVSFͰۤ࿑ͨ͠఺
    26
    w (PPHMF$MPTVSF$PNQJMFSͷ

    BEWBODFEPQUJNJ[BUJPOͰม਺໊͕มߋ͞ΕΔ
    w +BWB4DSJQUϥΠϒϥϦΛ࢖͏৔߹͸FYUFSOTඞਢ
    $MPKVSF4DJQUͷ0QUJNJ[BUJPO

    View full-size slide

  17. "TUSP$BUT
    w ଟਓ਺ϦΞϧλΠϜରઓΞΫγϣϯήʔϜ
    w 8FC4PDLFU
    28
    IUUQBTUSPDBUTOFU

    View full-size slide

  18. "TUSP$BUT
    29
    EFNP

    View full-size slide

  19. "TUSP$BUTͷγεςϜߏ੒
    30

    View full-size slide

  20. $MPKVSFͰྑ͔ͬͨ఺
    31
    w ϚϧνεϨουॲཧ͕೉͍͜͠ͱΛߟ͑ͣʹ࣮૷Ͱ͖Δ
    45. SFGɾEPTZOD
    ɾ"UPN

    View full-size slide

  21. $MPKVSFͰྑ͔ͬͨ఺
    32
    w ඳը·ΘΓͷ࣮૷͕ͳ͍ঢ়ଶͰσόοάͨ͠
    w খ͘͞࡞ͬͯɺখ͘͞ςετ
    w ࠷ޙʹඳըपΓͱܨ͛ͨͱ͖΋

    க໋తͳόά͸ۇ͔
    3&1-ͰήʔϜϩδοΫΛσόοά

    View full-size slide

  22. $MPKVSFͰྑ͔ͬͨ఺
    33
    w BTTPDJOͱVQEBUFJO
    w ͦͷ··+40/4FSJBMJ[F
    w QSPUPDPM
    SFDPSEΛ࢖ͬͨήʔϜΦϒδΣΫτͷσʔλ؅ཧ

    View full-size slide

  23. $MPKVSFͰۤ࿑ͨ͠఺
    34
    w DPNQPKVSFSJOHͰ͸ඪ४Ͱͷαϙʔτ͸ͳ͍
    w ͍͔ͭ͘ϥΠϒϥϦ͕͋Δ͕ɺͲΕ΋͍·͍ͪ
    w ݁ہࣗ෼ͰϥΠϒϥϦΛ࡞ͬͨ
    αʔόʔαΠυͷ8FC4PDLFUͷαϙʔτ͕͍·͍ͪ

    View full-size slide

  24. $MPKVSFͰۤ࿑ͨ͠఺
    35
    w ৭ʑͳ࣮૷͕͋Δ͕ɺܾఆྗෆ଍
    w C3&1-͸໘౗
    w CVHHZ
    !
    w (PPHMF$ISPNF֦ு͸ศར
    $MPKVSF4DSJQUͷ3&1-

    View full-size slide

  25. ·ͱΊ
    w $MPKVSF͸ϓϩτλΠϐϯά΋ૣ͍ʂ
    w ϥΠϒϥϦ΋े෼ʹͦΖ͍ͬͯΔ

    ແ͚Ε͹+BWB+BWB4DSJQUͷੈք͔Β΋Βͬͯ͘Δ

    w DPSFBTZOD͸͘͢͝ศར
    w $MPKVSF4DSJQUͷ։ൃ؀ڥ͸·ͩվળͷ༨஍͕͋Δ
    37

    View full-size slide

  26. 38
    +PJOUIF$MPKVSF$VQOFYUZFBS

    View full-size slide