Swift/Swift 기초문법

안녕하세요. 린다입니다. 오늘은 면접때 탈탈 털리고 온 ARC를 톺아봅시다.. ARC란.. Auto Reference Counting Swift는 RC로 메모리를 관리함 == Reference Count로 관리한다는 의미 메모리의 참조횟수를 계산하여, 참조 횟수가 0이되면 더이상 사용하지 않는 메모리라 생각하여 해제함 즉, 모든 인스턴스는 자신의 RC 값을 가지고 있음 (인스턴스 생성 시 힙에 같이 저장됨) 이런 ARC 카운팅을 확인할 수 있는 방법이 있는데 바로 CFGetRetainCount 임 → “Core Foundation 객체”의 참조 횟수를 반환함 https://developer.apple.com/documentation/corefoundation/1521288-cfgetretaincount ..
안녕하세요. 린다입니다. 저번 (https://sy-catbutler.tistory.com/51) 글에 이어서 마저 정리해볼게요!! 근데 제가 이미 최적화를 정리해놓았거든요^__^ .... [Swift 기초문법] Closure 를 알아보자 이 게시물보다 더 자세하고 이전 글 예제와 동일하게 다시 적어볼게요. 후행클로저와 문법 최적화 먼저 후행 클로저가 무엇이냐면.. 함수에 대한 마지막 매개변수가 클로저인 경우에는 후행클로저라는 특수한 구문을 사용할 수 있습니다! “구문” 이니까요. 예제를 봐야 이해가 빨라요. 저번 글에서 했던 예제로 계속 해볼게요 func doSomething(_ name: (String) -> (Bool)) { name("린다") print("doSomething 내부") } doSo..
안녕하세요. 린다입니다. 최근에 하나 과제를 진행하면서 클로저에 대한 이해를... 정말 확실히 하고 싹 정리를 해야겠다고 다짐해서 공부하고 정리하는 글이에요! 사실 다 이해한 줄 알았는데 알고보니 외워서 쓰는 꼴이더라.. 싶어서 정리하러 왔습니다. 제가 우선 헷갈렸던 함수는 함수타입을 파라미터로 갖는 함수, @escaping이 헷갈렸는데요. 이부분을 집중적으로 정리했습니다! 클로저, 함수, 파라미터, 아규먼트 헷갈린다.. 싶으시다면 참고가 되면 좋겠어요!!! 그럼 예시로 시작해볼게요 func doSomething(_ name: () -> ()) { name() } 여기서 " : " 뒤에 있는 것이 뭐다? Type 입니다. 지금 " : " 뒤에는 () → () 가 있음 즉, doSomething 함수의 파..
안녕하세요 린다입니다. 저번 GCD 정리에 이어서.. GCD 사용시 주의해야할 사항을 정리해보았어요. 본 정리는 앨런님의 강의를 수강하면서 이해하고 정리한 내용입니다!! (https://sy-catbutler.tistory.com/31) 밑에서부터 편한 말투로 써볼게요! DispatchQueue 사용시 주의해야할 사항 1) 반드시 메인큐에서 처리해야하는 작업 → UI 관련된 일들은 “메인큐”에서 처리해야 한다!! 즉, 화면을 담당하는 업무는 하나의 쓰레드에서만 작업되어야만 한다. 예를 들어.. 메인쓰레드(1번 쓰레드)에서 Queue로 Task을 보냄 → Queue에서 2번쓰레드로 Task 보냄 → 근데 Task에 UI 관련 동작이 있음 → 이 부분은 다시 메인쓰레드로 보내서, 메인 쓰레드에서 동작해야함 ..
안녕하세요 린다입니다. 요즘 멋사 끝나고 헷갈리는 문법부터 보고 있는데요. 이번달 목표는 GCD를 마스터라서.. GCD를 정리해보았어요. 밑에서부터 말..편하게 해서.. 제가 이해한 바를 정리해보겠습니다. 본 정리는 앨런님의 강의를 수강하면서 이해하고 정리한 내용입니다!! 먼저.. 우리가 DispatchQueue에 대한 궁금증과 어려움이 생겼다면, 동시성에 대한 의문이 분명히 있으실텐데요... 이 동시성이 무엇인지부터 시작해서 정리해보겠습니다..!!! 동시성이 무엇이며, 도대체 왜 Concurrency 이 필요한가? 우리 컴퓨터의 발전에 따라서… 작업이 고도화 되고 처리할 양이 많아짐 == 일해야 하는 놈이 증가함 그래서 하나의 쓰레드가 아니라 다른 쓰레드로 일을 분산시켜서 작업을 빠르게 처리해보자에서 ..
동기 비동기에 많이 나오는 에러 핸들링! 처음 봤을 때 멘붕 왔던 에러 핸들링..! 말이 너무 비슷비슷해서 헷갈리는 에러 핸들링에 대한 정리를 블로그에도 올려봅니다.. 에러 핸들링은 말 그대로 에러를 다루는 거겠죠? Error Handling 에러 핸들링(처리)의 순서가 있어요! 제가 보기에는.. 내가 만든 함수에서(?) 발생할 수 있는 에러 형식 선언 (enum을 통해서 정의) 에러 정의(선언한 에러가 어떤 경우에 발생하는 에러인지 정의) 에러 발생시 어떻게 할 것인지 정의 그러면 정말로.. 이게 뭔데? 싶으니까 에러를 던지고 받고를 해봅시다. 그럼 어떻게 던지는데? 넹.. throw(s)를 통해서 던집니다. Error Throw(s) throw : 에러를 던지는 키워드(에러가 발생했을 때만 호출됨!!..
서연(linda)
'Swift/Swift 기초문법' 카테고리의 글 목록