letswiftconf / newsletter

레츠스위프트 뉴스레터 아카이브
MIT License
452 stars 10 forks source link

제47호(2022년 1월 9일 발행 예정) #50

Closed godrm closed 2 years ago

godrm commented 2 years ago

2022년에 찾아뵙겠습니다 :)

godrm commented 2 years ago

애플

인앱 이벤트에서 분석기능 사용하기 https://developer.apple.com/news/?id=pa0x2dzk

하드웨어

새 맥북프로는 왜 못 생겼나? https://medium.com/@pierreald/why-is-the-new-macbook-pro-so-ugly-279ac0f73f89

일반

스포티파이 시스템 아키텍처 https://medium.com/interviewnoodle/spotify-system-architecture-6bb418db6084

언어 : Swift

중첩 객체 다루기 https://medium.com/@alessandromanilii/nested-object-in-swift-4cda290bfa18

스위프트 동시성에서 위험요소 피하기 https://medium.com/codex/concurrency-in-swift-avoiding-the-pitfalls-f4197b502775

JSON에서 불확실한 타입 파싱하는 방법 https://medium.com/@alonsoalvarez/parsing-indeterminate-types-with-decodable-and-either-enum-using-swift-93e6e1bc0c3a

Lazy Stored Property를 사용해야 하는 경우 https://medium.com/@simrankaurg555/what-is-a-lazy-stored-property-and-when-to-use-it-59ead216d41d

스위프트 동시성 연속성(Continuations)로 비동기 채널 구현하기 https://alejandromp.com/blog/building-a-channel-with-swift-concurrency-continuations/

개발자 삶을 편하게 만들어주는 스위프트 동시성 https://medium.com/swift-blondie/make-your-coding-life-easier-with-concurrency-in-swift-d2ba5fde6b1a

참조로 공유가능한 Dictionary 구현하기 - 근데 이렇게 쓸꺼면 그냥 NSDictionary를 쓰고 싶은데 말이죠 https://medium.com/@alessandromanilii/shareable-dictionary-in-swift-5d9b98e4f76c

제네릭 다루기 https://blog.devgenius.io/generics-in-swift-programming-pt-i-314d1ad58cca

순환 참조 피해서 AsyncStream으로 Task 사용하기 https://dimillian.medium.com/use-task-with-asyncstream-and-avoid-retain-cycle-4c92dddf30ef

옵셔널 변수를 if let foo { } 형태로 간단하게 처리할 수 있는 논의가 시작되고 PR이 올라왔네요. https://forums.swift.org/t/if-let-shorthand/54230

설계 구조 : 패턴

명령 패턴 배우기 https://medium.com/geekculture/learn-swift-command-design-pattern-in-3-minutes-ae2c9ddd2a51

async/await 표현 연속성으로 Facade 구현하기 https://toupper.medium.com/convert-your-swift-facades-to-the-new-async-await-syntax-using-continuations-d4a7bda4611b

SwiftUI MVVM 클린 아키텍처 https://medium.com/macoclock/swiftui-mvvm-clean-architecture-e976ad3577b5

뷰 프로그래밍 : SwiftUI

버튼 커스터마이징하기 https://betterprogramming.pub/customizing-buttons-in-swiftui-5fc2916d17a5

Omnitrix 워치 앱 만들기 https://medium.com/@amol.kmr05/create-an-omnitrix-app-for-your-apple-watch-using-swiftui-d694a9c5fb80

문서 스캐너 구현하기 https://itnext.io/document-scanner-in-swiftui-709753af367b

Compose와 SwiftUI를 위한 화면 템플릿 https://medium.com/mobile-at-octopus-energy/creating-better-mobile-apps-with-screen-templates-using-compose-swiftui-kmm-8dd7ce801c91

TextField 다루는 법에 대한 상세한 소개 https://devtechie.medium.com/swiftui-textfield-a-closer-look-2257fd3053bb

SwiftUI를 위해 보편적인 4개 프로토콜 https://betterprogramming.pub/4-swift-protocols-commonly-used-in-swiftui-b3859af9debd

