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
未来は現在からの継続
Search
kii310
October 04, 2024
3
290
未来は現在からの継続
YAPC::Hakodate での登壇資料
kii310
October 04, 2024
Tweet
Share
More Decks by kii310
See All by kii310
再帰関数は無名関数にできるか?
kii310
2
88
アーキテクチャの一番最初の話
kii310
1
38
カリー化と部分適用
kii310
3
62
抽象に依存する
kii310
1
85
抽象に依存する 〜概論編〜
kii310
2
63
純粋関数からDI
kii310
2
180
初心忘るべからず
kii310
1
120
オブジェクトと関数で再現するクラス
kii310
0
27
Bloom FilterをJavaScriptで実装してみた
kii310
0
450
Featured
See All Featured
Ruby is Unlike a Banana
tanoku
97
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Six Lessons from altMBA
skipperchong
27
3.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Rails Girls Zürich Keynote
gr2m
94
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Transcript
LJJ ະདྷݱࡏ͔Βͷܧଓ
w LJJͱ͍͍·͢ w ଔͷจܥେֶੜ w 5ZQF4DSJQUͰόοΫΤϯυ ࣗݾհ 9ΞΧϯτ
͜ͷηογϣϯͰɺ ʮܧଓ͠ʯؔܕϓϩάϥϛϯάͷ֓೦Λઆ໌͠ ϓϩάϥϛϯάͷ໘ന͞Λ͑·͢
ಛʹɺ ॳ৺ऀֶੜɺؔܕϓϩάϥϛϯάʹڵຯͷ͋Δํ ʹฉ͍ͯ΄͍͠༰ͱͳ͍ͬͯ·͢
ࠓճͷ:"1$ͷςʔϚɺ 0QFOUIF'VUVSF ͭ·Γະདྷ
ະདྷΛΔͨΊʹɺ ݱࡏΛΕ͍͍
ͳͥͳΒɺ ະདྷݱࡏ͔Βͷܧଓ ͔ͩΒ
ࠓճͷൃද༰ ʰؔܕϓϩάϥϛϯάͷجૅʱ Λେมࢀߟʹ͍͍͍ͤͯͨͩͯ͞·͢ IUUQTXXXSJDDPKQCPPLQSPHSBNNJOHEFUBJM
ҙ ొ͢Δ֓೦ίʔυ࣮Ͱେม͍ʹ͍͘ͷͰ͢ ͋͘·Ͱϓϩάϥϛϯάͷ໘ന͞ͱͯ͠հ͠·͢
w ܧଓ͠ w ύλʔϯϚον
ʮܧଓ͠ʯ໊લͷ௨ΓʮܧଓʯΛ͠·͢ ܧଓͱԿͰ͠ΐ͏͔ʁ ܧଓ͠ͱԿͰ͠ΐ͏͔ʁ
ʮܧଓ͠ʯ໊લͷ௨ΓʮܧଓʯΛ͠·͢ ܧଓͱԿͰ͠ΐ͏͔ʁ ܧଓ͠ͱԿͰ͠ΐ͏͔ʁ ͍ͬͯΔਓ͍·͔͢ʁ
ܧଓͱ l͋Δ࣌ͷܭࢉʹଓ͘શͯͷܭࢉz ʰؔܕϓϩάϥϛϯάͷجૅʱΑΓҾ༻
ྫ͑ɺ BEEؔͱEPVCMFؔͰܭࢉΛߦ͏ͱ͖
͜ͷܭࢉ࣍ͷΑ͏ʹղ͞ΕΔʢݫີͰͳ͍ʣ
͜ͷܭࢉ࣍ͷΑ͏ʹղ͞ΕΔʢݫີͰͳ͍ʣ ֤ܭࢉͷஈ֊ʹ͓͍ͯɺͦͷޙͷܭࢉ͕ܧଓͱͳΔ
͜ͷܭࢉ࣍ͷΑ͏ʹղ͞ΕΔʢݫີͰͳ͍ʣ BEEؔΛܭࢉͨ࣌͠ɺEPVCMF͕ؔܧଓͱͳΔ
ܧଓ͠ $POUJOVBUJPO1BTTJOH4UZMF ͱ lܧଓΛؔʹͯ͠ܭࢉ͢Δख๏z ʰؔܕϓϩάϥϛϯάͷجૅʱΑΓҾ༻
ࠓ·Ͱͷॻ͖ํͰɺ ܧଓ͢Δॲཧͱͦͷલ͕ผʑʹ͔Ε͍ͯΔ ͭ·Γɺޙʹଓ͘ॲཧ͕͔ΕؔΛϦϨʔͷΑ͏ʹ͍͚ͯ͠Δ ͔͠͠ɺ͋Δ࣌ͰͷܧଓΛݺͼग़͠ͱʹڭ͑ͯ͋͛Ε ͦͷޙॲཧ͕Ͱ͖Δͣ
BEEؔͷܧଓEPVCMFؔ BEEؔʹEPVCMFؔΛͤɺॲཧ͕ଓ͘
BEEؔΛܧଓ͠ʹͨ͠ͷ BEEؔʹܧଓ͢ΔؔΛҾͰ͍ͯ͠Δ
ܧଓ͠ʹ͢Δͱɺ௨ৗͷ߹ͱൺͯɺॲཧ͕ٯʹͳΔ
ܧଓ͠ʹ͢Δͱɺ௨ৗͷ߹ͱൺͯɺॲཧ͕ٯʹͳΔ ϓϩάϥϜ্ͷॻ͖ํ͕ɺॲཧͷॱ൪ͱಉ͡ʹͳΔ
͔͠͠ɺܧଓ͢ΔؔΛͯ͠Կ͕Ͱ͖Δͷ͔ʁ
ݱࡏͷॲཧ݁Ռ͔Βɺܧଓ͢ΔॲཧΛબͿ͜ͱ͕Ͱ͖Δ
ܕͷྻ͔ΒɺҎ্ͷΛ୳ؔ͢ ̎छྨͷܧଓΛ͍ͯ͠Δ తͷ͕ݟ͔ͭΓɺ ͔ؔΒग़͢Δޭܧଓ తͷ͕ݟ͔ͭΒͣɺ ؔΛ࠶ؼ͢Δࣦഊܧଓ
ݺͼग़͢ࡍ࣍ͷΑ͏ʹ͢Δ
͜ͷΑ͏ʹܧଓΛ͢͜ͱɺ ॲཧΛذͰ͖Δ
ബʑײͯͨ͡ͱࢥ͍·͕͢ɺ ೝෛՙ͕ͱͯͭͳ͍
ബʑײͯͨ͡ͱࢥ͍·͕͢ɺ ೝෛՙ͕ͱͯͭͳ͍ ۀͰ͏ͷ͓͢͢Ί͠·ͤΜ
࠶ؼΛߦ͏ࡍɺ ؔͷݺͼग़͠ελοΫʹҙ ඌ࠶ؼ͕࠷దԽ͞ΕΔ͔֬ೝ
ͪͳΈʹɺ1SPNJTFͷίʔϧόοΫؔͳͲܧଓΈ͍ͨͳͷ IUUQTRJJUBDPNTIJJUFNTBCCGDEBGCBDBTZODBXBJU ࢀߟ
ܧଓ͠ͰؔΛදݱ͢Δ͜ͱͰɺ ॲཧΛذͤ͞Δ͜ͱ͕Ͱ͖Δ ॲཧ" ޭ ࣦഊ
ॲཧ͕ذ͢ΔͷΛɺՄೳੑͱଊ͑Δͱ ͷఆ·͍ͬͯͳ͍ͷΛՄೳੑͷ·· ܭࢉ͢Δ͜ͱͰ͖ΔͩΖ͏͔ʁ "PS# Մೳੑ̎ Մೳੑ̍
ඇܾఆੑܭࢉʹΑΓՄೳͱͳΔ "PS# Մೳੑ̎ Մೳੑ̍
ඇܾఆੑܭࢉʹΑΓՄೳͱͳΔ "PS# Մೳੑ̎ Մೳੑ̍ ʮܭࢉ͕ܾఆ͠ͳ͍ʯͱ͍͏ͷ Ұͭͷʹఆ·Βͳ͍͜ͱ
ͭ·Γ ̍ʴʢ̎PS̏ʣʹ̏PS̐ ͱ͍͏͜ͱ "PS# Մೳੑ̎ Մೳੑ̍
͜ͷܭࢉͰɺ ̎ΛબΜͩܧଓͱ ̏ΛબΜͩܧଓ ͕ى͜Γ͏Δ "PS# Մೳੑ̎ Մೳੑ̍ ̍ʴʢ̎PS̏ʣʹ̏PS̐
ύλʔϯϚονʹ͍ͭͯ
ύλʔϯϚονͷઆ໌Λ͢Δͷɺ ܧଓ͠ʹ͓͍ͯܧଓͷذͰ ύλʔϯϚονΛ͏ͨΊ
PS ྆ํͷՄೳੑ͕͋ΔBNCͱ͍͏ܕͰද͠·͢ ͨͩͷܕ "PS# Մೳੑ̎ Մೳੑ̍ ̍ʴʢ̎PS̏ʣʹ̏PS̐
/VNCFS "NC < > "PS# Մೳੑ̎ Մೳੑ̍ ̍ʴʢ̎PS̏ʣʹ̏PS̐
/VNCFS "NC < > "PS# Մೳੑ̎ Մೳੑ̍ ̍ʴʢ̎PS̏ʣʹ̏PS̐
͜ͷ࣌ɺύλʔϯϚονͰܕʹ߹Θͤͯ ͠ࢉͷॲཧɺ ಛʹϥοϐϯά͞Εͨܕ͔ΒΛऔΓग़͢ॲཧΛذ͢Δ
ύλʔϯϚονͱɺ ͱͯΞότʹઆ໌͢Δͱ ܕΛͱʹෳͷ݅ذ͕Ͱ͖Δػೳ
ؔܕϓϩάϥϛϯάʹ͓͚Δ݅ذ
ύλʔϯϚονͬͯ001ʢσβΠϯύλʔϯʣͷ͋Εʹࣅͯͳ͍ʁ
ଟॏσΟεύον
ଟॏσΟεύονͱɺ lෳͷΠϯελϯεͷಈతͳܕใʹج͍ͮͯɺ ࣮ࡍʹݺͼग़͢ϝιουΛΓସ͑Δz IUUQTVGDQQOFUTUVEZDTIBSQTQ@NVMUJQMFEJTQBUDIIUNM Ҿ༻
σΟεύονʢEJTQBUDIʣͷҙຯɺૹ Πϝʔδɺܕ෦ߏʹ߹ΘͤͯॲཧΛৼΓ͚Δײ͡
ܕͱจࣈྻͷ͠ࢉ ͷͱจࣈྻͷzUISFFz Λͯ͠ɺ zUISFFzͱ͍͏จࣈྻʹ͢Δ
ܕͱจࣈྻͷ͠ࢉ ϙΠϯτ૬खʹ ࣗͷύλʔϯΛ ༻ҙ͓ͤͯ͘͞
ͭ·Γ '1Ͱ001Ͱ ಉ֓͡೦͕͋ͬͨΓ͢Δ
ͭ·Γ '1Ͱ001Ͱ ಉ֓͡೦͕͋ͬͨΓ͢Δ ڞ௨Λݟ͚ͭΒΕΔͱ ָ͍͠
͓·͚
ࢲͷࣝෆͰઆ໌Ͱ͖ͳ͍͚ΕͲɺ ʮܧଓ͠ʯ͔Β͕ΔΛհ͠·͢
ୈҰڃܧଓ DBMMDD ܧଓϞφυ తޮՌ
·ͱΊ ܧଓ͠ͱ͍͏֓೦ɺෆ֬ఆͳཁૉΛѻ͏͜ͱ͕Ͱ͖Δ ͦ͜ʹύλʔϯϚονͳͲͷٕज़͕͋Γɺ ϓϩάϥϛϯάͷ໘ന͞ΛൃݟͰ͖·͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