Swift를 스프링처럼 사용하기 - 2편 Swift에서 싱글톤 인스턴스 생성 및 관리를 해보자!
2023. 6. 18. 20:47
개발 공부 일기장/iOS Develop
개요 본문에 들어가기전 Swift를 스프링처럼 사용하는게 뭐지? 어떤 의미지? 라는 의문이 드시는 분들은 앞에 작성한 글 Swift를 스프링처럼 사용하기 - 0편 Swift를 어떻게 Spring처럼 사용해? 편을 읽고 와주시면 감사하겠습니다! 주의! 본문에 들어가기전 본 글에서 필요한 지식만 얻어가시고 본인이 틀렸다고 생각드는 부분은 필터링해서 읽으시길 바랍니다 Swift에서 싱글톤 인스턴스를 어떻게 생성할까? 싱글톤이란 간단히 설명드리면 인스턴스를 필요할때마다 new 하여 생성하지 않고 하나의 단독 인스턴스만 생성하여 인스턴스가 필요할때 기존의 만들어진 인스턴스를 활용하는 방식인데요, 이것을 싱글톤 인스턴스라고 부릅니다. 싱글톤 인스턴스를 만드려면 몇가지 조건이 필요합니다. 싱글톤 인스턴스 외에 다른 ..
Swift를 스프링처럼 사용하기 - 1편 Swift의 인터페이스 Swift Protocol에 대해 알아보자!
2023. 6. 16. 22:30
개발 공부 일기장/iOS Develop
개요 본문에 들어가기전 Swift를 스프링처럼 사용하는게 뭐지? 어떤 의미지? 라는 의문이 드시는 분들은 바로 전에 작성한 글 Swift를 스프링처럼 사용하기 - 0편 Swift를 어떻게 Spring처럼 사용해? 편을 읽고 와주시면 감사하겠습니다! 주의! 본문에 들어가기전 본 글에서 필요한 지식만 얻어가시고 본인이 틀렸다고 생각드는 부분은 필터링해서 읽으시길 바랍니다 Swift의 인터페이스는 무엇일까? 전 객체지향을 자바로 처음 접하게 되었습니다. 그러다보니 프로젝트 구조나 개발 스타일 모두 자바에 맞춰져 있었습니다. 그러다가 Swift라는 언어를 사용하게 되었을때 처음으로 생각이 든건 어? 구현체를 만들고 싶은데 Swift의 인터페이스가 뭐지? 라는 생각이였습니다. 그래서 이 글을 작성하게 되었습니다...
Swift를 스프링처럼 사용하기 - 0편 Swift를 어떻게 Spring처럼 사용해?
2023. 6. 15. 21:37
개발 공부 일기장/iOS Develop
개요 일단 Swift를 Spring처럼 사용하기 시리즈를 시작하기전에 어떤 이유로 이런 시리즈를 만들게 되었나에 대한 이유를 말씀드리려합니다. 일단 전 회사에서 다양한 업무를 맡고 있습니다, 백엔드, iOS, 방화벽 등등 사용하는 언어만 C, Swift, Java, Python을 넘나드는 업무들입니다. 그런데 개인적으론 백엔드 개발자로 성장하고 싶어서 김영한님의 스프링 인강을 듣고 있는데요 마침 회사에서 신규 iOS 클라이언트 제작이 있어서 프로젝트 세팅을 하던 도중.. Swift를 스프링처럼 사용하면 어떨까? 라는 생각을 하게 됩니다. 그래서 이 시리즈를 시작하게 되었습니다. 또한 백엔드 개발을 하시던 분들중에 앱 개발자로 넘어가시는 분들도 도움이 될거 같다고 생각을 했습니다! 주의! 본문에 들어가기전..
SwiftUI TextField Clear button - 텍스트 필드 내용 지우기, 초기화
2023. 5. 31. 19:12
개발 공부 일기장/iOS Develop
SwiftUI에서 TextField의 내용을 초기화하거나 입력중인 내용을 다 지우고 싶을수도 있다. 그리고 입력필드에 전체 내용을 지울 수 있는 버튼을 생성해놓으라는 내용은 애플의 HIG에도 명시가 되어 있다. 그런데 이게 스토리보드에선 기본으로 지원을 해주는 기능인데 SwiftUI엔 없는듯 하였다. 그렇게 1시간을 삽질하다가 외국의 어떤 기술사이트에서 내용을 찾게 되었다..onAppear { UITextField.appearance().clearButtonMode = .whileEditing }여러분은 저처럼 고생하지 마세요 허허..
Swift dump 함수에 대하여 :: 디버깅 하는 법
2022. 12. 4. 16:14
개발 공부 일기장/iOS Develop
개요 야곰님의 스위프트 프로그래밍 책을 읽던 도중 dump 함수라는 존재에 대하여 처음으로 알게 되었다..! 이제 iOS 개발을 시작한지 거의 1년차가 다 되어가지만 공부해서 시작한게 아닌 회사 업무으로 접하게 된 언어라 이런 자세한 부분들을 전에는 잘 몰랐던 것 같다. 그래서 그 동안 print로만 디버깅을 했는데 이 함수가 유용할 것 같아 글을 작성한다 dump 함수란? dump 함수에 대해서 간략하게 설명하면 print 함수와 달리 더 자세한 정보들까지 출력해주는 함수이다 스위프트에서 제공해주는 기본 함수지만 다른 언어에서는 보기 쉬운 함수가 아니여서 몰랐던 함수였다 사용법은 print와 동일하다, 아래와 같이 사용하면 된다. dump(...) print 함수와의 차이점 print 함수는 출력하려는..
Swift 명명 규칙 :: Swift 함수, 클래스 이름 짓기
2022. 12. 4. 14:26
개발 공부 일기장/iOS Develop
개요 전부터 각 언어마다 권장하는 기본 명명 규칙이 있다는점을 알고 있었다. 하지만 자세히 알아보지 않고 모두 마음대로 정해버렸기 때문에 앞으로라도 조금 더 가독성 좋고 깔끔한 코드를 짜기 위해서 명명규칙에 대해서 알아보려고 한다. Swift 명명 규칙 명명 규칙이란 본래 강제성을 띄지 않는다. 하지만 각 언어별로 "권장"하는 수준의 명명규칙은 있기 마련이다. 개발을 조금이라도 해보신 분들이 이 글을 찾아볼꺼라고 믿고 기본적인 부분은 넘어가도록 한다. 공백이나 중복되는 이름이 안된다는것 정도는 당연한 부분이니.. 함수, 메서드, 인스턴스의 명명 규칙에 대하여 알아보자면 첫글자를 소문자로 사용하는 소문자 카멜 케이스를 권장한다. 예를 들면 helloWorld 같은 느낌이다. 클래스, 구조체, 익스텐션, 프..
Swift whose view is not in the window hierarchy 해결법
2022. 11. 16. 16:52
개발 공부 일기장/iOS Develop
개요 회사에서 iOS 개발하면서 두개의 앱을 연동해서 앱 스위칭하면서 왔다갔다하는 작업이 있었는데 스위칭하는 동시에 팝업 띄우려니 자꾸 Attempt to present on (from ) whose view is not in the window hierarchy. 오류가 나서 거의 반나절을 이리저리 보다가 해결함. 다른 포스트들을 참고하니 viewDidLoad(), viewWillAppear()등 스토리보드 생명주기에 관한 글만 있는데 해당사항이 없는 글이라 외국 포스트들을 참고하다가 해결하게 됨. 원인 앱을 스위칭하자마자 서버에 상태체크를 한번하고 그에 맞는 팝업을 띄워줘야하는데 자꾸 저 에러가 나면서 뷰가 무시됨.. 대충 앱 특성상 뷰가 스택처럼 쌓이고 사라진다는점을 알고 있었기 때문에 그에 맞춰서..