fun main() { println(“Hello, It’s me!- Adele”) }

CoroutinScope >

val response = processRequest() when (response) { if () {

} else -> print(response) }

when (val response = processRequest()) {

}

컨디션을 사용할떄는 exfire하게 만들어라 static하게 만들지 마라. var x = 0 when (Val response = processRequest()) { 1 -> x = 10 10 -> x = 30 }

코틀린안에서 when 을 static 하게 사용할 때,

var x = when ( ) {

} 익스제스티하다. 다 커버가능하다.

익스프레젼하게 사용하시기 바라고요. 코틀린안에서 익스프레젼에서 사용하게 됩니다.

코틀린에서 자바와 상호 운영성을 …

interface Foo { companion object { @JvmField var answer: Int = 42

@JvmStatic
fun getInstance() {
  println("Hello, world!")
}   } }

싱글톤, 인스턴스가 많을 경우 jvn의 스태틱에서 사용할 수 있따……………………………

어노테이션

@Routing : 1.3 과 restapi

annotation class ~~~~

@Rounting 그룹핑을 더 쉽게 할 수 있다.

@Routing.path @Routing.Verb

inline <– 복붙을 새련되게 한다고 생각해라.

  • 교차 함수는 코틀린에서 하나의 함수를 쓰거나 반환할때, 이 코드를 가져와서 복사해서 그대로 사용하므로 자원을 절약할 수 있다.

inline -> noinline 은 단순히 호출만 가능하게 됨. noinline 만 가능함. crossinline :

람다에서 반환을 원하면 return@ForEach closs inline 은 local

fun main(args: Array<String) {

}

typealias 는 타입알리아스는 잘읽기 위해서, 명시성을 위해서 사용합니다. 코드 디플레케이션을 위해서도 사용합니다.

수많은 커스텀을 만들떄,

class service fun main(args: Array) { val service = MicroServices();

}

typealias Microservice = service

언사인트 :

Experimental : 코루틴 (실용적인 것이다.)

@SecondAwsomeFeature @AwesomeNewFeature 실험적이지만 사용하겠다!!!!!!!

@UseExperimental(AwesomeNewFeature::class, SecondAwsomeFeature::class) 실헝적인 기능의 경우