티스토리 뷰
두 번째 포스팅입니다.
사실 전 글에서 흐지부지 끝냈던 싱글톤에 대해서 마무리 지어야 Core Data글을 마무리 지을 수 있을 것 같아서 써봅니다.
싱글톤은 흔하고 대표적인 디자인 패턴 중에 하나입니다.
싱글톤으로 구현된 클래스는 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나입니다.
쉽게 말하면 처음 만들어진 객체가 호출될 때마다 리턴되는 형태입니다.
예제를 보겠습니다.
일단 싱글톤을 만들 때 final을 붙여서 상속을 막아줍니다.
그리고 init에 private을 붙여서 외부에서 생성되는 것도 막아줍니다.
외부에서 접근을 할 때는 타입 프로퍼티인 sharedSinglethone을 통해서 접근합니다.
그래서 싱글톤으로 만든 클래스와 아닌 클래스를 비교하면
싱글톤은 단 한번 생성되어 딱 한 번 print구문이 출력되지만
싱글톤이 아닌 것은 매번 생성되어 매번 print구문이 출력이 되는 것을 확인할 수 있습니다.
더불어서 사진에 나와있듯이
싱글톤 객체에 접근할 때는 클래스명.타입프로퍼티명 으로 접근합니다.
만들기도 쉽다고 남발하면 메모리 문제가 생길 수 있으니
단 하나의 객체로 관리되야하는 경우에만 사용하는 것이 좋다고 하네요.
이제 다음 포스팅에서 뵙겠습니다
'Swift&IOS' 카테고리의 다른 글
[LeetCode: 01] Two Sum (0) | 2019.04.15 |
---|---|
Core Data(2) (0) | 2019.04.09 |
원형 프로그래스바 만들어보기 (2): 완성을 향해서... (0) | 2019.04.08 |
원형 프로그래스바 만들어보기 (1) : 원 그리기 (0) | 2019.04.05 |
Core Data (1) (0) | 2019.04.02 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Just
- swift
- iOSCombine
- MVC
- combine
- Queue
- replaceNil
- 스위프트유아이
- BBIK
- SwiftUI
- ios
- programmers
- ErrorHandling
- 스위프트
- CombineLatest
- AutoLayout
- SEQUENCE
- 유니온파인드
- compactMap
- 텔큐온
- 스택뷰
- 자료구조
- 현업이그리운
- UIViewControllerRepresentable
- Apple
- 스유
- 콤바인
- 삨
- 결합연산자
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함