일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 앱개발
- 디자인 패턴
- 액티비티
- 프로세스
- reactnative
- 운영체제
- 메모리
- 코틀린
- 리액트네이티브
- 안드로이드 디자인 패턴
- Kotlin
- 리액트
- CS지식
- MVVM
- 앱 개발
- 앱
- Database
- OS
- Android
- cs
- 개발
- db
- github
- 안드로이드
- 스레드
- Operating System
- React
- 안드로이드 개발
- 데이터베이스
- 디자인패턴
- Today
- Total
목록Android (17)
Tech Log
1. Context란? Context라는 단어 자체를 번역하면 문맥이다. 문맥은 논리적인 흐름을 말한다. Context는 애플리케이션의 논리적인 흐름이다. 애플리케이션의 현재 상태를 나타내며, 애플리케이션 환경에 대한 전반적인 정보를 담고 있는 클래스다. 리소스에 접근할 수 있도록 도와준다. 브로드캐스트 리시버, Intent와 같이 메시지를 주고받으며 다른 안드로이드 컴포넌트와 상호작용할 때 필요하다. Context를 잘못사용하면 메모리 누수를 유발하므로 Context를 제대로 이해하고 사용해야 한다. 2. Context의 종류 Context는 주로 두 가지로 나뉜다. Activity Context, Application Context로 나뉜다. Activity Context Activity Contex..
프로젝트에서 안드로이드 SharedPreferences를 사용할 일이 많아서 종종 사용했었는데, 부끄럽지만 SharedPreferences를 싱글톤으로 사용한다는 것을 최근에 깨달았다 ... 지금이라도 싱글톤으로 사용하는 이유를 정리해보려고 한다. 1. SharedPreferences를 싱글톤으로 사용하는 이유 메모리 낭비를 줄이기 위함 : 매번 SharedPreferences 객체를 만들어서 메모리를 낭비하는 것보다 효율적으로 사용할 수 있다. 중복되는 데이터 저장 방지 : 여러 곳에서 SharedPreferences의 데이터에 접근하여 데이터를 저장한다면, 동일한 데이터가 중복으로 저장될 수 있다. 이를 방지하기 위해 싱글톤으로 사용한다. 코드 중복 방지 : SharedPreferences 객체를 생..
안드로이드 개발자 채용 공고를 보면 'AAC 적용 경험'을 요구하는 곳을 볼 수 있다. 따라서 어떤 것인지 궁금했고 최근에 프로젝트에 AAC의 ViewModel을 적용해보았다. 실제로 적용해보며, 데이터를 편하게 관리할 수 있었다. 또한 context가 필요할 때 AAC ViewModel을 사용하였다. ViewModel을 써보면서 또 어떤 다른 장점이 있길래, 구글이 AAC를 따로 만들어냈는지 그 이유가 궁금했다. 이에 대해 알아보고 ViewModel 이외에 다른 AAC(Component)는 어떤 것이 있는지 정리해보려 한다. 1. AAC는 무엇인가? 2. AAC에는 어떤 Component가 있는가? 3. AAC의 활용 Android Architecture Components(AAC)는 무엇인가? 개요 ..
MVC와 같은 아키텍처 패턴을 본격적으로 프로젝트에 적용하기 전에, ViewModel이라는 것을 알게 되었다. UI 컨트롤러와 데이터 관리를 분리하기 위해 사용되는 것으로 일단은 알고 있다. 더 정확하게 ViewModel의 개념을 알기 위해 이번에 ViewModel에 대해서 공부하고 블로깅해보려 한다. 또한, ViewModel을 제대로 공부하는 것이 아키텍처 패턴을 알맞게 적용하는데 (당연하지만)큰 도움이 될 것이라 생각한다. 들어가기 전에 앞서서, 구분해야 할 것이 있다. MVVM 패턴에 사용되는 개념 중에 ViewModel 이라는 것이 있다. 그리고 안드로이드 Jetpack에 포함되는 클래스 중에 ViewModel 이라는 것이 있다. (또한 Jetpack 클래스의 ViewModel은 Android A..
RecyclerView는 안드로이드 위젯 중에서 많이 쓰이는 것 중 하나다. RecyclerView는 메모리 최적화와도 관련된 내용이 나오기 때문에, 이론적인 내용에 대한 정리가 필요할 것 같아 글을 작성해본다. 1. RecyclerView란? Android Developers에서는 RecyclerView를 동적 목록을 나타내는 수단으로 표현하고 있다. 이름에서 알 수 있듯이, RecyclerView내의 View를 재활용하는 동적 목록이다. Android Jetpack에 포함되어 있는 위젯이다(원래는 Support Library에서 지원됐으나, Support Library가 deprecated됨) 다시 말해, 데이터 목록을 재활용하여 목록에 나타낸 View라고 생각하면 된다. 아래와 같은 아이템 목록들을..
안드로이드 개발 언어로 코틀린을 주로 쓰고 있다. 언어 특징을 대충은 알고 있었지만, 오래 기억하기 위해서 정리해보게 되었다. 1. 코틀린이란? 코틀린은 자바 플랫폼(자바 프로그램의 개발과 실행을 위한 환경)에서 돌아가는 프로그래밍 언어다. 자바가 사용 중인 곳이라면 거의 대부분 코틀린을 사용할 수 있다. 현재 서버 개발, 안드로이드 어플리케이션 개발 등에서 활발하게 사용되고 있다. 코틀린은 간결하고 실용적이며, 자바 코드와의 상호 운용성을 중시한다. * 상호 운용성 : 하나의 시스템이 동일 또는 이기종의 다른 시스템과 아무런 제약이 없이 서로 호환되어 사용할 수 있는 성질 (출처 : 위키백과) 자바가 실행되는 환경이면 잘 작동하며, 성능도 자바와 같은 수준이다. 2. 활용 범위 앞서 코틀린이 자바 플랫..
Fragment에 대해서 공부하면서, Fragment에도 생명주기가 있다는 것을 알게 되었다. Fragment는 Activity에 종속이 될 텐데 Fragment의 생명 주기는 종속되는 중에 어떻게 돌아갈까 궁금했다. 이번 포스팅에서는 Fragment 생명 주기에 대해서 자세히 알아보고자 한다. 그리고 Activity 생명 주기와는 어떤 다른 점이 있는지 공부해보고자 한다. 1. 배경 Fragment도 Activity와 마찬가지로 UI를 빌드하는 것이므로 Activity가 생명주기를 갖는 것과 같은 이유로 생명주기를 갖고 있다. 생명주기 콜백 함수가 있는 이유는 사용자가 Fragment 화면을 나가거나 돌아올 때 대응하기 위해서였다. 그 외에도 다른 이유들이 있는데 아래 링크에서 생명주기를 사용하는 이유..
클론 코딩을 하면서, ViewPager2를 사용하게 되었다. 사용한 지 좀 오래 되어, 복기용으로 글을 작성하게 되었다. 0. 개념 ViewPager2는 화면 슬라이드에 이용되는 레이아웃 클래스이다. ViewPager2가 ViewGroup으로부터 상속된 것을 보면, Container 역할을 한다는 사실을 유추해낼 수 있다. 단어의 뜻 그대로, View + Pager = 페이지를 쓸어 넘기듯이 View를 넘기는 것이다. 이 뷰에서는 스와이프(Swipe) 제스처를 통해서, 한 화면에서 다음 화면으로 전환할 수 있다. ViewPager2는 데이터를 페이지 단위로 화면에 표시한다. 여러 종류의 뷰 위젯을 사용하여 ViewPager2를 구성한다. 1. ViewPager와 ViewPager2 ViewPager2라고..