Programing/iOS
-
[WWDC 2018] Behind the Scenes of the Xcode Build ProcessPrograming/iOS 2021. 9. 15. 21:28
안녕하세요, 5anniversary입니다! 오늘은 18년도에 나온 세션인 Behind the Scenes of the Xcode Build Process를 다뤄보려고 합니다. 이번 세션에서는 Xcode에서 빌드를 할 때 돌아가는 프로세스에 대해서 알아봅시다! Xcode에서 command + B를 누르게 될 경우에 Xcode에서 표현되는 다양한 파일들을 우리가 만들고, 사용하는 어플리케이션으로 만들기 위해서 어떤 일이 일어날까요?! 우선 이렇게 다양한 확장자, 역할을 가진 파일들이 있을 거예요. 세션에서는 간단하게 돌아가는 순서를 보여주었는데요! 왼쪽에서부터 오른쪽으로 가는 순서대로 빌드가 된다고 합니다! 빌드는 어떻게 되는지 명령어를 간단하게 보여주기도 했는데요. 이런 명령어를 통해서 빌드가 된다고 합니..
-
[WWDC 2020] Advances in UICollectionViewPrograming/iOS 2021. 8. 11. 21:50
안녕하세요! 🙋♂️ 5anniversary입니다! 이번 포스팅에서는 WWDC 2020에서 소개된 UICollectonView를 좀 더 잘 사용하는 방법에 대해서 알려주는 세션! Advances in UICollectionView 를 볼거에요!! UICollectionView에 사용되는 API는 크게 3가지가 있는데요, iOS 12 전까지 사용되던 API들이구요, 요 API들이 iOS 13 에서 소개된 API입니다. 그리고 iOS 14에서 소개된 API인데요, 이번 시간에서는 이 차이와 사용 방법에 대해 간단히 알아볼거같아요! 이번 세션에서 API들에 대해 설명을 해주면서 보여주는 화면인데요, 첫번째 라인에는 가로형, 두번째는 확장이 가능한 expendable Cell이 있어요 해당 부분은 iOS 14에..
-
[WWDC 2021] What’s new in AVFoundationPrograming/iOS 2021. 7. 28. 21:59
안녕하세요! 🙋♂️ 5anniversary 입니다! 이번 포스팅에서는 AVFoundation에 이번 WWDC에서 어떤것이 추가 되었는지 살펴볼게요...! 이번에 세션에서 다뤄주는 토픽은 3가지가 있는데요 1. AVAsset async inspection 이번 WWDC 21에서 정식으로 공개된 async 가 적용된 inspection이 추가가 되었습니다. async의 역할에 대해서는 이전 포스팅 에서 다루어 넘어가도록 하겠습니다. AVAsset 에 있는 항목들을 받아볼수가 있는데요 이런 항목들을 AVAsset을 받아오면서 함께 받아올수가 있습니다 let asset = AVAsset(url: URL(string: "movieURL")!) do { let duration = try await asset.lo..
-
[WWDC 2021] async / awaitPrograming/iOS 2021. 6. 30. 18:19
안녕하세요, 오랜만에... 글을 작성해봅니다 빠르게~ 본론으로 들어가봅시다. 이번 WWDC전부터 많은 사람들의 관심을 끌었던... async/await를 다뤄보려고 합니다. 세션 이번에 async/await가 나온 이유중에 가장 큰 이유는 무엇일까요?? 제가 가장 좋아하는 방법은 예시를 하나하나 보면서 이해하는건데요! 세션에서 제공되는 예시를 통해 보죠! 먼저 사용할 흐름도를 보고 코드를 보러갑시다! 기존에 다른 비동기 처리 로직 라이브러리를 사용하지 않고 사진을 로딩하는 코드 보자면...? func fetchThumbnail(for id: String, completion: @escaping (UIImage?, Error?) -> Void) { let request = thumbnailURLReques..
-
[iOS] fastlane🚀으로 TestFlight/deploy 자동화 적용해보기!!Programing/iOS 2020. 10. 21. 03:30
안녕하세요~! 5anniversary입니다!! 이번 포스팅에서는 fastlane을 통해 배포(?) 자동화 하는 법을 알아보도록 할게요~!~! 아직 학생인지라... 정해진 프로세스 없이 iOS 개발을 해왔는데요~! 이번에 마루 앱을 개발하게 되면서 홍보를 위해서, 그리고 팀원들과의 소통을 위해 지속적으로 결과물이 공유되어야한다는 필요성을 느끼게 되었어요... 그래서 App Store Connect 검수 알림에 대한 글도 작성하게 되었구요!! 그런데 추가적으로 위 글과 별개로 fastlane을 선택하고 사용하게 된 계기는 이전까지 배포를 하는 과정에서 쓸데없이 버려지는 시간들이 너무 크게 느껴지고, 팀원들과 공유를 목적으로 사용하는 슬랙에서 좀 더 효과적으로 자동화에 대한 필요로 사용을 하게 되었어요!! 자..
-
[iOS] custom Font 쉽게 적용하기!!Programing/iOS 2020. 10. 16. 14:26
안녕하세요!! 5anniversary에오~!😆 이번 시간에는 custom Font를 좀 더 쉽게 사용해보려고 합니다!! 우선 커스텀 폰트 파일을 가져와볼까요?? 이번 프로젝트에서는 Spoqa 폰트를 사용했는데요 우선 프로젝트에 import 해주세요!! 다음으로는 info.plist에 font 프로퍼티를 넣어줄게요!! 그리고 enum 파일을 만들어볼까요?? import UIKit enum Font: String { case regular = "SpoqaHanSans-Regular" case bold = "SpoqaHanSans-Bold" case light = "SpoqaHanSans-Light" case thin = "SpoqaHanSans-Thin" func of(size: CGFloat) -> UIF..
-
[iOS] SwiftLint 적용해보기!!Programing/iOS 2020. 10. 9. 15:33
안녕하세요, 5anniversary입니다~~!! 이번에 다시 새롭게 진행하는 프로젝트에서 한번 SwiftLint를 적용해보려고해요!! 이번에 적용해보려고 하는 이유는 말이죠!! 여태까지 진행해왔던 프로젝트에서 협업을 진행했었는데... 모두 함께 정해둔 코드룰을 깜빡하고 지키지 못하는 경우가 종종 나오더라구요... 그래서!! 한번 적용해보려구합니다!! 이번시간에는 위에서 말한 룰을 정하고 지켜주게 도와주는 SwiftLint를 적용해보는 포스팅을 해보겠습니다!! 이제 하나씩 하나씩 진행해볼까요~!~! 링크 를 참고해 진행해볼거에요~!~! 1. pod을 해주세요!! pod 'SwiftLint' 2. Target > build phase > + > new run script phase "${PODS_ROOT}/..
-
[iOS] Toaster 만들기Programing/iOS 2020. 9. 25. 16:17
안녕하세요~!~! 5anniversary입니다!! 이번 시간에는 Toaster🍞를 만들어보려고 해요!! 제가 알기로는 안드로이드에서는 Toaster기능이 있는 걸로 아는데 아쉽게도 iOS에서는 없어요...ㅠㅜ 사용자에게 특정한 이벤트가 일어났다는 것을 효과적으로 알려준다고 알고 있는 게 Toaster라고 알고 있는데 말이에요 😢 자 그럼 한번 Toaster를 만들어보도록 하죠!! 우선 저는 UIViewControlle의 extension으로 만들어줄 거예요!! 우선 이 메서드에서 들어가게 될 컴포넌트는 두 개에요!! UILabel과 UIView에요 그리고 파라미터 값은 7가지에요!! 물론 사용하시는 분들이 마음대로 커스텀해서 바꿔주셔도 됩니다!! 파라미터값은 1. 텍스트에 들어갈 message 2. 사용..