Slide 1

Slide 1 text

MongoDB.pm is MoooooooongoDB.pm no Moose; use Moo; ͱ͍͏࿩ @mackee_w 13೥4݄7೔೔༵೔

Slide 2

Slide 2 text

PerlͰMongoDB • ͍Ζ͍ΖϞδϡʔϧ͋Δ • MongoDB.pm ʢެࣜυϥΠό) • AnyMongo (AnyEvent) • MongoDB::Async (Coro) 13೥4݄7೔೔༵೔

Slide 3

Slide 3 text

ඇಉظͱ͔೉͍͠͠ ·͋ެࣜυϥΠόͰ 13೥4݄7೔೔༵೔

Slide 4

Slide 4 text

13೥4݄7೔೔༵೔

Slide 5

Slide 5 text

13೥4݄7೔೔༵೔

Slide 6

Slide 6 text

Oh!!!!!!!!!!11111 Moooooooooooooose! 13೥4݄7೔೔༵೔

Slide 7

Slide 7 text

Moose͸ॏ͍͠࢖͍ ͨ͘ͳ͍΍͍ 13೥4݄7೔೔༵೔

Slide 8

Slide 8 text

ͪͳΈʹ๻͸Mouse೿ 13೥4݄7೔೔༵೔

Slide 9

Slide 9 text

ͳͷͰMouseʹ ॻ͖׵͑ͯΈͨ 13೥4݄7೔೔༵೔

Slide 10

Slide 10 text

http://mackee.hatenablog.com/entry/2013/03/20/235652 13೥4݄7೔೔༵೔

Slide 11

Slide 11 text

͍͍ͩͨͷྲྀΕ • s/Moose/Mouse/g • Class::MOP::Class࢖͍ͬͯΔͷΛ Mouse::Meta::ClassΛ࢖͏ • ͋ͱ߽շʹdelegate͍ͯ͠Δͱ͜ΖͰ ͍Ζ͍ΖέΞ͢Δ 13೥4݄7೔೔༵೔

Slide 12

Slide 12 text

ςετ͕௨ͬͨͰʂ • 2ׂ͙Β͍ૣ͘ͳΓ·ͨ͠ 13೥4݄7೔೔༵೔

Slide 13

Slide 13 text

Ͱ΋ • ࣾ಺IRCͰ • @songmu͞Μ ʮMouseͰpull requestΛ౤͛ͯ΋ड͚ औΒΕͳͦ͞͏͔ͩΒMooͰॻ͍ͨΒ ͍͍Μ͡Όͳ͍͔ͳʯ 13೥4݄7೔೔༵೔

Slide 14

Slide 14 text

͙͵͵ 13೥4݄7೔೔༵೔

Slide 15

Slide 15 text

ͤ΍ͳɾɾɾ 13೥4݄7೔೔༵೔

Slide 16

Slide 16 text

ւ֎Ͱ͸ Mouse͸ݏΘΕΔ http://blog.64p.org/entry/2013/02/11/212654 13೥4݄7೔೔༵೔

Slide 17

Slide 17 text

ͤ΍ͳɾɾɾ 13೥4݄7೔೔༵೔

Slide 18

Slide 18 text

ͳͷͰϋοΧιϯͰ Mooʹॻ͖׵͑ͯΈͨ 13೥4݄7೔೔༵೔

Slide 19

Slide 19 text

߽շʹdelegate͍ͯ͠Δ ͱ͜ΖͰίέΔ 13೥4݄7೔೔༵೔

Slide 20

Slide 20 text

delegateΛͳΜͱ͔ extendsʹม׵ 13೥4݄7೔೔༵೔

Slide 21

Slide 21 text

ͳΜ͔ίέΔ͚ΕͲ ϕϯν͸௨ͬͨ 13೥4݄7೔೔༵೔

Slide 22

Slide 22 text

13೥4݄7೔೔༵೔

Slide 23

Slide 23 text

஗͘ͳͬͨ ʘ(^o^)ʗ 13೥4݄7೔೔༵೔

Slide 24

Slide 24 text

metaclass࢖͏ͱ Mooseʹؙ౤͛͢Δ ͔ͩΒ஗͘ͳΔͷͰ͸ɻ 13೥4݄7೔೔༵೔

Slide 25

Slide 25 text

ͱΓ͋͑ͣ ͔͜͜ΒͰ͢Ͷ 13೥4݄7೔೔༵೔

Slide 26

Slide 26 text

͓ΘΓ 13೥4݄7೔೔༵೔