일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Identity
- 보라색오류
- Xcode
- view
- ios
- consuming a restful web service
- TabBarItems
- ios login
- WWDC21
- Quick Help
- frame이해
- Explict Identity
- swift
- Structural Identity
- lazy 사용
- native개발
- bounds이해
- lifecycle
- developer
- schemes
- Demystify SwiftUI
- Spring
- git branch strategy
- Lifetime of SwiftUI
- Lazy
- 적절한 사용방법
- spring guide
- Your app is missing support for the following URL schemes: your_ios_client_id
- xml delegate
- lazy 위험성
- Today
- Total
목록swift (8)
Dev_Dylan

📘 "Do it! 스위프트로 아이폰 앱 만들기: 입문" iOS 입문자에게 가장 든든한 친구Swift와 iOS 개발은 매년 새로운 변화가 쏟아지는 분야다. Swift 6.0, Xcode 16 등 새로운 기술이 등장할 때마다 “어디서부터 시작해야 하지?”라는 막막함을 느끼는 입문자들이 많다. 나 역시 서버 개발을 병행하며 iOS 공부를 2년 가까이 해온 입장에서, 초심자의 어려움과 시행착오를 누구보다 잘 알고 있다.이 글에서는 그런 과정을 겪고 있는 분들에게 진심으로 추천하고 싶은 입문서, "Do it! 스위프트로 아이폰 앱 만들기: 입문"에 대해 리뷰해 보고자 한다.✅ 최신 트렌드에 맞춘 기술 구성이 책은 Swift 6.0, Xcode 16 기준으로 작성되어 있어, 오래된 방식이 아니라 지금 당장 사용할..

Intro먼저,JSON은 JSONDecoder를 통해 훨씬 빠르고 간편하게 구현할 수 있다.하지만 XML은 Parsing 보조 도구라고 생각하면 좋다.XML에 태그 하나하나를 인식해주는 Delegate를 통해,직접 Data DTO를 만들어 넣어주어야 한다.XML 파싱의 원리요소로 둘러쌓여 있기 때문에 HTML 을 이해한 사람들이라면 더 이해하기 쉬울 것먼저 아래 사진에서 XML을 이해해보면,1번은 가장바깥쪽 요소2번은 두번째 요소3번은 세번째 요소…더 있을 수 있고 없을 수 있다.오른쪽과 같이 이루어져 있다. 여는 태그 닫는 태그즉 XMLParser는 여는 태그와 닫는 태그를 찾아주는 메서드를 제공해준다.그렇다면 우리는 일일이 어떤태그에 대해 어떤 DTO를 뿌려줄 것인가에 대한 값만 넣어주면 된다.XML..

스키마 추가하는데 오류나서 쓰는 글 URL Schemes Info.plist에 추가하는 방법 (첫번째 방법) Google Login https://developers.google.com/identity/sign-in/ios/start-integrating?hl=ko iOS 및 macOS용 Google 로그인 시작하기 | Authentication | Google for Developers 이 페이지는 Cloud Translation API를 통해 번역되었습니다. 의견 보내기 iOS 및 macOS용 Google 로그인 시작하기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. iOS 또 developers.google.com 위 문서대로 Info.plist에 GIDClientI..

공식문서에서 Lazy Property 위험하다는 주석이 달려있다. Note lazy 수식어가 표시된 프로퍼티는 여러 스레드에서 동시에 접근되고 프로퍼티가 아직 초기화되지 않은 경우 프로퍼티가 한 번만 초기화된다는 보장이 없습니다. 그래서 보장이 안되는 경우가 언제인가? 언제 두번이상 초기화 되고 이상하게 쓰일까? 왜 쓰면 안되는데?? 의문을 품고, 여러 스레드에서 동시에 접근될 때 정말 초기화가 잘 이루어지지 않는지 코드로 구현해 보았다. import Foundation class Example { lazy var myLazyProperty: String = { print("Initializing lazy property") return "Hello, Lazy! : \\(Int.random(in: 1....

URLSession을 사용해서 네트워킹을 할 때 URL로 HTTP 를 사용하게 된다면 아래와 같은 보라색 경고창(오류창)이 나옴 App Transport Security has blocked a cleartext HTTP connection to "ADDRESS" since it is insecure. Use HTTPS instead or add this domain to Exception Domains in your Info.plist. 오류 메세지 그대로 App Transport Security 에서 HTTP 통신을 막았다는 것. - 이는 APPLE에서 iOS9 에 도입된 보안기능. - HTTP 접속을 허용 할 수 있지만 앱 심사 통과가 안될 가능성이 있음. HTTP 가능하도록 설정 변경 1. App..

Frame, Bounds의 차이는 무엇일까? 기술면접에도 단골이기도 한 Frame, Bounds 일단 Frame과 Bounds의 차이 Frame Frame 은 해석하는 그대로 '틀' 이라고 생각하면 된다. 아래 화면처럼 디바이스의 그 자체 화면에 고정되어있는 픽셀이라고 생각하면 좋다! 마치 아래 사진처럼 우리가 가지고있는 디바이스 화면 자체를 좌표계라고 생각하면 된다. Frame은 아하! 하고 그냥 디바이스 자체 프레임 위치라고 생각하면 되는군아! 싶지만 그렇다면 Bounds는? 똑같은 경계라고 생각이 되긴한다. Bounds 생각해 봤을 때 가장 이해하기 쉬운 것이 Sky Cam (스카이 캠)을 생각해보면 좋을 것 같다. 스카이캠은 축구장에서 사용되는데 한번즘 축구를 보면서 위에서 내려보는 화면을 봤다면..