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

안녕하세요! 지난 포스팅에서 Kingfisher의 이미지 캐싱과 커스텀 이미지 캐싱에 대해 정리해 보았는데, 문제점을 발견해 그에 관해 분석해 보고 파생될 수 있는 다른 문제점들에 대해 해결책을 생각해 보려고 합니다. 오늘 포스팅에서는 쟁점이 되는 목차들을 생각해 보았습니다. 1. 캐시에 저장된 이미지를 보여줄때 -> 서버 상의 이미지가 달라졌을 때저번 포스팅에서 Kingfisher에 캐싱 기능에 대해 정리를 하고 커스텀 캐시 코드를 작성해 보았습니다. 제가 가져오는 getImage 메서드는 싱글톤으로 구현했고 이미지 URL이 캐시에 존재하면 서버와의 통신을 하지 않았습니다. 구현을 마치고 캐싱 과정이 잘 되는지 확인했고 멋지게,, 포스팅을 했다고 생각하고 있었습니다. 근데,,, 곰곰이 생각해 보니,,..

안녕하세요!이번 포스팅에서는 애플 개발자라면 알고 있어야할 코드사이닝과 프로비저닝 프로파일에 대해 정리해보겠습니다. 먼저, 애플은 자신들의 기기에서 어떠한 프로그램이 동작하기 위해서는 인증을 받아야하는데 이 과정을 인증하는 방법으로 인증서를 사용하고 있습니다. # 애플 인증서앱이 실행될때마다 애플로부터 이 인증을 받았는지 확인합니다. * Development Certificate앱을 개발하고 테스트(테스트장치)할 때 사용합니다. * Distribution Certificate앱을 앱스토어에 배포할때 사용됩니다! # 프로비저닝 프로파일프로비저닝 프로파일은 iOS 기기와 애플의 인증서를 연결하는 것을 의미합니다. 애플 개발자 포털에서 생성하며 디바이스, 인증서, 앱 ID 간의 관계를 설정하는 과정입니다..

안녕하세요! 오늘은 옵셔널 내부구조를 파해쳐보겠습니다! 옵셔널이 무엇인지에 대해서는 개발을 하신다면 다들 잘 알고 계실 거라 생각합니다! 오늘은 swift에서 제공되는 옵셔널의 내부구조를 한번 파해쳐보겠습니다. 주석까지 하면 전체 코드는 500줄이 넘기에 되기에 차근차근 살펴보겠습니다! @frozen public enum Optional : ~Copyable where Wrapped : ~Copyable { case none case some(Wrapped)} @frozen은 ABI 안전성을 보장하기 위해서라는데,,,ABI에 대해서는 나중에 더 상세히 다뤄보겠습니다!옵셔널은 열거형으로 정의되며, 두 가지 케이스로 정의 됩니다.1. none : 값이 없음을 나타냅니다. (nil)2. some..

안녕하세요! 이번 포스팅에서는 VC의 생명주기에 대해 정리해 보겠습니다. ViewController의 생명주기는 UIKit으로 개발을 해보신 분들이라면, 대부분이 아는 지식이지만 좀 더 상세히 다뤄보겠습니다. ViewController의 생명주기를 알아보기 전에, 선행되어야 하는 앱 생명주기에 대해 먼저 간단하게 정리해 보겠습니다. # 앱 생명주기란?앱 생명주기는 앱의 전반적인 실행과 종료에 관련된 생명주기입니다.총 5개의 단계로 이루어져 있으며,1. Not Running2. InActive3. Active4. Suspended5. Background의 단계로 이루어져 있습니다. iOS 13이 나오기 이전까지는 이 모든 과정을 AppDelegate에서 진행했었습니다. 하지만, MultiWindow ..

안녕하세요! 이번 포스팅은 iOS 앱 개발을 하며 안 쓸 수 없는 라이브러리 Kingfisher에 대해 톺아보려고 합니다. Kingfisher를 사용하는 방법은 많은 자료들이 있으니! 저는 이번 포스팅에서 캐싱 기능에 대해 정리해 보겠습니다. 먼저,Kingfisher란?먼저 공식문서를 살펴보겠습니다. 개발을 하다 Assets, System에 존재하지 않는 Url 형태의 이미지(웹으로부터의)를 서버를 통해 다운로드 및 캐싱할 때! 앱에서 편하게 사용할 수 있도록 제공하는 라이브러리입니다. https://github.com/onevcat/Kingfisher GitHub - onevcat/Kingfisher: A lightweight, pure-Swift library for downloading and c..

이번 포스팅은 Saving Data - UserDefault에 대해 정리해보려고 합니다! 우선, 앱 개발을 하다 보면 데이터를 저장하고 싶은 부분이 많이 필요할 텐데! 서버 통신 없이 간단한 값들에 대해 저장할 수 있도록 하는 Apple에서 제공해주는 Key - Value 형태의 기본 저장소입니다. 로그인 여부나 이메일, 닉네임, 성별 등 아주 간단한 값들에 대해 저장해 줄 수 있습니다. 애플 공식 문서에서도 설명하듯! 유저의 기본적인 저장소이며, key-value의 쌍으로 저장할 수 있습니다! https://developer.apple.com/documentation/foundation/userdefaults UserDefaults | Apple Developer DocumentationAn in..

안녕하세요, 이번 포스팅은 앱 Thinning에 대해 간단히 정리해 보려고 합니다! 이번에 iOS를 기초부터 다시 공부해볼수 있는 시간을 가져보고 있습니다.. 알면 알수록 새로운.. iOS의 세계인 듯 그래서 몰랐던, 새롭게 알게 됐던 내용들을 정리해 보고 다시 티스토리를 열심히 써보려 합니다!ㅎㅎ 먼저, 문서의 내용을 요약해 보면,,https://help.apple.com/xcode/mac/current/#/devbbdc5ce4f https://help.apple.com/xcode/mac/current/#/devbbdc5ce4fTo see this page, you must enable JavaScript. Pour afficher cette page, vous devez activer JavaScr..

이번 포스팅에서는 새롭게 공부하며 알게 된, MAC Catalyst에 대해 정리해보려고 합니다. 1. Mac Catalyst란?먼저 공식문서를 살펴보겠습니다!"Mac Catalyst는 Apple이 제공하는 기술로, iPad 앱을 macOS에서 실행할 수 있게 해 줍니다. 개발자들은 iOS와 macOS 플랫폼 간의 경계를 허물고, 더 넓은 사용자층에 도달할 수 있는 기회를 제공합니다. Catalyst는 기존의 UIKit를 활용하여 iPad 앱을 손쉽게 변환할 수 있도록 도와줍니다."라고 되어있습니다. 저도 아이폰, 애플워치, 아이패드, 맥북 등 많은 애플 기기들을 사용해보았지만, 맥북에서 사용가능한 어플의 수가 현저히 떨어진다고 생각하고 있습니다. 그래서 애플에서 이런 방법을 생각해내지 않았나.. ..