728x90

분류 전체보기 298

Xcodes.app

안녕하세요. Xcode의 여러 버전을 쉽게 다운로드 받을 수 있는 macOS 앱이 있어서 소개해보려고 해요. Xcodes라는 앱이고, github 주소는 여기 입니다. 터미널에 아래 명령어를 입력해주면 설치가 끝나요. brew install --cask xcodes 앱을 실행시키면 베타 버전을 포함한 Xcode의 모든 버전이 리스트 되어 있고, 무엇보다 INSTALL 버튼을 누르면 다운로드, 압축 해제, 설치까지 모두 자동으로 해줘서 매우 편리하더라구요ㅎㅎ Xcode에 대한 정보도 잘 나와있고, uninstall도 가능합니다. 또한 Xcodes 앱을 사용하는 것이 일반적으로 Xcode.xip를 다운받아서 압축을 푸는 것보다 속도가 70% 빠르다고 합니다. 👍 (저도 직접 설치해봤는데 다운로드부터 시작해서..

Xcode 2022.04.03

External Link Account Entitlement 접근 권한 요청 가능

안녕하세요. 2022년 03월 30일부터 Reader 앱 개발자는 External Link Account Entitlement 접근 권한 요청이 가능하다고 합니다. 여기서 Reader 앱이란 잡지, 신문, 책, 오디오, 음악, 비디오 같은 디지털 콘텐츠를 메인 기능으로 제공하는 앱을 말해요. External Link Account Entitlement 권한을 사용하면, 사용자는 개발자가 소유하거나 관리하고 있는 웹 사이트에서 계정을 만들거나 관리할 수 있게 됩니다. ## 권한 요청 자격 BundleID 마다 Entitlement를 요청해야 합니다. 그리고 앱이 아래 자격을 만족해야지만 요청할 수 있다고 해요. 잡지, 신문, 책, 오디오, 음악, 비디오 같은 디지털 콘텐츠가 앱의 메인 기능일 때 사용자가..

News 2022.04.02

Struct와 Class

안녕하세요. 이번에는 기초적이면서도 중요한 Struct와 Class의 공통점과 차이점에 대해 간략하게 정리해보려고 합니다. # 1. Struct와 Class 공통점 value를 저장할 프로퍼티를 정의할 수 있습니다. method를 정의할 수 있습니다. subscript syntax(.)으로 value에 접근이 가능합니다. 생성자(initializer)를 정의할 수 있습니다. 확장이 가능합니다. 프로토콜 채택이 가능합니다. 사실 공통점은 뻔한 얘기들이라... 다들 알고 계실 것 같아요ㅎㅎ 더욱 중요한 차이점에 대해 알아볼게요. # 2. Struct와 Class 차이점 ## 2.1 클래스는 상속이 가능합니다. class Animal { var age: Int = 0 } class Person: Animal ..

Swift 2022.04.02

Gesture

안녕하세요. 이번에는 SwiftUI의 Gesture에 대해 알아볼게요. # 1. 제스처 추가 특정 뷰에 제스처를 추가하려면, Gesture를 생성 및 설정한 뒤에, gesture(_:including:) 수식어를 사용해줍니다. struct ShapeTapView: View { var body: some View { let tap = TapGesture()// 제스처 생성 .onEnded { _ in// 제스처 설정 print("View tapped!") } return Circle() .fill(Color.blue) .frame(width: 100, height: 100, alignment: .center) .gesture(tap)// 제스처 추가 } } 만약 아래처럼 VStack에는 gesture(_:..

SwiftUI 2022.04.01

앱의 모든 화면은 Scroll View로 구성해야 한다.

안녕하세요. 흥미로운 포스트를 봐서, 그 내용을 공유해보려고 해요. - https://lickability.com/blog/every-screen-in-your-app-should-be-a-scrolling-view/ Every Screen in Your App Should Be a Scrolling View In this blog post, I’m going to tell you why every major screen in your application should be embedded in a scrolling view. lickability.com 위 포스트에서는 UIKit의 UIScrollView, UITableView, UICollectionView 또는 SwiftUI의 ScrollView, ..

기타 2022.03.29

UIKeyboardLayoutGuide

안녕하세요. 이번에는 iOS 15부터 추가된 UIKeyboardLayoutGuide 사용법에 대해서 간단하게 알아볼게요. # 1. UIKeyboardLayoutGuide UITextField를 쓰면서 keyboard가 뷰를 가리는 이슈를 한 번쯤은 겪으셨을 것 같아요. 그 이슈를 해결하기 위해 저희는 꽤나 복잡한(사실 귀찮은...) 작업들을 해왔어요. 1. Notification을 등록해주고 2. 키보드가 화면에 출력될 때 3. 뷰의 레이아웃(offset)을 조절한다. 그런데 iOS 15부턴 이런 일들이 필요없게 되었습니다. UIKeyboardLayoutGuide라는 클래스가 새로 나왔기 때문이죠. 대략적으로 살펴보면, UIKeyboardLayoutGuide는 UIView의 프로퍼티이며, 대부분의 경우 ..

UIKit 2022.03.29

[오픈소스] Bagbutik

안녕하세요. 이번에는 Bagbutik라는 오픈소스를 직접 써보는 시간을 가져볼게요. # 1. Bagbutik? Generated Swift code for the App Store Connect API based on the official OpenAPI spec. Bagbitik은 OpenAPI 기반의 App Store Connect API를 위한 Swift 코드로 생성해준다. 한 마디로 App Store Connect API를 Swift로 호출해줄 수 있는 모듈인 것이죠. 그리고 Bagbutik의 가장 큰 장점은 Github Action을 활용해서 주기적으로 API 스펙을 확인하고, App Store Connect API 스펙이 변경되었을 때, Github Action이 자동으로 변경사항에 대해서 P..

iOS 2022.03.28

Xcode Playground에서 Swift Package와 Assets 사용하는 방법

안녕하세요. 저는 코드 몇 줄 간단하게 확인해보고 싶을 때 Xcode Playground를 자주 애용하는 편입니다. 그래서 어떤 Swift 오픈소스를 Xcode Playground에서 간단하게 찍먹 해보려고 했더니, Swift Package를 추가하는 메뉴가 안보이더라구요...?? 허헣... 그래서 이번 일을 계기로, Xcode Playground에서 Swift Package를 사용할 수 있는 방법에 대해 알아보고, 추가로 Xcode Playground에 Assets도 추가해서 사용해보는 시간을 가져볼게요. # 1. Xcode Playground에서 Swift Package 사용하기 우선 결론부터 말을 하자면... Xcode Playground만 가지고는 Swift Package를 추가할 수 없습니다....

기타 2022.03.27

Swift 5.6 호환성 이슈를 해결한 SwiftLint 0.46.5 배포

안녕하세요. 최근에 Xcode 13.3이 정식 배포가 되었는데요, Xcode 13.3에 포함되어 있는 Swift 5.6에 호환되도록 SwiftLint 0.46.5가 수정 & 배포가 되었다고 합니다. 추가로 SwiftLint 0.47.0에서는 deployment_target 규칙이 Swift 5.6에 추가된 #unavailable 키워드도 지원해주니, Xcode 13.3으로 업데이트하면서 SwiftLint도 0.47.0 이상으로 업데이트해주면 좋을 것 같아요!! (나중에 SwiftLint 소개글도 써서 공유드릴게요!! ㅎㅎ) ## 참고 - https://twitter.com/simjp/status/1501572343667249154 JP Simard on Twitter “The latest stable r..

News 2022.03.26

Swift bugs are moving to GitHub Issues

안녕하세요. Swift 오픈 프로젝트의 이슈들이 기존에는 JIRA에 위치하고 있었는데, 개발자들의 더 좋은 참여 환경을 위해서 Github로 옮기고 있다고 해요! JIRA 이슈는 Github apple/swift repository 이슈로 복사가 될 예정이고 언젠가 기존 bugs.swift.org는 Github issue로 리다이렉트 될 것이라고 해요!! ## 참고 - https://forums.swift.org/t/swift-bugs-are-moving-to-github-issues-and-we-need-your-help/56125 Swift bugs are moving to GitHub Issues and we need your help! Swift bugs are moving to GitHub Is..

News 2022.03.26