안녕하세요. 린다입니다. 최근에 하나 과제를 진행하면서 클로저에 대한 이해를... 정말 확실히 하고 싹 정리를 해야겠다고 다짐해서 공부하고 정리하는 글이에요! 사실 다 이해한 줄 알았는데 알고보니 외워서 쓰는 꼴이더라.. 싶어서 정리하러 왔습니다. 제가 우선 헷갈렸던 함수는 함수타입을 파라미터로 갖는 함수, @escaping이 헷갈렸는데요. 이부분을 집중적으로 정리했습니다! 클로저, 함수, 파라미터, 아규먼트 헷갈린다.. 싶으시다면 참고가 되면 좋겠어요!!! 그럼 예시로 시작해볼게요 func doSomething(_ name: () -> ()) { name() } 여기서 " : " 뒤에 있는 것이 뭐다? Type 입니다. 지금 " : " 뒤에는 () → () 가 있음 즉, doSomething 함수의 파..
https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 정말 간단한 문제인데, Dictionary, Sort 개념 잡기 좋은 문제 딕셔너리를 활용하여 입력된 단어들의 등장 횟수를 세는 예제입니다. import Foundation let n = Int(readLine()!)! var dict = [String : Int]() for _ in 0.. [Swift] Dictionary 의 subscript 3개 / KeyValuePairs 문서를..
안녕하세요. 린다입니다. Tuist의 프로비저닝에 대해서 정리해보려고 해요. 프로젝트를 여러 사람이 개발할 때는 Apple Signing을 관리해주어야 합니다. 일단 signing 관련해서 Tuist에서 설정해야할 사항이 있었고, 이를 다음에는 더 쉽게하기 위해서 간결하게 글로 정리해보려고 해요. 편하게 정리해 놓을게요! 1. 키체인에서 인증서 발급받기 키체인 접근 > 인증서 지원 > 인 기관에서 인증서 요청 Certificate Signing Request 파일 생성 완료 2. Apple Developer - Certificates Apple Developer에서 인증서 설정하기 iOS Distribution, App Development 2가지로 생성, (배포용/개발용) 생성된 파일 다운로드 3. 2..
안녕하세요. 린다입니다. Tuist 설정 시 필요한 파일을 모아놓으려고 합니다. Asset, Info, Secret 등등 사실 매번 만들기 정말 번거롭기 때문에.. 블로깅 해서 백업해두고 사용하려고 해요. Resources SwiftUI 용 UIKit용 Scripts (Lint + .yml) Info.plist UIKit용 SwiftUI용 Secrets.xcconfig
https://leetcode.com/problems/intersection-of-two-linked-lists/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 요약: 두개의 linked list를 순회하면서 교차점을 찾아서 반환하는 문제 Set으로 하고 싶은데 안 되고 while headA != nil, headB != nil로 하기엔 길이가 다르니까 co..
안녕하세여 린다임니다. 저번 글에 이어서 GCD의 DispatchWorkItem, Semaphore에 대해서 정리해보려고 해요. 조금 길어서.. 나누어서 글을 올려봅니다. 마찬가지로 앨런님의 강의를 보고 정리한 글입니다! (https://sy-catbutler.tistory.com/31) 밑에서부터 편한 말투로 정리할게요! Dispatch WorkItem 작업을 클래스화 한 객체 (클로저가 아니라 작업 자체를 클래스화 하기) DispatchQueue에 제출할 수 있는 경량 작업 단위 그룹은 여러 가지 일을 묶는 것이라면 workItem은 실행될 수 있는 단일 작업 단위 또는 클로저 생성 방법 let item1 = DispatchWorkItem(qos: .utility) { print("task1 : 출력..