일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- 프로그래머스 n의 배수 고르기
- 프로그래머스 조건에 맞게 수열 변경하기 3
- 배열 만들기1
- ruby설치
- 프로그래머스 최댓값 만들기(2)
- 프로그래머스 문자열 정렬하기 (1)
- 주사위 게임1
- 프로그래머스 주사위 게임1
- 프로그래머스 자동커밋
- Break
- 문자열 붙여서 출력하기
- 객체지향
- n번째 원소까지
- continue
- 프로그래머스 n번째 원소까지
- cocoapods 설치 오류
- 조건에 맞게 수열 변경하기 3
- array
- 문자열 정렬하기 (1)
- 프로그래머스 배열 만들기1
- 스페인어
- 프로그래머스 암호 해독
- Til
- Error installing cocoapods
- 프로그래머스 문자열 붙여서 출력하기
- 스파르타코딩캠프
- 스파르타 코딩클럽 내일배움캠프
- swift
- 연산자
- Today
- Total
목록Dev (264)
dev._.note
동기 (Synchronous) vs. 비동기 (Asynchronous) 동기(Sync) : 작업이 순차적으로 실행되는 것을 의미. 한 작업이 끝날 때까지 다음 작업이 기다리며, 작업이 순서대로 실행. 비동기(Async) : 작업이 별도의 스레드 또는 백그라운드에서 실행되며, 다른 작업을 기다리지 않고 동시에 실행. 작업이 완료되면 콜백(callback) 또는 완료 핸들러(completion handler)를 통해 결과를 처리. 메서드 호출 순서대로 작업이 완료된다는 것이 보장되지 않음. 직렬(Serial) vs 동시(Concurrent) 직렬(Serial) : 분산처리 시킨 작업을 오직 한 개의 쓰레드에서만 처리하는 것이 직렬이. 즉, A 쓰레드에서 4개의 작업을 분산처리 시켰는데, B 쓰레드에서만 처리..
강한 참조 순환(Strong Reference Cycle)문제와 해결 방법 Swift로 개발할 때에는 메모리 누수(Memory Leak)을 주의. 참조는 디폴트로 강한 참조(Strong Reference)를 사용하는데, 이 강한 참조를 잘못 사용하면 메모리 누수(Memory Leak) 문제가 발생할 수 있음. 가장 대표적인 예가 두 개 이상의 인스턴스가 서로가 서로를 강한 참조일 때 발생합. 이 문제를 강한 참조 순환(Strong Reference Cycle or Retain Cycle)이라고 함. 강한 참조 순환: 메모리가 해제되지 않고 유지되어 메모리 누수가 발생하는 현상 class Man { var name: String var girlfriend: Woman? init(name: String) {..
📌 스레드(Thead)란? 스레드(Thread)는 동시에 여러 작업을 수행하기 위해 사용되는 실행 단위로써 스레드를 사용하면 여러 작업을 병렬로 실행하여 프로그램의 성능을 향상할 수 있음. 스레드의 개념 스레드는 각각의 독립적인 실행 경로를 가지며, 동시에 여러 코드 블록을 실행할 수 있음. 각 스레드는 자신만의 스택 영역을 가지고 있으며, 프로그램의 다른 부분과 독립적으로 실행. 스레드의 동작 방식 메인 스레드(Main Thread) : 모든 iOS 앱은 메인 스레드에서 실행. 사용자 인터페이스(UI) 이벤트 처리, 그리기 작업 등을 메인 스레드에서 처리. 백그라운드 스레드(Background Thread) : 메인 스레드 외의 스레드를 백그라운드 스레드라고 함. 복잡한 계산, 다운로드 등의 작업은 백..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/D2eud/btsB19y5FZ3/gy5XYDtgkuLSeC1LO06ECk/img.png)
CocoaPods 이란? Swift 및 objective-c로 iOS / macOS 등 애플 플랫폼을 개발할 때, 외부 라이브러리를 관리하기 쉽도록 도와주는 의존성 관리 도구의 일종 CocoaPods 설치 sudo gem install cocoapods 여기서 설치가 안되는 이슈가 있었다. 설치 버전 확인 pod --version Podsfile 설정 1. 설치할 경로로 이동 후 Podfile 생성 pod init vi Podfile 2. vifile 편집 insert 변경 : 'i'입력 후 편집 pod 'RxSwift', '~> 6.5.0' pod 'RxCocoa' 편집 후 빠져나가기 : ESC > :wq > ENTER :wq 설치 pod install 폴더 > RxSwift.xcworkspace 생성..
Error installing cocoapods 터미널에서 cocoapods을 설치하는데 설치가 안되는 문제 error 문구 ERROR: Error installing cocoapods: The last version of drb (>= 0) to support your Ruby & RubyGems was 2.0.5. Try installing it with `gem install drb -v 2.0.5` and then running the current command again drb requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210. ruby 버젼이 낮아서 생긴 문제 ruby 최신버전으로 설치 brew install rbe..
📌 프로토콜(Protocol) 프로토콜이란? 특정 역할(기능)을 하기 위한 메서드, 프로퍼티, 기타 요구사항의 청사진을 정의한 것. 프로토콜은 기능을 정의하고 제시할 뿐, 스스로 기능을 구현하지 않음. 구조체/클래스/열거형은 특정 프로토콜을 채택(adopted)해서 그 역할을 위한 요구사항을 구현. 어떤 타입이 어떤 프로토콜의 요구사항을 따르면, '해당 프로토콜을 준수한다(conform)'라고 표현. 스위프트에서 프로토콜은 완전한 하나의 타입으로 사용. 파라미터나 리턴타입으로 사용 가능 프로퍼티, 변수, 상수의 타입으로 사용 가능 배열 등 컨테이너 요소의 타입으로 사용 가능 protocol 프로토콜이름 { 프로토콜 정의 } 프로퍼티 요구사항 프로퍼티와 타입 프로퍼티 요구 가능 프로퍼티 요구사항은 항상 v..
ARC란? Swift의 ARC(Automatic Reference Counting)는 메모리 관리 기법 중 하나로, 객체나 인스턴스가 참조되는 횟수를 추적하여 메모리에서 해제할 시점을 결정. 객체가 생성될 때마다 참조 횟수가 1 증가하고, 해당 객체를 참조하는 다른 객체나 변수가 없어지거나 더 이상 사용되지 않을 때 참조 횟수가 1 감소. 참조 횟수가 0이 되면 해당 객체는 메모리에서 해제됨. ARC의 작동 방식 객체 생성: 객체가 생성되면 참조 횟수가 1 증가. 객체 참조: 객체를 다른 변수나 상수에 할당하면 해당 객체의 참조 횟수가 1 증가. 참조 해제: 객체의 참조가 없어지면(참조하는 변수나 상수가 없거나 **nil**이 할당되면) 참조 횟수가 1 감소. Zeroing Weak References:..
📌 실패 가능한 상황과 예외 처리 에러처리 프로그램에서 에러가 발생한 상황에 대응하고 이에 대응하는 과정. Swift에서는 런타임에 에러가 발생한 경우, 이를 처리를 지원하는 클래스를 제공. Error Error는 던져질 수 있는 오류 값을 나타내는 유형. Error 프로토콜을 채택하여 사용자 정의 에러를 정의하여 사용 가능 참고 자료: https://developer.apple.com/documentation/swift/error enum VendingMachineError: Error { case invalidSelection case insufficientFunds(coinsNeeded: Int) case outOfStock } 📌 throws와 do-catch 문 throw와 throws thro..