아주 가벼운 카메라 앱 만들기 https://twissmueller.medium.com/building-a-lightweight-camera-app-in-swiftui-66db47b3537f

양방향 바인딩 https://blog.devgenius.io/two-way-binding-n-swiftui-52aaee56e702

워드 클라우드 구현하기 https://story.tomasen.org/word-cloud-in-swiftui-eee3d69f7d22

SwiftUI는 즐겁지만, NotSwiftUI가 더 좋더라 - 여기서 NotSwiftUI는 저자가 UIKit으로 만든 SwiftUI 기능 모음입니다. https://betterprogramming.pub/swiftui-is-fun-but-notswiftui-is-better-c884cdea2423

리액트 네이티브 개발자가 SwiftUI 앱 만든 후기 https://medium.com/async/a-react-native-engineer-builds-a-swiftui-app-the-good-the-bad-and-the-bee871bb9baa

비동기 Task로 동작하는 Button 다루기 https://www.swiftbysundell.com/articles/building-an-async-swiftui-button/

node.js로 간단한 백엔드 API 지원하는 환율 앱 만들기 https://erdemildiz.medium.com/swiftui-and-nodejs-communication-93c022d33dc6

뷰 프로그래밍 : UIKit

XIB 화면을 루트 내비게이션으로 지정하기 https://agnelselvan007.medium.com/how-to-make-your-xib-your-root-navigation-f4cc40d1b32e

2세대 Siri Remote 회전 제스처 다루기 https://medium.com/zattoo_tech/capture-circular-gestures-from-siri-remote-2nd-generation-418155ecd089

UIView를 위해 SwiftUI PreviewProvider 제공하기 https://betterprogramming.pub/swiftui-preview-provider-for-uikit-3dd089d77915

다단계(cascading을 이렇게 불러봤습니다) 환경 액션 처리하기 https://www.magnuskahr.dk/posts/2021/12/cascading-environment-actions-in-swiftui/

SwiftUI와 UIKit 비교하기 https://blog.devgenius.io/swiftui-vs-uikit-detailed-comparison-e2afdf95e4d9

프레임워크

앱 라이프사이클 메소드 정리 https://levelup.gitconnected.com/what-are-ios-app-lifecycle-methods-cc1c8c4dcb7f

ObservableObject 프로토콜 집중 리뷰 https://medium.com/expedia-group-tech/observableobject-published-and-protocols-with-swiftui-uikit-and-cuckoo-cce69a47f08a

웹소켓 다루기 https://khanumair-9430.medium.com/websockets-in-swift-ios-development-9af2f83ae5b9

재호출 가능한 구조로 API 만들기 https://towardsdev.com/retriable-api-calls-with-modern-swift-202c8e9ef5bb

모야와 알라모파이어 의존성 떠나보내기 https://ronanociosoig.medium.com/goodbye-moya-alamofire-simplify-your-dependancies-cff5dd649e91

보이스오버로 접근성 시작하기 | 다이나믹 타입 다루기도 같이 읽어보세요. 이 사이트 자료들이 무지 좋습니다 https://www.basbroek.nl/getting-started-voiceover https://www.basbroek.nl/getting-started-dynamic-type

100ms.live SDK로 클럽하우스 앱 만들기. 오디오만 할 경우 1만분까지 무료라서 시도해 볼만 하겠네요 https://medium.com/@100ms/how-to-build-an-audio-app-like-clubhouse-for-ios-b7054254bd6d

CrytoKit으로 암호학 해시 함수 만들기 https://tanaschita.com/20220105-using-hash-functions-in-swift/

개발환경

타입에 안전한 에셋 다루기 https://runhum.medium.com/type-safe-assets-in-swift-798cab38f221

XCConfig로 개발환경 설정 분리하기 https://medium.com/@daviddvd19/configurations-and-code-a-way-to-separate-them-ios-cd4d18f5a7cb

