
View Binding 먼저, 안드로이드 개발 문서에서 정의하는 View Binding은 아래와 같다. View Binding을 사용하면 뷰와 상호작용하는 코드를 쉽게 작성할 수 있습니다. 모듈에서 사용 설정된 View Binding은 모듈에 있는 각 XML 레이아웃 파일의 Binding Class를 생성합니다. Binding Class의 인스턴스에는 상응하는 레이아웃에 ID가 있는 모든 뷰의 직접 참조가 포함됩니다. 요약하자면, findViewById() 메소드를 사용하지 않고 Binding 객체를 통해 모든 View에 접근할 수 있다는 의미로 해석된다. 기존 View 접근 방식은, 모든 뷰에 대해 findViewById() 메소드를 통해 객체를 생성하여야 한다. 10개의 View가 존재한다면 find..
Atom. 19 생성자 예제) Wombat class Wombat fun main() { val wombat = Wombat() println(wombat) } 코틀린에서는 자바와 달리 new가 불필요한 중복이기 때문에 제외한다. 예제) Arg class Alien(name: String) { val greeting = "Poor $name" } fun main() { val alien = Alien("Mr. Meeseeks") println(alien.greeting) // alien.name은 에러를 발생시킨다. } 출력 Poor Mr. Meeseeks name은 생성자 안에서 greeting 프로퍼티를 초기화하지만, 생정자 밖에서는 name에 접근할 수 없다. 클래스 본문 밖에서도 생성자 파라미터에..

Atom 04. var와 val var: 변할 수 있는 수(variable)의 약자로, 내용을 재대입할 수 있다. val: 값(value)의 약자로, 식별자의 값을 단 한 번만 초기화할 수 있다. 값을 초기화하고 나면 내용을 변경할 수 없다. fun main() { var whole = 11 var fractional = 1.4 var words = "Twas Brilling" println(whole) println(fractional) println(words) } 출력 11 1.4 Twas Brilling 변할 수 있는 수라는 이름처럼 var에 저장된 값은 달라질 수 있다. 즉, var에 저장된 데이터를 변경할 수 있다는 뜻이다. 그래서 var 변수를 가변(mutable)이라고 한다. fun mai..