일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Database
- 디자인 패턴
- 코틀린
- db
- 안드로이드 개발
- cs
- 안드로이드
- 안드로이드 디자인 패턴
- React
- 메모리
- CS지식
- reactnative
- 데이터베이스
- Kotlin
- OS
- 스레드
- Operating System
- 앱
- 프로세스
- 디자인패턴
- 앱개발
- MVVM
- 운영체제
- 액티비티
- 앱 개발
- Android
- 개발
- github
- 리액트
- 리액트네이티브
- Today
- Total
목록Singleton (2)
Tech Log
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bTVap7/btr5R0HC10S/CqM1B1PEk7R67lWtn0IF31/img.png)
프로젝트에서 안드로이드 SharedPreferences를 사용할 일이 많아서 종종 사용했었는데, 부끄럽지만 SharedPreferences를 싱글톤으로 사용한다는 것을 최근에 깨달았다 ... 지금이라도 싱글톤으로 사용하는 이유를 정리해보려고 한다. 1. SharedPreferences를 싱글톤으로 사용하는 이유 메모리 낭비를 줄이기 위함 : 매번 SharedPreferences 객체를 만들어서 메모리를 낭비하는 것보다 효율적으로 사용할 수 있다. 중복되는 데이터 저장 방지 : 여러 곳에서 SharedPreferences의 데이터에 접근하여 데이터를 저장한다면, 동일한 데이터가 중복으로 저장될 수 있다. 이를 방지하기 위해 싱글톤으로 사용한다. 코드 중복 방지 : SharedPreferences 객체를 생..
안드로이드 Room DB의 인스턴스를 생성할 때 반드시 싱글톤 패턴으로 생성했던 것 같다. 그때는 강의에서 그렇게 하라고 해서 했었는데, 다른 곳에서도 사용할 일이 있을 것 같아서 싱글톤 패턴에 대해 정리해본다. 1. 정의 위키백과에서는 다음과 같이 싱글톤 패턴을 정의하고 있다. 소프트웨어 디자인에서 싱글톤 패턴을 따르는 클래스는, 생성자가 여러 차례에 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 위 정의에서 알 수 있듯이, 싱글톤 패턴에서는 객체(인스턴스)를 메모리에 하나만 생성한다. 그리고 이 객체를 여러 스레드에서 동시에 어디에서든지 참조할 수 있도록 하는 것이다. 전역 범위에서 이 객체에 접근할 수 있도록 하면 어디에서든지..