아이패드 스위프트 플레이그라운드에서 도큐멘트-기반 앱 만들기 https://rambo.codes/posts/2021-12-28-a-document-based-app-in-swift-playgrounds-for-ipad/

스위프트 플레이그라운드 프로젝트에 커버 이미지 추가하기 https://ataberkturan.dev/how-to-add-cover-image-to-swift-playgrounds-project-354ebcd86fcc

스위프트 패키지에 코어 데이터 추가하기 https://betterprogramming.pub/core-data-in-a-swift-package-86bf759c3b6

SF 심볼을 사용할 경우 빌드 시간이 달라지는 것을 실험한 결과 https://hacknicity.medium.com/xcode-build-times-with-custom-sf-symbols-58ebdd92bc43

포인트프리에서 라이브러리 실행중에 fatalError보다 겸손한 워닝을 보여주는 방법을 보여줍니다 https://www.pointfree.co/blog/posts/70-unobtrusive-runtime-warnings-for-libraries

UIFocusLoopDebuggerEnabled 값으로 UIKit 포커스 순서를 디버깅할 수 있다네요 https://twitter.com/stroughtonsmith/status/1473669534712274944

테스트

4거리 신호등처럼 iOS 테스트하기 https://medium.com/vattenfall-tech/ios-testing-4-crossroads-technique-part-1-a842ce11795

복구 가능한 precondition 처리하기 https://bootstragram.com/blog/swift-precondition-that-throws/

UIViewController 와 Decorator로 단위 테스트하기 https://medium.com/nerd-for-tech/uiviewcontroller-decorator-unit-test-328ede4593ed

테스트 가능한 @AppStorage https://medium.com/@petrpavlik/testable-appstorage-c825746d4c39

비동기 방식 단위 테스트하기 https://semaphoreci.medium.com/asynchronous-testing-in-swift-c4d56a6e40a3

도구/오픈소스

유명한 맥용 Diff 앱 Kaleidoscope로 XCTest 결과 비교하기 https://blog.kaleidoscope.app/2022/01/04/xctest-results/

전수열님 then에서 영향받은 Flow 오픈소스네요. .then, .let, .do 등 가볍고 달콤한 문법을 모아놨습니다 https://github.com/alexito4/Flow

Support 고객지원 화면을 만들어주는 Supporter 도구 https://goodsnooze.gumroad.com/l/supporter

OpenAPI 스펙에 맞춰서 동작하는 코드를 생성해주는 오픈소스 CreateAPI | 저장소 https://kean.blog/post/create-API https://github.com/kean/CreateAPI

Mac Catalyst 관련 자료가 정말 부족한데 영국 개발자들이 모아놓은 게 있네요 https://github.com/stars/steventroughtonsmith/lists/mac-catalyst-examples

딱 한 번만 실행되야 하는 경우를 위한 RunOnce 오픈소스 | 저장소 https://medium.com/thumbtack-engineering/introducing-swift-runonce-c653a9d4c535 https://github.com/thumbtack/SwiftRunOnce

디자인

영감을 주는 앱 디자인 #39 | #38 https://theymakedesign.com/app-design-inspiration-39-1b700dd8fb0a https://theymakedesign.com/app-design-inspiration-38-135ee8e0b793

영감을 주는 앱 개발 #108 | #107 https://theymakedesign.com/app-development-inspiration-108-79ff392b55f2 https://theymakedesign.com/app-development-inspiration-107-222517cb6a5

피그마를 위한 iOS15 UI Kit https://www.figma.com/community/file/984106517828363349

godrm commented 2 years ago

집 이사 준비로 작업이 늦었네요. https://stib.ee/Oka4

M1zz commented 2 years ago

@godrm 47호 링크로 들어가면 49호로 표기되어 있습니다!

godrm commented 2 years ago

@godrm 47호 링크로 들어가면 49호로 표기되어 있습니다!

저런 ㅜㅜ 제가 47호가 맞는데 49호라고 잘못 표기했나봅니다 메일 본문 수정이 안되서 다음호에 표기하도록 하겠습니다.