[Swift] @propertyWrapper 알아보기
안녕하세요 물먹고하자 입니다 :)
Swift5.1부터 추가된 기능이며, 이미 사용하고 있지만
정리차원으로 사용하고 있는 부분 공유드립니다.
바로시작!
@propertyWrapper
SwiftUI가 추가되면서 @(Annotation) 들이 추가가 많이 되었는데, 이부분이 @propertyWrapper로 표기되어 있더라구요.
@StateObject, @State .. 등등 내부 API 클릭해보시면, @propertyWrapper로 정의되어있다.
Java를 했던 시절에도 @(Annotation)을 직접 만들어서 썼던게 있어서 이걸 활용하면,
조금 코드가 간결하게 쓸수 있지 않을까 생각을 해서 알아보았습니다.
적용되면 좋을것 같은부분 (UserDefault 활용부분)
지금 사용중인 프로젝트 중 사용자정보를 저장하는 부분이 있는데, 그부분에 적용을 한번 해볼까합니다!
특히 UserDefault를 사용해서 변수에 Get, Set을 만들어 저장과 불러오기를 만들어 놨습니다.
1~2개 일때는 그냥 복붙해서 쓰면 되는데, 늘어나면 감당이 안되기 시작합니다.
Objc .h 파일
Objc .m 파일 (Get, Set 활용하여 UserDefault에 저장, 불러오기 활용중)
@propertyWrapper 활용시에는 간단하게 사용가능 (뒤에 예시)
샘플소스
정의된 @propertyWarpper 활용부분
마무리
오늘은 @propertyWarpper에 대해 알아봤습니다. 이미 도입은 2년전(?) 나오고나서 얼마 안있다가 사용은 하고 있었는데, 정리할 시간이 별로 없어서 못했었네요.
확실히 Objc언어에서는 할 수 없는부분이 Swift에서 많이 되서 소스까지도 간결해지는것 같습니다.
오늘은 이만~
즐거운 코딩되세요
끝.
댓글
댓글 쓰기