일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동적계획법
- 백준
- 자바
- 코딩
- 안드로이드
- 알고리즘
- IT도서
- 프로그래밍
- 씨쁠쁠
- C++
- 안드로이드스튜디오
- 앱개발
- 웹
- 파이썬
- Android
- androidstudio
- Coding
- 자료구조
- 프로그래머스
- java
- programming
- 코딩테스트
- Python
- DP
- 리액트네이티브
- kotlin
- algorithm
- 비전공자를위한이해할수있는IT지식
- 개발자
- PS
- Today
- Total
한 발짜국
Android Studio(Kotlin) 한 줄 읽기 #2 (lateinit, RecyclerView, Property, 의존성 주입) 본문
Android Studio(Kotlin) 한 줄 읽기 #2 (lateinit, RecyclerView, Property, 의존성 주입)
발짜국 2022. 11. 11. 01:47lateinit var recyclerView: RecyclerView
lateinit (늦은 초기화)
- 전역변수로 선언 후 null 값을 지정하지 않고 초기화하는 방법
- 일반적으로, null 타입이 아닌 프로퍼티는 반드시 생성자에서 초기화되어야 한다. 하지만 프로퍼티가 의존성 주입을 통해 혹은 단위 테스트 셋업 함수에서 초기화 되어야 하는 경우 이러한 방식은 편리하지 않다.
- 이러한 경우 생성자에 null이 아닌 초기화를 제공할 수 없지만, 클래스 본문 내에서 속성을 참조할 때 null 검사를 피하고 싶을 때 lateinit를 사용한다.
- 계속해서 값이 변경될 수 있다는 속성을 위해 무조건 var을 사용해야 하며, String을 제외한 Primitive Type (Int, Float, Double, Long 등), val 키워드는 사용 불가능, getter와 setter 정의 불가능
RecyclerView
- RecyclerView는 클래스 이름일 뿐 아니라 라이브러리 이름
- 대략의 데이터 세트 효율적으로 표시 가능
- 개발자가 데이터를 제공하고 각 항목의 모양을 정의하면 RecyclerView 라이브러리가 필요할 때 요소를 동적으로 생성
- 개별 요소 재활용, 항목이 스크롤되어 화면에서 벗어나더라도 뷰 제거 대신 화면에서 스크롤된(화면에서 벗어난) 새 항목의 뷰 재사용
- 뷰 재사용 → 앱의 응답성 개선, 전력 소모 감소 → 성능 개선
기타 정리
프로퍼티 (Property)
- 일부 객체지향프로그래밍 언어에서 필드(데이터 멤버)와 메소드 간 기능의 중간인 클래스 멤버의 특수한 유형
- 읽기와 쓰기는 일반적으로 getter와 setter 메소드 호출로 수행
의존성 주입 (Dependency Injection)
- 객체가 외부에서 의존하는 또 다른 객체를 생성하고 이를 주입받아 사용하는 것
- 코드에서 두 모듈 간의 연결을 의미
- 일반적으로 둘 중 하나가 다른 하나를 어떤 용도를 위해 사용
- 객체지향언어에서는 두 클래스 간 관계라고도 말함
- 클래스간의 의존성이 줄어들면 유지보수 시 매우 편리
아래 블로그에 정리가 잘 되어있다.
DI(Dependency Injection)에 대해 알아보자
요즘들어 삘을 받아서 폭풍 포스팅 중 입니다.🤗이번 포스팅은 DI(Dependency Injection) - 의존성 주입에 대한 내용인데요.먼저 DI가 무엇인지 알아보고 안드로이드에서 많이 쓰이는 DI 라이브러리들
velog.io
참고 블로그와 사이트
https://kotlinlang.org/docs/properties.html#checking-whether-a-lateinit-var-is-initialized
[Kotlin] 🤚🏻 lateinit vs lazy, 정확히 아세요?
조금이라도 헷갈린다면 들어오세요!
velog.io
https://ddolcat.tistory.com/602
[android : kotlin] 코틀린 lateinit, lazy 사용방법 및 예제
자바에는 없는 lateinit와 lazy에 대해 알아봅니다. 코드 예제를 먼저 보아요. 아래 코드 스니펫(Code Snippet)에서 보는 것처럼 mediaPlayer객체를 전역 변수로 선언 후 초기화를 나중에 하기 위해 null 값
ddolcat.tistory.com
https://developer.android.com/guide/topics/ui/layout/recyclerview?hl=ko
RecyclerView로 동적 목록 만들기 | Android 개발자 | Android Developers
컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. RecyclerView로 동적 목록 만들기 Android Jetpack의 구성요소 RecyclerView를 사용하면 대량의 데이터 세트를 효율적
developer.android.com
'앱' 카테고리의 다른 글
Android Studio(Kotlin) 한 줄 읽기 #1 (binding, Gradle, Module, setContentView, Dex File) (0) | 2022.11.09 |
---|---|
Android Studio 에뮬레이터 오류 (The emulator process for AVD has terminated) (0) | 2022.02.22 |
ReactNative에서 TypeScript? (0) | 2022.02.18 |
안드로이드 간단한 어플 만들기 - Game Selector (feat. 오징어게임) (2) | 2021.11.02 |