KotlinInAction 46

클래스와 프로퍼티

자바에서의 클래스 public class Person { private final String name; public Person(String name) { this.name = name; } public String getName() { return name; } } 필드가 둘 이상으로 늘어나면 생성자인 Person의 파라미터를 이름이 같은 필드에 대입하는 대입문의 수도 늘어난다. 코틀린에서는 훨씬 더 적은 코드로 작성할 수 있다. class Person(val name: String) 코틀린 변환기를 사용해서 변환 할 수 있다. 코드가 없이 데이터만 저장하는 클래스를 값 객체라고 부른다. public 접근 제어자가 사라졌다. 코틀린의 기본 접근 제어가는 public 이므로 이런 경우 생략해도 된다. ..

함수와 변수

fun main(args: Array) { println("Hello, world"); } 함수를 선언할 때, fun 키워드를 사용한다. 파라미터 이름 뒤에 그 파라미터의 타입을 쓴다. 변수 선언을 할 때도 마찬가지 방식이다. 함수를 최상위 수준에 정의할 수 있다(자바와 다르다.) 꼭 클래스 안에 함수를 넣어야 할 필요 X 배열도 일반적인 클래스와 마찬가지다 코틀린에서 자바와 달리 배열 처리를 위한 문법이 따로 존재하지는 않는다. 출력하기 위해서는 println()을 쓴다. 코틀린 표준 라이브러리는 여러 가지 표준 자바 라이브러리 함수를 간결하게 사용할 수 있게 감싼 래퍼를 제공 최신 프로그래밍 언어 경향과 마찬가지로 줄 끝에 세미콜론이 생략이 가능하다. 함수 void 형식을 경우 위와 같이 사용하면 되..

코틀린 도구 사용

https://kotlinlang.org/docs/home.html Kotlin Docs | Kotlin kotlinlang.org 코틀린 코드 컴파일 코틀린 소스코드를 저장할 때는. kt라는 확장자를 파일에 붙인다. 코틀린 컴파일러는 코틀린 소스코드를 분석해서. class파일을 만들어 낸다. 코틀린 컴파일러로 컴파일한 코드는 코틀린 런타임 라이브러리에 의존한다. 런타임 라이브러리에는 코틀린 자체 표준 라이브러리 클래스와 코틀린에서 자바 API 기능을 확장한 내용이 들어있다. 코틀린으로 컴파일한 애플리케이션을 배포할 때는 런타임 라이브러리로 같이 배포해야 한다. 코틀린은 그래들(gradle), 메이븐(maven), 앤트(ant) 등의 빌드 시스템과 호환된다. IntelliJ와 코틀린 가장 다양한 기능을 ..

코틀린 철학

실용성 코틀린은 실제 문제를 해결하기 위해 만들어진 실용적인 언어이다. 코틀린은 다른 프로그래밍 언어가 채택한 이미 성공적으로 검증된 해법과 기능에 의존한다.(언어의 복잡도가 줄고, 더 쉽게 배울 수 있다) 특정 프로그래밍 스타일이나 패러다임을 사용할 것을 강요하지 않는다. 도구를 강조한다. 좋은 언어만큼이나 편리한 개발환경도 생성성향상에 필수적이다. 코틀린의 경우 intelliJ 아이디어의 개발과 컴파일러의 개발이 맞물려 이뤄져 왔다 간결성 개발자가 코드를 새로 작성하는 시간보다 기존 코드를 읽는 시간이 더 길다. 코드가 더 간단하고 간결할수록 내용을 파악하기 쉽다. 코틀린은 의도를 쉽게 파악할 수 있는 구문구조를 제공하고, 그 의도를 달성하는 방법을 이해할 때 방해가 될 수 있는 부가적인 준비 코드가..

코틀린 응용

코틀린의 서버 프로그래밍 서버 프로그래밍?? 브라우저에 HTML 페이지를 돌려주는 웹 애플리케이션 모바일 애플리케이션에게 HTTP를 통해 JSON API를 제공하는 백엔드 애플리케이션 RPC 프로토콜을 통해 서로 통신하는 작은 서비스들로 이뤄진 마이크로 서비스 위와 같은 서버 프로그램을 하기 위해 꾸준하게 새로운 기술, 프레임워크들이 생기고 발전해 왔다 코틀린은 자바 코드와 매끄럽게 상호 운용할 수 있다는 장점이 있다. 새로운 컴포넌트를 작성하거나, 기존 서비스 코드를 코틀린으로 이식하는 경우에 모두 잘 들어맞는다. 자바 클래스를 코틀린으로 확장해도 아무 문제가 없으며, 코틀린 클래스 안의 메서드나 필드에 특정 애노테이션을 붙여야 하는 경우에도 아무 문제가 없다. 시스템 코드는 더 간결해지고 신뢰성이 높..

코틀린 특성

코틀린의 주요 특성 코틀린의 주목적은 현재 자바가 사용되고 있는 모든 용도에 적합하면서도, 더 간결하고 생산적이며 안전한 대체 언어를 제공하는 것이다. 코틀린의 활용할 수 있는 가장 일반적인 영역 서버상의 코드(웹 애플리케이션의 백엔드) 안드로이드 디바이스에서 실행되는 모바일 애플리케이션 자바뿐 아니라 자바스크립트로도 코틀린을 컴파일할 수 있다. 코틀린 코드를 브라우저, 노드에서 실행할 수 있다. 코틀린은 어느 한 문제 영역만을 해결하거나 소프트웨어 개발이 처한 어려움 중 일부만을 다루기 위한 언어가 아니다. 코틀린은 개발과정에서 수행해야 하는 모든 과업에 있어 폭넓게 생성성을 향상해준다 코틀린은 구체적인 영역의 문제를 해결하거나 특정 프로그래밍 패러다임을 지원하는 여러 라이브러리와 잘 융합된다. 코틀린..