일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Swift
- 라이브러리
- Custom View
- 코코아팟 만들기
- 리액터킷
- ios
- DispatchQueue
- LeetCode 1
- 코코아팟
- UINavigationController
- Remote Url
- hugging
- Swift Package Manager
- 비동기
- autoLayout
- compression resistance
- priority
- onAppear
- 커스텀 뷰
- Two Sum
- 뷰 커스텀
- 델레게이트
- email regex
- view modifier
- ReactorKit
- imageView shadow
- Delegate Pattern
- viewAppear
- CornerRadius
- Cocoapods
- Today
- Total
목록전체 글 (26)
Tong's Blog
안녕하세요. 지난 포스트에서는 자기만의 라이브러리를 Cocoapods을 통해 만들고 배포하는 법에 대해 알아보았습니다. 하지만 SPM(Swift Package Manager)가 나타나고 많은 라이브러리들이 SPM을 지원하기 시작했습니다. 개인적으로 서서히 SPM으로 라이브러리 의존성이 넘어가지 않을까 생각하고 있습니다. 그러면 이미 만들어둔 Cocoapods에 SPM도 같이 사용할 수 있게끔 만드는 방법을 알아보겠습니다. 우선 터미널로 우리가 지난번에 만들어둔 Cocoapods 라이브러리 프로젝트 폴더로 이동합니다. 그리고 다음의 명령어를 입력합니다. swift package init 그러면 프로젝트 폴더가 다음과 같이 보일 겁니다. 이제 Package.swift 파일을 통해 SPM을 위한 프로젝트를 열..
안녕하세요. 오늘의 포스트는 자신만의 Swift 라이브러리를 제작해보는 것에 대해 다뤄보겠습니다. iOS 공부를 하시다 보면 UIKit 같은 빌트인 Framework외에 Thrid-Party 라이브러리를 사용하게 됩니다. 대표적으로 Alamofire, Snapkit, Kingfisher등이 있습니다. 이런 라이브러리를 사용하는 방법은 Carthage나 최근에 나온 SPM(Swift Package Manager) 방법이 있지만 대부분의 경우 Cocoapods을 통해 프로젝트와 라이브러리를 관리하고 있을 겁니다. 그래서 저도 Cocoapods 라이브러리를 제작하는 것을 공유하고 해당 라이브러리에 SPM까지 적용시키는 법을 공유드리려고 합니다. 우선 라이브러리 프로젝트를 생성해보십니다. 터미널에서 프로젝트가 ..
안녕하세요. 오늘은 우리가 자주 보고 (import Foundation) 혹은 우리도 모르게 쓰고 있지만 (import UIKit) 실제로 어떤 역할을 하고 있는지 잘 모르고 쓰게 되는 Framework인 Foundation에 대해 간단히 정리해보려고 합니다. 개요 https://developer.apple.com/documentation/foundation Apple Developer Documentation developer.apple.com 간단히 번역하자면, Foundation Framework는 데이터 저장, text 처리, 날짜 및 시간 계산, 정렬 및 필터, 네트워킹을 포함한 앱 기능과 Frameworks의 기본이 되는 Framework라고 합니다. 사실상 우리가 Array나 데이터 타입을 ..
동적 계획법이란 수학과 컴퓨터 공학, 그리고 경제학에서 동적 계획법(動的計劃法, dynamic programming)이란 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 이것은 부분 문제 반복과 최적 부분 구조를 가지고 있는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. - 위키피디아 (https://ko.wikipedia.org/wiki/%EB%8F%99%EC%A0%81_%EA%B3%84%ED%9A%8D%EB%B2%95) - 그럼 동적 계획법은 어떤 경우에 사용하게될까요? Dynamic Programming은 작은 문제들로 나눈 뒤 합쳐서 결과를 얻는다는 점에서 분할 정복과 비슷한 방식이지만 분할 정복에서는 중복될 수 있는 부분을 Dynamic Program..
안녕하세요. 오늘은 이미지를 넣는 UI Componenet인 UIImageView에 대해서 알아보고 구현 시 몇가지 팁을 공유드리려고 합니다. 1. UIImageView 개요 우선 UIImageView의 정의를 문서를 통해 알아봐야겠죠. developer.apple.com/documentation/uikit/uiimageview Apple Developer Documentation developer.apple.com 개요에서는 UIImage 객체를 사용하여 JPEG 및 PNG와 같은 표준 이미지 파일을 표시할 수 있고 애니메이션 이미지도 애니메이션 시작과 끝을 지정해서 사용할 수 있다고 합니다. (이건 저도 처음 알았네요. 근데 애니메이션 이미지가 무엇을 말할까요..gif?) 그럼 구현 예시를 우선 볼까..
안녕하세요. 오랜만에 알고리즘 문제 포스트를 하게 되었습니다. 프로젝트를 시작한 이후로 알고리즘을 소홀히 하면서 감이 자꾸 떨어져서 다시 알고리즘도 틈틈히 해보려고 합니다. 문제는 블라인드에서 추천하는 문제들부터 차근차근 풀어보려고 합니다. 아 그리고 이번 포스트부터 Swift와 C++ 두가지 버전으로 풀어보겠습니다. 오늘의 문제는 Two Sum이고 LeetCode의 첫번째 문제입니다. (링크: https://leetcode.com/problems/two-sum/) 1. Int형 배열에서 2개의 숫자의 합이 target(Int) 되는 배열의 index를 return 하기 우선 가장 쉽게 생각해 볼 수 있는 방법은 Brute Force, 간단히 말해 모든 경우의 수를 탐색하는 방법으로 작성해보겠습니다. B..
안녕하세요. 오늘은 Custom View Class를 만들기를 해보려고 합니다. 우선 Custom View 라는 건 어떤 것을 말하는 걸까요? (아 시작전에 저는 이번 포스트에서 xib로 Custom View를 만드는 방법을 포함하지 않습니다. Storyboard와 xib로 Custom View 구현하는 것을 찾으신다면 다른 좋은 포스트들에 잘 설명 되어 있으니, 그 곳에서 찾아보시면 될 거 같습니다.) 예를 들어 우리가 만드는 어플리케이션에 간단한 프로필 뷰가 있다고 가정해보겠습니다. 간단히 이런식으로 구현했다고 가정해봅니다. 어느정도 iOS를 공부하신 분들이라면 UIImageView 하나에, UILabel이 2개가 필요하다는 것을 알 수 있을 겁니다. 이 화면에 우리 프로젝트에 첫번째가 되는 화면이라..
안녕하세요. 오늘은 Operation(NSOperation)에 대해 알아보겠습니다. 오늘도 시작은 공식문서를 통해 알아보겠습니다. https://developer.apple.com/documentation/foundation/operation Apple Developer Documentation developer.apple.com 개요(OverView)만 간단히 살펴보면, Operation은 추상 클래스라 직접 사용할 순 없지만 Operation을 수행하는데 필요한 중요한 로직을 포함하고 있다고 합니다. 또한 start() 함수를 통해 직접적으로 사용할 순 있지만, 일반적으로 OperationQueue를 통해 실행합니다. 역시나 문서만 보고서는 어떤 개념인지 알기가 어렵네요... 우선 Operation이..