Slide 1

Slide 1 text

# # # # 7 A

Slide 2

Slide 2 text

)70 1 2 1 1 647 1 1 U @ 74 K C ## # ##( # # # # S . . E J C J CEDEC2018

Slide 3

Slide 3 text

2201 00. /2 / 0 7 a b H : c gh P 2201 ./ 00. /2 / 0

Slide 4

Slide 4 text

!

Slide 5

Slide 5 text

Kotlin Java Unity Cocos-2dx AWS GCP

Slide 6

Slide 6 text

2 1 3 . 4

Slide 7

Slide 7 text

2 1 3 . 4

Slide 8

Slide 8 text

Slide 9

Slide 9 text

• K • a • e a • F F S

Slide 10

Slide 10 text

Slide 11

Slide 11 text

• F • •

Slide 12

Slide 12 text

Slide 13

Slide 13 text

• Kotlin • SpringBoot • MyBatis • KotlinTest • Gradle • gRPC Kotlin SpringBoot

Slide 14

Slide 14 text

( ) - - B:L - P - - - C D C A P - - R - - E R - - I E

Slide 15

Slide 15 text

Slide 16

Slide 16 text

Slide 17

Slide 17 text

Slide 18

Slide 18 text

• • • •

Slide 19

Slide 19 text

• ) () D • D ) • D B D • D • M D • D ) D

Slide 20

Slide 20 text

Slide 21

Slide 21 text

