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

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

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

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

MVC는 개체가 각각 Model, View, Controller 3가지중 하나의 역할을 하며, 서로 통신 하는 방식을 정의한다. 모델-뷰-컨트롤러 뷰컨트롤러에서의 View와 Controller의 역할을 모두한다. View 가 Model을 알면 안된다? 기본적인 MVC 구조 Action의 흐름 User 의 Action 입력 (User → View) Action을 Controller가 인지 (View → Controller) Controller가 사용자의 Action을 토대로 Model의 데이터를 조작(변경) (Controller → Model) Model이 변경됨에 따라 View를 update (Model → Controller → View Update) Model 특정 데이터를 캡슐화 데이터 조작 및 처..
🤟CHAPTER 4 데이터 타입 고급 swift는 데이터 타입을 안심하고 사용할 수 있다. ... 또한 var name = “names” String이라는 타입을 결정해준다. typealias 를 사용해 타입의 별칭을 정할 수 있다 typealias isInt = Int var age : isInt = 8 👉Tuple 튜플 Tuple : 지정된 데이터의 묶음 var person: (String, String, Int) = ("IOS", "Study", 100) //인덱스를 통해 값을 빼 낼수 있다. print(person.0) // IOS print(person.2) // 100 //혹은 var people: (name: String, job : String ,age: Int) = ("Kane" , "P..
🤟 데이터 타입 기본 DateType = 자료형 = Type swift의 데이터 타입은 CamelCase로! : 첫 글자가 대문자 👉Int와 UInt Int : 모든 정수 UInt : 0을 포함한 양의 정수 //진수별 정수 표현 let decimalInterger : Int = 28 let binaryInterger : Int = 0b11100 let octalIntertger : Int = 0o34 let hexadecimalInterger : Int = 0x1C // 2, 8 ,16 진수로 10진수 28표현 👉Boolen Type 참, 거짓 만을 값으로 가진 타입 var boolenfalse : Bool = false var boolentrue : Bool = true 거짓은 0 참은 1 👉Float..