Dart vs Kotlin

Hyunsoo Jung·2024년 11월 3일
0

Flutter

목록 보기
4/15

1.1 위젯이란

  • 인터페이스(UI)의 핵심 요소
  • 코틀린: ImageView, TextView, Button과 같은 뷰 클래스들을 뷰 그룹으로 구분하여 표시
  • 다트: Icon, Text, Image, Button과 같은 다양한 요소들을 결합하여 위젯으로 표시

1.2 위젯 트리란?(Dart)

width:500px

  • 상위 위젯(부모)를 통해 하위 위젯(자식)을 관리하며 이런 위젯들이 트리처럼 연결
    • 위젯 트리를 통해 코드를 재사용할 수 있음
    • 상태가 있는 위젯과 없는 위젯을 구분할 수 있어 상태관리에 용이
    • 위젯 트리 변경시에만 UI 업데이트 ex) Hot Reload

1.3 뷰 트리란?(Kotlin)

  • 상위 위젯(부모)를 통해 하위 위젯(자식)을 관리하며 이런 위젯들이 트리처럼 연결
    • 뷰 트리를 통해 코드를 재사용할 수 있음
    • Activity나 Fragment를 통해 상태 관리하며 XML 파일에서 UI 정의
    • XML 레이아웃 파일에서 UI를 정의하므로 즉각적인 상태관리 힘듦

2.1 변수 선언

  • 다트
    • 변수 이름 앞에 타입을 선언
    • var(타입 변할수도 있음), final(타입 변하지 않음) 생략 가능
  • 코틀린
    • 변수 이름 뒤에 타입을 선언
    • var(타입 변할수도 있음), val(타입 변하지 않음) 타입 필수 사용

2.2 Null Safety

  • 널(null) 값은 유용할 수 있기 때문에 에러처리가 나지 않기 위해 사용
    • 다트와 코틀린 모두 ?를 사용하여 null값이 가능하다고 표시

2.3 Dynamic

  • 어떤 데이터 타입인지 모를때 타입을 확인할 수 있게 도와줌
    • 다트와 코틀린 모두 동일하게 사용

2.4 late

  • 수식어로써 초기에 데이터 없이 변수를 선언할 수 있음
    • 다트는 late, 코틀린은 lateinit 나 lazy를 사용
      • lateinit: 변수가 클래스 레벨에 있고, null이 될 수 없는 경우에 사용
      • lazy: 변수가 함수 내부에 있거나, 값을 계산하는 데 시간이 오래 걸리는 경우에 사용

2.5 const

  • 데이터를 변경할 수 없고, 추가적으로 컴파일 전에 알고 있는 값
    • 다트와 코틀린 모두 동일하게 사용
    • 컴파일 전에 값을 모를시 다트는 final, 코틀린은 val 사용
profile
안드로이드 네이티브 Kotlin과 크로스 플랫폼 Flutter를 잘 활용하면서 공익적 가치를 실현하는 앱 개발자

0개의 댓글