• (' • • %" • " & • !#$ • )

Slide 22

Slide 22 text

• • • I • C

Slide 23

Slide 23 text

Slide 24

Slide 24 text

- 3 DG 1 . 1- S 3 - K G 1- 4 2. 33 2F

Slide 25

Slide 25 text

Slide 26

Slide 26 text

• ( • P I ) A •

Slide 27

Slide 27 text

@Controller @RequestMapping("/user/*") class UserController() : BaseController() { @PostMapping("/update/name") fun updateName(@RequestBody request: UpdateNameRequest): UpodateNameResponse { val response = UpdateNameResponse() // return response } } • I • BC

Slide 28

Slide 28 text

Slide 29

Slide 29 text

• ,505,)/!StarterKit 32-.3 '& • 14-*+.!fork &(#%'& • $%"

Slide 30

Slide 30 text

&

Slide 31

Slide 31 text

2 1 3 . 4

Slide 32

Slide 32 text

Slide 33

Slide 33 text

• ( )(3/" '% • "$ & ' % • *+2,3."! #& -012)&#& $

Slide 34

Slide 34 text

• Kotlin • SpringBoot • MyBatis • KotlinTest • Gradle • gRPC

Slide 35

Slide 35 text

• Kotlin • SpringBoot • MyBatis • KotlinTest • Gradle • gRPC

Slide 36

Slide 36 text

• SpringBootJava#%$% (Kotlin ) • MyBatisJavaORMDOMA2 !% • "%"Gradle

Slide 37

Slide 37 text

• Kotlin • SpringBoot • MyBatis • KotlinTest • Gradle • gRPC

Slide 38

Slide 38 text

• !+&+!% Kotlin • #"$')+(*+ JUnit KotlinTest • RESTgRPC

Slide 39

Slide 39 text

Slide 40

Slide 40 text

• B • B A • B

Slide 41

Slide 41 text

• !#" • •

Slide 42

Slide 42 text

Slide 43

Slide 43 text

• !#" • •

Slide 44

Slide 44 text

' 5:8/41( - • 2=70<&,(*% ! • )&"#.9;(* 3>6>!) +$#

Slide 45

Slide 45 text

• !#" • •

Slide 46

Slide 46 text

*!& • #(.(+* ' / • (0/" $', $&1$-% • 3968(749)2:5

Slide 47

Slide 47 text

• !#" • •

Slide 48

Slide 48 text

* • • /7571, #$ * • 062-4'"+.37! * )(%& +

Slide 49

Slide 49 text

Slide 50

Slide 50 text

var message: String = null var message: String? = null null

Slide 51

Slide 51 text

var user: User? = User() user.name $"% ! if (user != null) { user.name }

Slide 52

Slide 52 text

• Null.*/, ' #&NullPointerException! • 05+71Null & # %Null!($& • -93)7Null!( '& "-:2846:!(&

Slide 53

Slide 53 text

Slide 54

Slide 54 text

Slide 55

Slide 55 text

• ## B8ELSI24**&(%? ; /54 • $)'+,8<= :.0-HOPRF3@= .924

Slide 56

Slide 56 text

)! #& (ms) *#'+# (ms) gRPC 2.92 3.6 REST 7.16 12.78 20183 • ")($%")($ • )! #&*#'+#

Slide 57

Slide 57 text

Slide 58

Slide 58 text

/ / : K - ) PU J f e cgab ( 0 / 0 1 2C 3 1 8 : .: C R - ) K ( 0 / 0 1 1 : : C

Slide 59

Slide 59 text

• -02/12) • Spring! &(*.+2,# • Kotlin #&JUnit$&% '"$

Slide 60

Slide 60 text

K 2 2 /: B 2 892 0 1 8: - 0 88 2- . 8 2 /: 2 0 2 2 :892 0- 2 1 2 /:

Slide 61

Slide 61 text

Slide 62

Slide 62 text

• 45-=8<0( 6;1.3 "!,$ • *% *, • +#29:*'& +)++#703

Slide 63

Slide 63 text

2 1 3 . 4

Slide 64

Slide 64 text

Slide 65

Slide 65 text

2 A

Slide 66

Slide 66 text

Slide 67

Slide 67 text

S • A E ) ) • ( ( - ( ( 3 G3 J •

Slide 68

Slide 68 text

• • "! • "!

Slide 69

Slide 69 text

• - - 3 •

Slide 70

Slide 70 text

Slide 71

Slide 71 text

S • • - A- 3 • 3 3 GE 2

Slide 72

Slide 72 text

• 2 •

Slide 73

Slide 73 text

• - 3

Slide 74

Slide 74 text

No content

Slide 75

Slide 75 text

Slide 76

Slide 76 text

• 0 - 3 • -

Slide 77

Slide 77 text

No content

Slide 78

Slide 78 text

• &"$ ! • %#

Slide 79

Slide 79 text

Example A ! A !! A A

Slide 80

Slide 80 text

a ) ( E F E F EK EK ) ( E F S e EK E F E ( E F E F

Slide 81

Slide 81 text

• 3 • 3 - • 3

Slide 82

Slide 82 text

Slide 83

Slide 83 text

Slide 84

Slide 84 text

Slide 85

Slide 85 text

a • 4.8 88 0/3 8 8240 • T R • A 3 . 82 - 4.8 /8 5 4 48 18: -:

Slide 86

Slide 86 text

• • 3- 2 • • 2 3 • 2 3 • 2 3

Slide 87

Slide 87 text

• • L • - 3

Slide 88

Slide 88 text

# • ! • "

Slide 89

Slide 89 text

Slide 90

Slide 90 text

Slide 91

Slide 91 text

• - 5 5 3 A 0 • - 5 .

Slide 92

Slide 92 text

Slide 93

Slide 93 text

• 3 • • -

Slide 94

Slide 94 text

• – – String Template – – – etc… • – Null – valvar

Slide 95

Slide 95 text

• G • - 3 G

Slide 96

Slide 96 text

• 0 5 K B J • • . - 3

Slide 97

Slide 97 text

• - (3 • ) (3 • J ) 3 ) (

Slide 98

Slide 98 text

Slide 99

Slide 99 text

Slide 100

Slide 100 text

• 3 32 J • 2 32 • - 2

Slide 101

Slide 101 text

Slide 102

Slide 102 text

Slide 103

Slide 103 text

• . P 2Ag • . R U C • -3i .HT .

Slide 104

Slide 104 text

Slide 105

Slide 105 text

• ( C • )

Slide 106

Slide 106 text

Slide 107

Slide 107 text

U a cC 2 b R 1::7 0 77 2 : - 7 # ## 28 2 ./ 8.

Slide 108

Slide 108 text

• 3 3 J ) • ) 3 R J I - • 3 C MP ( ) B G

Slide 109

Slide 109 text

Slide 110

Slide 110 text

• DM • • 3 - G • B B

Slide 111

Slide 111 text

Slide 112

Slide 112 text

• - 3 3- • -

Slide 113

Slide 113 text

• )5=79423% "$0."$ !& • (*2/"/#!&, • 8>:1+-/8;<=7= 6'!&,%0

Slide 114

Slide 114 text

2 1 3 . 4

Slide 115

Slide 115 text

Slide 116

Slide 116 text

Slide 117

Slide 117 text

• iOSAndroid&'($ • API(#(SDK • %'!"SDK

Slide 118

Slide 118 text

• /)*,1*,1* # #" ' • .0+(-!$ '% ' &

Slide 119

Slide 119 text

Slide 120

Slide 120 text

Slide 121

Slide 121 text

Slide 122

Slide 122 text

Slide 123

Slide 123 text

• 0#,3% % -($ • !"/1) • &+2 . *'

Slide 124

Slide 124 text