일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ㅋㅁ
- 디자인패턴
- 추상팩토리패턴
- 프로토타입 패턴
- 함수형프로그래밍
- 팩토리 메소드
- 코틀린
- El
- 추상 팩토리
- designPattern
- 싱글톤
- Observer Pattern
- factory method
- F
- a
- 빌터패턴
- Abstract Factory
- 옵저버 패턴
- builderPattern
- PrototypePattern
- Kotlin
- 디자인패턴 #
- ㅓ
- Singleton
- Design Pattern
- r
- Functional Programming
- Today
- Total
목록Kotlin in Action (36)
오늘도 더 나은 코드를 작성하였습니까?
코틀린은 주(primary) 생성자와 부(secondary) 생성자를 구분한다. 초기화 블록을 통해 초기화 로직을 추가할 수 있다. 클래스 초기화: 주 생성자와 초기화 블록 class User( 주 생성자 ){ ... } 주 생성자는 파라미터를 지정하고 그 생성자 파라미터에 의해 초기화되는 프로퍼티를 정의하는 2가지 목적을 가지고 있다. class User constructor(_nickname: String){ val nickname: String init { nickname = _nickname } } * _nickname은 자바처럼 this.nickname = nickname ; 과같은 파라미터와 멤버 변수의 이름이 동일할 때 모호성을 없애기 위해 사용된다.(this를 사용해도 된다.) contst..
코틀린 인터페이스 - 코틀린 인터페이스는 자바 8 인터페이스와 유사하다. - 추상 메서드뿐 아니라 구현이 있는 메서드도 정의 가능하다(자바 Default method와 유사) - 어떤 필드도 선언 불가능하다. - 자바와 동일하게 인터페이스는 여러 개를 구현할 수 있지만 클래스는 1개만 상속 가능하다. - override 변경자는 반드시 사용해야 된다. 아래와 같이 2개의 인터페이스를 1개의 클래스에서 구현하다면 둘 다 default showOff 메서드가 구현되어 있는데 어떻게 될까? Class 'Button' must override public open fun showOff(): Unit defined in Clickable because it inherits multiple interface met..
코틀린에서 컬렉션 만들기 - 코틀린은 자신만의 컬렉션 기능을 제공하지 않고 자바 컬렉션을 사용한다 그러므로 자바 코드와 상호작용하기 편하다. - 하지만 코틀린에서는 자바보다 더 많은 기능을 쓸 수 있다. list.max() last() fun main() { val set = hashSetOf(1, 7, 53) val list = arrayListOf(1, 7, 53) val map = hashMapOf(1 to "ond", 7 to "seven", 53 to "fifty-three") val strings = listOf("first", "second", "fourteenth") println(list.max()) print(strings.last()) } * hashMapof( key to value..
함수 - 기본구조 fun max (a: Int, b: Int): Int{ return if (a > b) a else b } 1. fun 함수 선언 키워드 2. 파라미터 a: Int --> name: type 3. fun(... ): 반환 타입 {... } - 식이 본문인 함수 fun max(a: Int, b: Int ) = if (a > b) a else b * statement(문) vs expression(식) expression 은 값을 만들어 내며 다른 식의 하위 요소로 계산될 수 있지만 statement 은 자신을 포함한 블록의 최상위 요소로 존재하며 아무런 값을 생성 하지 못한다. java에서는 모든 제어구조가 statement인 반면 코틀린에서는 loop를 제외하면 대부분의 제어구조가 ex..