ios개발 92

<스위프트> dispatchQueue , dispatchGroup

dispatchQueue 공식 문서 class DispatchQueue : DispatchObject dispatchQueue라는 객체는 메인 스레드나 백그라운드 스레드에서 업무를 직렬이나 병렬적으로 수행하도록 한다. 이제 큐에 업무들을 제출하는데 , 백그라운드 큐에 넣으면 시스템이 알아서 수행해준다. 그런데 각 태스크가 어떤 스레드에 의해 수행되는지는 알 수 없다함. (메인 스레드는 여기서 예외라는데, 그말은 우리가 무엇을 특정지어 수행하도록 할 수 있따는 건가?) 여기서 내가 할 수 있는건 동기적으로나, 비동기적으로 태스크가 수행되도록 할 수 있는데, 메인스레드에서는 동기적으로 하지 말라한다. 그러다 데드락에 걸릴 수 있다고. 위의 내용 밑으로 avoiding excessive thread creat..

<스위프트> class vs struct

1. struct gives me a free init and i need to define one for class 2. inheritance (classes support inheritance, while structs don't) 3. classes are reference types and struct are value types 이렇게 클래스에 의해 생성한 한 객체를 다른 객체에 할당하면 레퍼런스로 넘어간다. [https://devmjun.github.io/archive/Swift-StructVSClass] 음 이걸 보면 역시 지역변수는 스택에 저장되고 새로 생성되는 클래스의 인스턴스는 힙에 생긴다. 스위프트는 스태틱 메소드 , 클래스 메소드 두개가 동일한거 같다. [https://docs.sw..

<스위프트 프로젝트> 공공 api 받기

음 ... 왜안되지 Codable에 대해서 이해가 필요하다. 뭐 이건 나중으로 미루고 왜 시키는대로 했는데 안되는지 모르겠다. http://apis.data.go.kr/1360000/VilageFcstMsgService/getWthrSituation ?serviceKey=인증키(URL Encode)&numOfRows=10&pageNo=1 &stnId=108 이대로 했는데 안된다. 아래 처럼 뜸 This XML file does not appear to have any style information associated with it. The document tree is shown below. 인증키를 url encode하고 전체를 url encode해야되는건가? 그냥 인증키 위치에 \(key) 를 넣고..

<스위프트> dismiss : Viewcontroller dismiss

이 분이 가정한 상황도 그냥 재미로 보기 좋아 보인다. dismiss 자체에 대한 설명이다. presented vc인 자기 자신이 호출하면 presenting vc가 presented vc를 제거해 주는 일을 한다. 뷰컨을 제거하는 방법이다. push냐 present냐에 따라 다르다. 이쯤되니까 present와 push가 nav에 의하냐 아니냐 빼고 뭐가 다른지 궁금해진다..... 차이 봤는데 일단 느낌은 nav는 계속 해서 뭔가 화면이 이동할때 방향성 있게 스택에 누적된다는 측면에서 좋은거 같다. 그런데 present는 일회성으로 그냥 하나 띄우는 느낌? ㅋㅋ 이 느낌 밖에 모르겠따. ㅋㅋ present도 여러번 해도 될거 아니야 근데 ㅋㅋ

[ios] lec 7 : multiple mvcs, timer, animation

1. 표현중에 이해가 안되는게 multiple mvcs를 어떤 뷰컨의 뷰가 다른 뷰컨이라고 표현하는데 왜 그렇게 표현하는지 모르겠다. 뷰라니~? 이 강의의 해당 챕터에서 중요한건 UITabBarController, UISplitViewController, UINavigationController들이 있고, 이들을 어떻게 사용하는지 아는게 중요해 보인다. 해당 챕터의 예시를 꼭 해보자. 아직 왜 필요한지는 모르겠는데, 부모 뷰컨에서 자식 뷰컨에 접근하는 방법도 알려준다. 이제 컨트롤러의 컨트롤러를 다 만들고 세팅 했으니 세그다 세그 종류는 네가지다. show segue : 네브 뷰컨에서는 푸쉬가 되고 , 아니라면 모달로 된다. show detail segue : 스플릿 뷰컨에서는 디테일로 보여지고, 네브 ..

<스위프트> 뷰컨트롤러 이동 1 : transition, present, show

뷰컨트롤러 전반에 대해서는 여기가 정말 자세한거 같다. 일단 첫 문단을 읽었는데 모르던 내용이 두개나 있다. There are two ways to display a view controller onscreen: embed it in a container view controller or present it. Container view controllers provide an app’s primary navigation, but presenting view controllers is also an important navigation tool. You use direct presentation to display a new view controller on top of the current one. Ty..

<스위프트> 메모리 관리 : weak vs unowned

글 다썼는데 지워졌다;;;하하ㅏㅇ아 간단하게 정리한다. 몇개 찾아봤는데 스위프트 다큐먼트 예시가 가장 좋은거 같다. weak은 참조하던 객체가 해제되면 nil로 세팅한다. 즉 weak은 nil이 될 수도 있는 경우에 사용한다. 예를 들면 아파트랑 세입자 같은 경우 아래 그림이 이해가 잘된다. 이제는 unowned에 대한 내용이다. unowned는 절대 nil이 되지 않을때 사용한다. 그래서 optional 타입으로 선언해도 안된다. 그래서 소비자랑 신용카드가 예시다. 신용카드는 소비자가 반드시 존재해야 생길 수 있다. 아파트는 세입자가 없어도 일단 nil로 될 수 있다는게 차이점 인듯 하다. 5일 지나니까 내가 까먹어서 제대로 이해 못한거 같아 다시 작성해 본다. [https://www.youtube.c..