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   ) • MyBatisJavaORM DOMA2  !% • "%" 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@= .9 24

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:

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=7942 3% "$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