Slide 1

Slide 1 text

೔޲ڧ೥݄೔ %ZOBNJDUZQF ू·Ε4XJGU޷͖ʂ4XJGUѪ޷ձWPM ू·Ε,PUMJO޷͖ʂ,PUMJOѪ޷ձWPM!%F/"

Slide 2

Slide 2 text

w ೔޲ڧ w J04ΤϯδχΞ

Slide 3

Slide 3 text

%ZOBNJDUZQF

Slide 4

Slide 4 text

w ೔޲ڧ w J04Τ ϯδχ Ξ

Slide 5

Slide 5 text

%ZOBNJD UZQF

Slide 6

Slide 6 text

fun dynamicFun(x: dynamic): Unit { val dyn: dynamic = ... } ,PUMJO%ZOBNJDUZQF

Slide 7

Slide 7 text

%ZOBNJDUZQF

Slide 8

Slide 8 text

%ZOBNJDUZQF w EZOBNJDܕ w WBMEZOEZOBNJDʜ w ͳΜͰ΋ೖΔ

Slide 9

Slide 9 text

fun dynamicFun(x: dynamic): Unit { }

Slide 10

Slide 10 text

fun dynamicFun(x: dynamic): Unit { } fun anyFun(x: Any): Unit { }

Slide 11

Slide 11 text

fun dynamicFun(x: dynamic): Unit { x.god } fun anyFun(x: Any): Unit { x.god // ←ίϯύΠϧΤϥʔ }

Slide 12

Slide 12 text

%ZOBNJDUZQF w EZOBNJDܕ w WBMEZOEZOBNJDʜ w ͳΜͰ΋ೖΔ w ܕνΣοΫΛߦΘͳ͍ʢίϯύΠϧΤϥʔʹͳΒͳ͍ʣ

Slide 13

Slide 13 text

// x͸Human fun dynamicFun(x: dynamic): Unit { x.back.left.left.up.scratch() } class Back { val left: Back get() = Back() val right: Back get() = Back() val up: Back get() = Back() val down: Back get() = Back() fun scratch(): Unit { println(“ຬ଍ʂ”) } } class Human { val back = Back() }

Slide 14

Slide 14 text

%ZOBNJDUZQF w EZOBNJDܕ w WBMEZOEZOBNJDʜ w ͳΜͰ΋ೖΔ w ܕνΣοΫΛߦΘͳ͍ʢίϯύΠϧΤϥʔʹͳΒͳ͍ʣ w ࣗ༝ʹϓϩύςΟ΍ؔ਺Λݺ΂Δ w EZOBNJDܕͷϓϩύςΟ΍ؔ਺ͷϦλʔϯ͸EZOBNJDܕ

Slide 15

Slide 15 text

fun dynamicPlus(x: dynamic, y: dynamic): Unit { x + y }

Slide 16

Slide 16 text

fun dynamicPlus(x: dynamic, y: dynamic): Unit { x + y // 3 } dynamicPlus(1, 2)

Slide 17

Slide 17 text

fun dynamicPlus(x: dynamic, y: dynamic): Unit { x + y // ೔޲ڧ } dynamicPlus(“೔޲”, “ڧ”)

Slide 18

Slide 18 text

fun dynamicPlus(x: dynamic, y: dynamic): Unit { x + y // iOSΤϯδχΞ } dynamicPlus(“iOS”, “ΤϯδχΞ”)

Slide 19

Slide 19 text

fun dynamicPlus(x: dynamic, y: dynamic): Unit { x + y // 105ΤϯδχΞ } dynamicPlus(105, “ΤϯδχΞ”)

Slide 20

Slide 20 text

%ZOBNJDUZQF w EZOBNJDܕ w WBMEZOEZOBNJDʜ w ͳΜͰ΋ೖΔ w ܕνΣοΫ͸ߦΘͳ͍ʢίϯύΠϧΤϥʔʹͳΒͳ͍ʣ w ࣗ༝ʹϓϩύςΟ΍ؔ਺Λݺ΂Δ w EZOBNJDܕͷϓϩύςΟ͸EZOBNJDܕ w EZOBNJDಉ࢜ͷܭࢉ΋Մೳ

Slide 21

Slide 21 text

͍͢͝ʂ

Slide 22

Slide 22 text

͸͡ΊΑ͏

Slide 23

Slide 23 text

,PUMJO+4

Slide 24

Slide 24 text

IUUQTLPUMJOMBOHPSHEPDTEZOBNJDUZQFIUNM %ZOBNJDUZQF

Slide 25

Slide 25 text

No content