일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리사이클러뷰 아이템 재사용
- 안드로이드 스튜디오 인터넷 연결 확인
- Thread
- 안드로이드 스튜디오 커스텀 다이얼로그
- 아파치 엔진엑스
- 안드로이드 디자인패턴
- savedinstancestate
- 디자인 패턴 예제
- hilt error
- dagger error
- 안드로이드 스튜디오 반복되는 레이아웃 코드
- 안드로이드 스튜디오 인터넷 연결 안되어 있을 때
- 다른 객체 리스트의 비교
- Kotlin
- 아파치란
- 변수
- AAC
- java
- 안드로이드 스튜디오 style
- 안드로이드 스튜디오 custom dialog
- LifeCycle
- 자바 스레드 예제
- apache란
- 객체지향 프로그래밍 5가지 원칙
- edittext 연결
- apache nginx
- 안드로이드 스튜디오 tts
- java thread 예제
- recyclerview item recycle
- 이중for문 사용 안하기
- Today
- Total
목록분류 전체보기 (73)
Sam Story

오늘은 Observer 패턴에 대해서 포스팅 해보려 한다.MVVM 패턴을 적용해 개발을 할 때 LiveData를 Observe하여 상태변화를 감지해UI에 변화를 줬었는데 근간이 되는 Observer패턴에 대한 공부가 부족한 것 같아서포스팅을 남겨본다. Observer 패턴이란?Observer 패턴은 객체지향 프로그래밍에서 주체(Subject) 객체의 상태 변화가 있을 때,그 상태를 관찰자(Observer) 객체들에게 자동으로 알리는 디자인 패턴이다.이 패턴은 객체 간의 일대다 의존 관계를 정의하여,주체 객체의 상태가 변화할 때마다 그와 관련된 모든 관찰자 객체들이 자동으로 갱신될 수 있도록 한다. 왜 Observer 패턴을 사용하는가?Observer 패턴을 사용하는 주요 이유는 객체 간의 의존성을 최소..

오늘은 코루틴에 대해서 간단히 포스팅 해보려 한다. 코루틴(Coroutine) 이란?코루틴(Coroutine)은 Kotlin에서 비동기 프로그래밍을 간결하고 효율적으로 처리할 수 있도록 돕는 기능이다.코루틴은 스레드를 사용하지 않고도 비동기 작업을 동기적인 코드처럼 작성할 수 있게 해 주어,코드의 가독성과 성능을 향상시킨다. 코루틴(Coroutine)의 특징비동기 작업: 네트워크 요청, 파일 읽기/쓰기 같은 시간이 오래 걸리는 작업을 비동기로 처리할 수 있다. 스레드 자 절감: 스레드와는 달리 코루틴은 메모리와 CPU 자원을 적게 사용한다. 간결한 코드: 동기적인 코드처럼 비동기 작업을 작성할 수 있어 코드가 훨씬 깔끔하고 읽기 쉬워진다. 왜 코루틴(Coroutine)을 사용하는가?코루틴이 갖는 장점들..

오늘은 지난번에 포스팅 했던 디자인 패턴들에 이어서MVI 패턴에 대해서 포스팅 해보려 한다. MVI 패턴이란 ?MVI 패턴은 Model , View , Intent의 약자이다.그럼 각 컴포넌트들이 어떤 역할을 하는지 알아보자. Model 상태(State)를 관리 현재 UI의 상태를 나타내는 데이터이며, UI가 어떤 화면을 보여줄지를 결정 View 사용자에게 화면(UI)을 표시사용자의 이벤트를 Intent로 전달 Intent사용자의 이벤트나 의도를 전달View에서 발생한 이벤트를 Model에 전달Model이 새로운 상태를 생성하면 View에 다시 전달하여 화면을 업데이트 MVI 패턴의 특징1. 단방향 데이터 흐름 데이터가 Intent → Model → View 순서로만 흐른다.유저가 이벤트를 발생시키면 그..

오늘은 간단한 on/off 로직을 작성함에 있어서기존의 조건문을 효율적으로 작성하는 방법에 대해서 간단히 포스팅 해보려 한다. 지난번 레이아웃만 만들었던 계산기 어플을 기능까지 적용해보고 있다.그러던 와중에 밤/낮 모드 버튼에 대한 기능을 만들다가 조건문을 작성했었는데 작성한 코드를 보자class CarculatorViewModel: ViewModel() { // 모드 상태 LiveData private val _modeData = MutableLiveData() val modeData: LiveData get() = _modeData init { _modeData.value = false } // 모드 바꾸는 함수 fun changeMode() { ..