Slide 1

Slide 1 text

Dr. Springlove ·ͨ͸ࢲ͸೗Կʹͯ͠৺഑͢ΔͷΛࢭ ΊͯDIΛѪ͢ΔΑ͏ʹͳ͔ͬͨ

Slide 2

Slide 2 text

ࣗݾ঺հ: @zhanpon » ࢓ࣄ1. Spring BootͰϨίϝϯσʔγϣϯγεςϜ։ൃ » ࢓ࣄ2. ࣾ಺ͷ਺ֶಉ޷ձͷΦʔΨφΠβʔ

Slide 3

Slide 3 text

͜ͷLTͰ఻͍͑ͨ͜ͱ

Slide 4

Slide 4 text

"Dependency Injection: Principles, Practices, and Patterns"ͱ͍͏ຊ͕ ૉ੖Β͍͠ͷͰ঺հ͍ͨ͠ʂ

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

ग़ձ͍

Slide 7

Slide 7 text

ڈ೥ͷ4݄ࠒ ͳΜ͔ม਺ʹ@Autowired͚ͬͯͭΔͱϑϨʔϜϫʔΫ͕ͦͷػೳΛఏڙ ͯ͘͠ΕΔΒ͍͠ɻSpring Bootͬͯศརͩͳʙ

Slide 8

Slide 8 text

ڈ೥ͷ5݄ࠒʢͦͷ1ʣ ͋͋ɺ·ͨjava.lang.IllegalStateException: Failed to load ApplicationͩʂΞϊςʔγϣϯͩΒ͚ͰԿ΋Θ͔Βͳ͍ʔʔ

Slide 9

Slide 9 text

ڈ೥ͷ5݄ࠒʢͦͷ2ʣ ;Ή;ΉɺDIͷઐ໳ॻ͕͋ΔΒ͍͠ɺಡΜͰΈΑ͏ɻ

Slide 10

Slide 10 text

ͦͯ͠……։؟

Slide 11

Slide 11 text

DIຊͷ͍͍ͱ͜Ζ 1. ߟ࡯͕ଟ໘త 2. ϑϨʔϜϫʔΫʹཔΒͳ͍

Slide 12

Slide 12 text

ߟ࡯͕ଟ໘త

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

ߟ࡯͕ଟ໘త ʮDI͚͖ͬͯͬΐ͘{஗ԆόΠϯσΟϯά,୯ମςετ}ͷͨΊʹ͋ΔΜͰ ͠ΐʯΈ͍ͨͳ୯७ͳ݁࿦ʹඈͼ͔ͭͳ͍

Slide 15

Slide 15 text

ߟ࡯͕ଟ໘త ͜ͷຊͰ͸3ͭͷ࣠Ͱߟ࡯͞Ε͍ͯΔ 1. Object Composition 2. Object Lifetime 3. Interception

Slide 16

Slide 16 text

ϑϨʔϜϫʔΫʹཔΒͳ͍ » Part 1: DIͷશମ૾ » Part 2: Χλϩά » Part 3: ७ਮͳDI » Part 4: DIίϯςφ

Slide 17

Slide 17 text

ϑϨʔϜϫʔΫʹཔΒͳ͍ » Ch. 10: Aspect-Oriented Programming by design » Ch. 11: Tool-based Aspect-Oriented Programming

Slide 18

Slide 18 text

ϑϨʔϜϫʔΫʹཔΒͳ͍ ʮͳΜ͔ΨνϟΨνϟΞϊςʔγϣϯ෇͚ͨΒ௚ͬͨʯͱ͍͏ࢥߟ͔Β ൈ͚ग़ͤͨɻ

Slide 19

Slide 19 text

ͱ͜ΖͰ…

Slide 20

Slide 20 text

ୈ1൛

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

C#ͷຊͰͨ͠ʂ ͝ΊΜ ͳ͍͞ʂʂ

Slide 23

Slide 23 text

׬