6월, 2024의 게시물 표시

[Swift] @propertyWrapper 알아보기

이미지
  [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에서 많이 되서 소스까지도 간결해지는것 같습니다. 오늘은 이만~ 즐거운 코딩되세요 끝.