| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Subscribe
- swift 5.9
- swift database
- observable
- SeSAC
- swift
- ios
- Tuist
- 네트워크 통신
- SwiftUI
- 카카오뱅크 ios
- Tuist Swift
- combinecocoa
- swift 6
- arc
- ribs
- realm
- JSON
- Firebase
- Subject
- GCD
- RxSwift
- Swift Tuist
- Firebase Analytics
- ios database
- Combine
- swift db
- KeyPath
- xcode
- uitableviewdiffabledatasource
- Today
- Total
목록전체 글 (87)
천원의 개발
기존에 codebase로 UI를 작성하다 보면 빌드를 해야 확인할 수 있어서 번거로울 때가 종종있습니다. 그래서 SwiftUI의 PreviewProvider를 활용해서 보면서 작업이 가능하도록 해보겠습니다. 1. ViewController Extension UIViewControllerRepresentable를 사용해서 뷰컨을 SwiftUI에서 사용이 가능하도록 Extension 해줍니다 import UIKit import SwiftUI extension UIViewController { private struct Preview: UIViewControllerRepresentable { let vc: UIViewController func makeUIViewController(context: Contex..
SeSAC iOS 교육 이전 저는 평범하게 컴퓨터를 전공으로 하는 대학교 4학년이었습니다. 졸업을 앞두고 다양한 분야를 조금씩 접했던지라 어떤 직종으로 진로를 결정할지 고민 중에 iOS라는 매력적인? 진로를 선택하여 3개월 가량 혼자 공부를 진행하는 중에 혼자서 공부하는 것에 어려움을 느껴 여러 교육을 찾아보며 나온 결과는 네이버의 부스트캠프, Sesac, 야곰 정도가 많이 추천해주는 교육기관이었습니다. 그 중에서도 금액에 부담이 없는 부스트캠프와 Sesac에 지원하게 되었습니다. 운이 좋게도 두 개의 과정 모두 합격하게 되어 Sesac 수업을 듣게 되었습니다. 여담으로.. 요즘은 교육기관에 들어가기 위해 공부를 해야하는 상황... 다들 화이팅 SeSAC iOS 합격 과정 처음 구글폼을 작성할 때는 최대..
전처리문? - 컴파일 이전에 미리 처리되는 문장을 말합니다. 또한 선행처리기라고도 말합니다. 여기서 컴파일러는 여러분들이 작성하신 코드를 컴파일하기 전에 전처리문에서 정의해 놓은 코드를 우선적으로 실행하게 됩니다. Swift에서 사용하는 전처리문 디버그 모드에서 출력 #if DEBUG print("디버그") #endif 메인 앱과 위젯 구분 #if MAIN_APP print("main app") #endif #if WIDGET print("widget") #endif OS 구분 #if os(iOS) print("iOS") #elseif os(macOS) print("macOS") #elseif os(watchOS) print("wathOS") #endif
먼저 동시성 프로그래밍이란? Computer Science에서는 특정 프로세스의 실행 시간이 다른 프로세스의 흐름과 겹치는 상황에서 동시에 실행한다고 말합니다. 위의 사진을 보시면 Thread A와 B가 Concurrent하게 동작하는 모습입니다. 반면에 B와 C는 개별적으로 동작하는 모습을 확인 할 수 있습니다. A와 B처럼 ContextSwitching을 통하여 스레드의 흐름이 겹치도록 수행하는 것을 동시성이라 말합니다. Swift 5.5 이전의 동시성 Swift 5.5에서 새로운 동시성 모델을 제시하기 전까지는 저희는 GCD와 CompletionHandler를 사용해 비동기 프로그래밍을 작성해왔습니다. GCD API로 비동기 작업을 처리하고, CompletionHandler로 비동기가 끝나는 시점..
메모리에는 총 4가지의 영역이 있습니다. 가장 먼저 코드 영역은 작성한 코드가 기계어 형태로 저장이 되는 공간입니다. 컴파일 타임에 결정이 나며 Read-Only 형태로 구성되어 있습니다. 다음으로 데이터 영역입니다. 여기에는 전역변수 Swift에서는 Static으로 선언한 Type 변수들이 할당되는 공간입니다. 다음으로 힙 영역입니다. 동적으로 메모리를 할당하는 공간입니다. 프로그래머가 직접 할당 및 해제를 해주어야 하지만 Swift에서는 ARC 덕분에 직접 해제 및 할당하지 않아도 됩니다. 참조 타입의 값들이 힙 영역에 저장이 됩니다. 그럼으로 런타임에 크기가 결정이 납니다. 마지막으로 스택 영역입니다. 지역 변수 및 매개 변수 등이 스택 영역에 저장이 됩니다. 이 영역의 변수들은 함수 호출이 종료되..
먼저 본격적으로 들어가기 전에 어떤 위젯이 좋은 위젯일까요? WWDC에서는 personalized하고 glanceable한 위젯이 좋은 위젯이라고 하더라구요 그럼 이제 하나씩 어떤 뜻인지 살펴보겠습니다. 먼저 Personalized한 위젯이란? 간단한 날씨 위젯을 예제로 살펴보면 각 개인이 사는 지역마다 자신의 지역의 날씨 정보를 알려줘야겠죠. 이렇게 개인에 따라 맞춤 정보를 제공하는 것을 Personalized라고 합니다. 다음으로 glanceable한 앱들의 예제를 확인해 보시면 우리가 어떠한 동작을 하지 않아도 바로 간편하게 원하는 정보를 확인할 수 있죠! 이런 부분을 glanceable하다고 합니다. 또한 WWDC에서 강조한 부분이 바로 Widget are not mini-apps!!! 많은 분들..