일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DataBinding
- View
- 알림
- ViewModel
- sqlite
- Behavior
- BOJ
- notification
- AppBarLayout
- CollapsingToolbarLayout
- LiveData
- hilt
- onMeasure
- Coroutine
- 안드로이드
- kotlin
- activity
- CoordinatorLayout
- lifecycle
- CustomView
- Android
- 알고리즘
- room
- 백준
- recyclerview
- Algorithm
- onLayout
- HTTP
- 코틀린
- Navigation
- Today
- Total
목록싱글톤 (2)
개발일지
Singleton Pattern 객체를 생성할 때 생성자가 호출되고 메모리에 올라가는 등 비용이 발생한다. 만약 객체를 생성할 때 비용이 크다면 객체를 자주 생성하는 일은 시스템에 부담이 클 것이다. 싱글톤 패턴은 객체를 한번만 생성하고 생성된 객체를 재사용하면서 객체의 재생성 비용을 줄이는 디자인 패턴이다. Database를 연결하고 접근하는 객체를 예로 들어 생각하면 DB를 연결할 때 드는 비용은 매우 비싸다. 하지만 연결을 한번 하고 생성된 객체를 재사용한다면 연결 비용을 줄일 수 있을 것이다. * 인스턴스화 하는 비용을 줄일 수 있다는 장점을 가지지만, 한번 생성한 인스턴스를 반납하지 않기 때문에 무분별한 싱글톤 패턴 사용은 오히려 메모리 낭비를 일으킨다. * 싱글톤 패턴은 객체간 결합도를 높이기..
싱글톤 싱글톤 패턴이란 전역 변수를 사용하지 않고 객체 하나만 생성하여 어디서든 참조할 수 있는 패턴입니다. 객체가 서로 동일한 정보를 가질 때 하나의 메모리만 유지해서 메모리 낭비를 막을 수 있습니다. - object object는 접근 시점에서 하나의 객체가만 생성됩니다. 그렇기 때문에 주 생성자, 부 생성자를 정의할 수 없습니다. object 객체를 초기화 하기 위해선 init블록을 사용하면 되고 접근할 때 처음에만 실행됩니다. 자바에서 object를 접근하려면 INSTANCE 키워드를 사용하면 됩니다. (자바파일에서) 코드 object Math { fun sum(vararg args: Int): Int { var result = 0 for(num in args) { result += num } r..