일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 이론
- 구름톤 유니브
- mvc
- ios
- 동시성
- 기초문법
- 학과별커뮤니티
- uikit
- swift
- 토이프로젝트
- Optional
- 세종대학교
- collectionview
- 반응형
- CS
- 프로토콜
- struct
- 실습
- 스트럭트
- 네트워크
- GCD
- 옵셔널
- WeatherKit
- RxSwift
- async
- 앱개발
- SwiftUI
- 대표
- MVVM
- Kingfisher
- Today
- Total
목록이론 (7)
스윞한 개발자

안녕하세요! 이번 포스팅에서는 DAO, DTO, Entity + Repository Pattern에 대해서 정의해 보고! 왜? 써야하는지, 어떻게 써야 하는지에 대해 알아보겠습니다. 우선, 1. DAO (Data Access Object)- 데이터베이스나 API같은 데이터 소스를 직접 다루는 객체- 데이터를 읽고 쓰는 구체적인 작업을 담당- 데이터 저장소에 대한 CRUD 작업을 추상화 정리하자면, DAO는 데이터 저장소와 직접적으로 소통하는 레이어입니다. 비즈니스 로직과 저장소의 로직을 분리하여 유지보수에 용이하게 할 수 있습니다. 예를 들어, 자주 사용하는 로컬 저장소인 UserDefaults를 보여드리겠습니다.protocol UserDefaultsDAO { func saveUser(_ us..

안녕하세요! 지난 렌더링 관련된 포스팅에서 이미지 리사이징에 대해 간단하게 정리해 보았는데,이번 포스팅에서는 이미지 다운샘플링까지 같이 정리해 보고 어떤 상황에 어떤 방법을 사용하면 좋을지에 대해 알아보겠습니다. 지난번에 정리했듯 이미지를 가져온다고 해서 바로 사용할 수 있는 것이 아닙니다. 이미지를 사용하기 위해서는 Load -> Decode -> Render의 과정을 거쳐야 하는데, 이 과정에서 디코딩과 렌더링 할 때 많은 메로리가 사용되게 됩니다. 만약 큰 이미지가 많은 서비스를 경우 메모리 부족으로 앱이 꺼져버리는 상황이 발생할 수 있습니다. 그렇기 때문에 개발자는 위의 두 과정을 통해 이미지의 크기를 줄일 수 있습니다. 우선 이미지 리사이징과 다운 샘플링의 개념과 차이에 대해 정리해 보겠..

안녕하세요! 이번 포스팅에서는 AutoLayout의 우선순위! Content Hugging Priority, Content Compression Resistance Priority에 대해 공부하고 정리해 보려고 합니다. Content Hugging Priority, Content Compression Resistance Priority에 대해 접근하기 전에 알아야 할 개념들에 대해 정리해 보겠습니다.#AutoLayout PriorityContent Hugging Priority, Content Compression Resistance Priority은 iOS의 AutoLayout의 우선순위입니다. 오토레이아웃에서 뷰의 크기를 어떻게 결정할지에 영향을 주는 제약 조건 우선순위입니다! 요즘, 처음으로 돌아..

안녕하세요! 이번 포스팅에서는 자료구조에 대해 공부하고 정리해보겠습니다! 자료구조는 효율적으로 데이터를 관리하고 수정, 삭제, 탐색, 저장할 수 있는 데이터 집합을 말합니다. # 복잡도1. 시간 복잡도* 빅오 표기법시간 복잡도란 입력 크기에 대해 어떠한 알고리즘이 실행되는 데 걸리는 시간입니다. 주요 로직의 반복되는 횟수를 중점으로 측정합니다. 빅오 표기법이란 입력 범위 n을 기준으로 해서 로직이 몇 번 반복되는지 나타내는 것입니다. - 시간 복잡도의 존재 이유 : 효율적인 코드로 개선하는 데 쓰이는 척도가 됩니다. ex) O(n^2) vs O(n) 보통 시간 복잡도를 생각할 때 평규느 최악의 시간 복잡도를 고려하여 사용합니다. 2. 공간 복잡도프로그램을 실행시켰을 때 필요로 하는 자원 공간의 양..

안녕하세요 이번 포스팅에서는 저번 포스팅에서 정리한 컴퓨터 구조, 운영체제를 더 공부하고 정리해보겠습니다. # 프로세스와 스레드프로세스는 컴퓨터 내에서 실행되고 있는 프로그램을 말하며 CPU 스케쥴링의 대상이 되는 작업 task 용어가 비슷한 의미로 사용됩니다.프로세스 내 작업의 흐름을 스레드라고 지칭합니다. * 프로세스와 컴파일 과정프로그램 -> 메모리 인스턴스화 -> CPU 스케쥴링 -> 프로세스 실행 1. 프로세스 상태1. 생성 상태 : fork(), exex()2. 대기 상태 : ready -> CPU 소유권 대기3. 대기 중단 상태 : 메모리 부족으로 일시 중단 상태4. 실행 상태 : CPU burst. 소유권과 메모리 할당 받음. 인스트럭션 수행 중5. 중단 상태 : 어떤 이벤트가..

안녕하세요 이번 포스팅에서는 운영체제에 대해 공부하고 정리해 보겠습니다! 운영체제란? 사용자가 컴퓨터를 쉽게 다루게 해주는 인터페이스입니다. 한정된 메모리, 시스템 자원 등을 효율적으로 분배합니다. * 운영체제와 비슷하지만 소프트웨어를 추가로 설치할 수 없는 것 : 펌웨어 # 운영체제* 운영체제의 역할과 구조1. CPU 스케줄링, 프로세스 관리2. 메모리 관리3. 디스크 파일 관리4. I/O 디바이스 관리 - 운영체제의 구조는유저프로그램 -> 인터페이스(GUI, CUI) -> 시스템콜 -> 커널(드라이버, 파일 시스템) -> 하드웨어 이 중, 인터페이스(GUI, CUI) -> 시스템콜 -> 커널(드라이버, 파일 시스템) 이 해당됩니다. * 시스템 콜운영체제가 커널에 접근하기 위한 인터페이스이며 유저..

안녕하세요! 오랜만에 포스팅을 해보는데요! 프로젝트도 하고 해커톤도 하느라 부랴부랴 바쁜 일정을 보내고 있습니다 이렇게 프로젝트도 하고 대회도 나가면서 제가 깨달은 게 있는데요.. 기초를 탄탄히 하는 게 참 중요한 거 같아요! 사실 예전에는 구글링도 많이하고 블로그나 GPT에게 많이 물어봤는데요! 이게 제일 안 좋은 습관인 거 같아요. 그래서 요즘 책이랑 공식문서를 읽어보며 처음부터 다시 차근차근 공부하고 있답니다! 그래서 뜸했던 이론 공부를 하며 다시 열심히 기록해보려고 합니다! 오늘 기록할 이론은 IOS GCD 입니다. https://developer.apple.com/documentation/DISPATCH Dispatch | Apple Developer Documentation Execute co..