Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Apple Developer Academy @ POSTECH
- apple developer academy 후기
- 애플 아카데미 후기
- OS
- 데이터베이스
- Swift 문법
- SWIFT
- 치지직
- Swift 기능
- iOS 개발 오류
- global soop
- sqoop
- swift문법
- StateObject
- 네이버 치지직
- 소프트웨어분석및설계
- useReducer
- Swift 디자인패턴
- 운영체제
- 네이버 부스트캠프
- 애플 디벨로퍼 아카데미 21주차 회고
- 숭실대
- 앱 비교 프로젝트
- ObservedObject
- 애플 디벨로퍼 아카데미 후기
- 데이터베이스 공부
- react
- 제앱소
- 애플 디벨로퍼 아카데미
- ObservableObject
Archives
- Today
- Total
사과하는 제라스
[iOS 개발 약속] struct vs class 기준 본문
목차
728x90
반응형
MVC 패턴을 이용해서 코드를 짜다보면 Model의 기본 구조를 무엇으로 할 지 고민이 될 때가 있다...
둘의 차이점은 가장 큰 건 값복사냐
사실은 모든 파일에 대해서도 이건 class로 짜야하나? struct로 짜야하나? 고민될 때가 많다.
누가 정답 좀 알려주면 좋을텐데...
그래서 좀 정리해보기로 했다. 웅장해지는 struct와 class 세계관 싸움..!!
1. MVC패턴에서의 Model
일단 이때는 하나의 Model을 여러 Controller에서 접근을 하냐마냐에서 갈린다.
여러 곳에서 접근을 할 경우에는 값타입의 struct보단 class로 구현하는 것이 좋다.
또한, 프로젝트의 규모가 커질수록 struct보단 class로 구현하는 것이 좋다.
보통 실무에서는 class를 많이 사용하게 된다고 하는데 요즘 추세가 최대한 가벼운 struct를 활용한다고도 하니 두 가지 모두 알아두자!
참고출처: https://velog.io/@manpkh95/Swift-Struct-VS-Class%EC%97%90-%EB%8C%80%ED%95%98%EC%97%AC
위 출처를 많이 참고했는데 이때 가장 신기했던 것은 struct에서 값을 변경시키는 함수를 구현할 때 mutating을 사용하는데 이것으로 값을 변경하게 되면 아예 새로운 copy본을 만드는 방식이라고 한다.
또한, 새로 알게 된 struct의 장점으로 class에선 let으로 선언된 변수도 변경이 가능하지만 struct는 그렇지 않기에 위험이 덜하다는 점이 있었다.
728x90
반응형