본문 바로가기

Kotlin

(5)
AtomicKotlin _ 5(42 ~ 49) 함수형 프로그래밍 break와 continue 루프 안에서만 break나 continue를 사용할 수 있다. continue는 루프의 시작 위치로만 점프할 수 있다. break는 루프의 끝으로만 점프할 수 있다. 단순한 break와 continue는 자신이 속한 루프의 범위보다 더 밖으로 점프할 수 없다. 레이블을 사용하면 맨 안쪽 루프의 영역에 제한되지 않고 점프할 수 있다. ‘레이블@’ 형태로 사용 가능 람다 람다는 이름이 없고, 함수 생성에 필요한 최소한의 코드만 필요, 다른 코드에 람다를 직접 삽입 가능 파라미터가 하나인 경우 코틀린은 자동으로 파라미터 이름을 it으로 만들어 줌 람다가 특정 인자를 사용하지 않는 경우 밑줄(_)을 사용하면 컴파일러 경고를 무시할 수 있다. 람다의 중요성 filter()의 술어를 람..
AtomicKotlin _ 4(30 ~ 41) 사용성 확장함수 확장함수(extension function)는 기존 클래스에 멤버 함수를 추가하는 것과 같은 효과 확장할 대상타입은 수신 객체 타입이라고 함 (receiver type) fun 수신타입.확장함수() {..} : ex) fun String.singleQuote() = “’$this’” 이름 붙은 인자와 디폴트 인자 이름 붙은 인자를 사용하면 코드 가독성이 좋아진다. 모든 인자의 의미가 명확하다 디폴트 인자와 결합하면 더 유용하다. 객체 인스턴스를 디폴트 인자로 전달하는 경우 호출할 때 마다 같은 인스턴스가 반복해서 전달된다. 디폴트 인자로 함수 호출이나 생성자 호출등을 사용하는 경우 호출할 때 마다 새 인스턴스가 생긴다. 오버로딩 함수의 시그니처: 함수 이름, 파라미터 목록, 반환 타입 함수를 오..
AtomicKotlin _ 3(24 ~ 29) 객체 소개 컬렉션(Collection) listOf() list는 컬렉션(컨테이너), 다른 객체를 담는 객체이다. list의 마지막 원소의 인덱스보다 더 큰 인덱스를 사용하면 ArrayIndexOutOfBoundException을 던진다. List : 은 타입 파라미터를 표시한다. 뜻 : 이 컨테이너는 ‘파라미터’ 타입의 객체를 담는다 기본적으로 읽기 전용 : listOf() 가변 List는 mutableListOf() : 변경 가능 var list = listOf('A') 에다가 list += 'B' 하면은 list : [A,B] 가 된다. 6번의 현상은 val newList = list + 'B'; list = newList 와 같다. 이렇게 혼동하지 않기 위해서 읽기전용 list는 val로 설정해준다. var..
AtomicKotlin _ 2(16 ~ 23) 객체 소개 2부를 공부하면서 list, set, map에 대해서 한번 더 생각해볼 수 있었다. 실무에서 list, set, map 모두 굉장히 많이 쓴다. 특히 list와 map은 항상 쓰이는데 2부를 공부하면서 몰랐던 사실들도 많이 알게되었다.(ex : 읽기전용은 왜 val 객체를 생성해야하는지!) 그 외에도 기본적인 용어들의 뜻을 한번 더 새길 수 있었고 var와 val의 힘을 느낄 수 있었다. 객체 지향 프로그래밍 언어에서 해결하려는 문제의 '명사'를 찾아내고 이 명사를 개체로 변환한다. 객체는 데이터를 저장하고 동작을 수행한다. 즉, 객체 지향 언어는 객체를 만들고 사용하는 언어다. 코틀린은 함수형 언어이기도 하다. 함수형 언어는 수행할 동작('동작')에 초점을 맞춘다. 코틀린은 객체 지향과 함수형을 혼합한..
AtomicKotlin _ 1.프로그래밍 기초 최근에 많은 생각을 했다. 결론은 나는 이제 Kotlin을 공부해서 Kotlin개발자가 될 계획이다. Java를 배우고 들어와서 나는 Java개발자야! 라는 선입견이 계속 있었다. 그래서 회사에서 Kotlin을 사용하는데도 불구하고, Kotlin공부보다 Java와 관련된 공부를 계속했다. 문득 그런생각이 들었다. Kotlin을 공부하면 회사에서도 업무를 하면서 공부가 되고, 회사에는 Kotlin고수가 많기 때문에 멘토까지 생기는데 왜 Kotlin공부를 따로 안하지? 오늘부터 Atomic Kotlin을 통해 제대로 Kotlin에 대해서 공부하겠다. 이 책을 고른 이유 1. 기초부터 설명해준다. (코틀린 완벽가이드보다 쉬워보인다.) 2. 각 장(아톰)끼리의 의존성이 낮아 필요한 내용을 찾아서 공부할 수 있다..