letswiftconf / newsletter

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

제24호(2021년 1월 24일 발행) #27

Closed godrm closed 3 years ago

godrm commented 3 years ago

얼른 분류 자동화하고 싶네요.

godrm commented 3 years ago

Objective-C를 만드신 Brad Cox 어르신이 돌아가셨네요 https://www.legacy.com/us/obituaries/scnow/name/brad-cox-obituary?pid=197454225

godrm commented 3 years ago

스포티파이에서 Xcode 빌드 정보와 로그를 분석해서 생산성을 높이기 위한 방법, 오픈소스 도구 XCMetrics를 공개했습니다. 매우 흥미로운 접근이네요. https://engineering.atspotify.com/2021/01/20/introducing-xcmetrics-our-all-in-one-tool-for-tracking-xcode-build-metrics/ https://github.com/spotify/XCMetrics

godrm commented 3 years ago

일반

메뉴바 앱 5개 추천 - MagNet, LittleIpsum, Icons8 Lite, ColorSnapper, Paste https://medium.com/better-programming/the-top-5-menu-bar-apps-for-developers-on-macos-6e61c7b6a2a3

왜 플러터는 다음 대세가 아닌가 https://medium.com/better-programming/my-response-why-flutter-isnt-the-next-big-thing-article-69f1f3317db1

플러터와 비교 https://worksdelight.medium.com/dart-flutter-vs-swift-native-ios-side-by-side-comparison-for-ios-development-c6ae5ae36d98

함수형 프로그래밍 그림으로 알아보기 https://medium.com/better-programming/simplified-functionaldd-programming-fdc07b4b1084 스위프트와 함수형 프로그래밍 https://medium.com/student-beans/functional-programming-in-swift-758968a48cbc

맥에서 AWS Lightsail로 윈도우즈 10 사용하기 https://medium.com/sungkwang-engineering/macos에서-pc-없이-aws-lightsail을-사용하여-windows-10-사용하기-89379b35bcac

애플

스티브 워즈니악처럼 혁신하자 https://medium.com/better-programming/innovate-like-steve-wozniak-8fca7a86c4e9

0296 async/await 제안 채택 https://github.com/apple/swift-evolution/blob/main/proposals/0296-async-await.md 콜백부터 async/await 까지 https://levelup.gitconnected.com/from-callbacks-to-async-await-in-swift-aebd38ab0f13

언어 : Swift

프로토콜에 디폴트 인자값 지정하기 https://stevenpcurtis.medium.com/overcoming-default-arguments-in-a-protocol-27427b9ed275

고성능 스위프트 작성 방식 파트1 https://shobhitgupta-27686.medium.com/writing-high-performance-swift-code-part1-a25749ef21ba

Private 속성을 로그로 추척하기 https://olegdreyman.medium.com/keep-private-information-out-of-your-logs-with-swift-bbd2fbcd9a40

효과적인 enum 활용법 https://medium.com/swlh/use-enums-effectively-fe2d73b7ed28

subscripts 숨겨진 비밀 https://medium.com/swlh/the-secret-life-of-swift-subscripts-9740fbe8d92f

Autoreleasepool로 메모리 제거하기 https://medium.com/mediate-tech/cleaning-memory-footprint-with-the-autoreleasepool-in-swift-71ff983b22aa

프로퍼티 래퍼로 의존성 주입하기 https://medium.com/@anuragajwani/dependency-injection-in-ios-and-swift-using-property-wrappers-f411117cfdcf

설계 구조 : 패턴

스위프트 컴포저블 아키텍처 : 상태 테스트하기 https://riccardocipolleschi.medium.com/an-app-with-sca-state-testing-1a4d2519d9ff

Lotti 주도 UI 개발 구조 https://medium.com/clario/a-lottie-driven-ui-architecture-for-macos-ios-applications-c3380989c885

정적 팩토리 패턴 https://medium.com/swlh/static-factory-pattern-f1d4897ebc3d

MVC vc MVVM https://yuvrajkale.medium.com/mvc-vs-mvvm-in-swift-addbceac8b3c

MVVM 아키텍처 https://smriti-arora-tech.medium.com/mvvm-architecture-for-ios-6d78794e13d8

MVVM 사용하면서 행복했다 https://toplayoutguide.medium.com/im-only-happy-when-it-s-mvvm-527a3fafec39

아답터 패턴 https://levelup.gitconnected.com/adapter-pattern-in-swift-b6403cfa0a78

멀티스레드에서 안전한 싱글톤 구현하기 https://sachithrasiriwardhane.medium.com/thread-safe-singletons-and-their-usage-in-swift-c992d34d85dd

확장성을 고려한 VIP 아키텍처 https://medium.com/swlh/building-scalable-ios-application-using-vip-architecture-pattern-cleanswift-919b633521e6

뷰 프로그래밍 : SwiftUI

SwiftUI가 POP를 죽이는가? https://medium.com/swlh/did-swiftui-just-kill-protocol-oriented-programming-c09c2787172

SwiftUI 냐 UIKit 이냐 https://aswiftlytiltingplanet.medium.com/swiftui-or-uikit-in-2021-ef138e64ed60 https://medium.com/@parakhharshit/swiftui-or-uikit-for-new-projects-2c4ad4c00b6e

왜 SwiftUI를 배워야 하나 https://medium.com/swlh/why-you-should-learn-swiftui-in-2021-b81c5ff46230

숫자 입력을 위한 텍스트 필드 만들기 https://medium.com/better-programming/build-a-textfield-for-numbers-in-swiftui-21030b58a41

부모나 형제 뷰에게 좌표정보 전달하기 https://mobilefactory.medium.com/passing-geometry-information-to-parent-sibling-views-in-swiftui-c2fff433afc1

옵셔널 뷰빌더 클로저 https://matteo-puccinelli.medium.com/optional-viewbuilder-closures-in-swiftui-8b7a632648f0

3D 카드 스크롤 애니메이션 https://medium.com/better-programming/build-a-3d-card-scrolling-animation-in-swiftui-337c123fce73

피커 만들기 https://whywhyminty.medium.com/swiftui-advanced-be-picky-a390c2b53422

AnimatablePair 로 Shape 애니메이션하기 https://medium.com/better-programming/animating-shapes-using-animationpair-in-swiftui-cedbb227e4c6

연결된 파티클 애니메이션 https://medium.com/swlh/plexus-effect-swift-a1b478b4d9fa

로딩중에 플레이스홀더 보여주기 https://medium.com/better-programming/using-placeholders-while-loading-data-in-swiftui-ef6e4b8782bb

커스텀 제스처 https://medium.com/better-programming/custom-gestures-in-swiftui-2-0-132590d66ee7

앱 활성화, 비활성화, 백그라운드 상태 알아내기 https://medium.com/better-programming/swiftui-tips-detecting-a-swiftui-apps-active-inactive-and-background-state-a5ff8acf5db1

파이/도넛 그래프 애니메이션 https://medium.com/better-programming/build-animated-pie-and-donut-charts-in-swiftui-9b74b95f8b39

레이더 차트 그리기 https://medium.com/better-programming/data-visualization-with-swiftui-radar-charts-64124aa2ac0b

커스텀 뷰 구현하기 https://medium.com/level-up-programming/how-to-create-custom-views-in-swiftui-46b0aff925a9

맵킷 활용하기 https://mohamedaymen-afia.medium.com/mapkit-swiftui-893caada8f69

Intrinsic Content Size 방식 구현하기 https://zalogatomek.medium.com/swiftui-missing-intrinsic-content-size-how-to-get-it-6eca8178a71f

글로벌 경로 관리 https://medium.com/better-programming/global-route-management-in-swiftui-a5decf539467

맥앱에서 새 탭 키보드 단축키 추가하기 https://jujodi.medium.com/adding-a-new-tab-keyboard-shortcut-to-a-swiftui-macos-application-56b5f389d2e6

피커처럼 보이는 메뉴 만들기 https://medium.com/better-programming/using-ios-14s-menu-as-a-picker-in-swiftui-b036c772037

인스트루먼트로 프로파일링하기 https://swiftwithmajid.com/2021/01/20/profiling-swiftui-app-using-instruments/

프레임워크

네트워크 계층 만들기 https://stevenpcurtis.medium.com/write-a-network-layer-in-swift-388fbb5d9497

콤바인으로 일반적인 APIManager 만들기 https://jeevatamil.medium.com/create-generic-apimanager-with-combine-framework-6456ca04452f

@mention 기능 지원하는 프레임워크 만들기 https://medium.com/frame-io-engineering/building-an-at-mentions-framework-33ca79bc4740

RxSwift 없이 데이터 바인딩하기 https://brunomunizaf.medium.com/binding-data-without-rxswift-8dda15fdcd2c

스포라이트나 사파리에서 검색 지원하는 API https://medium.com/@neelbakshi/a-guide-to-apple-search-apis-d3d4e30cb862

C++로 개발한 게임에 파이어베이스 활용하기 https://medium.com/firebase-developers/how-to-use-firebase-in-ios-games-written-in-c-fef1a6a9f87d

도큐멘트나 캐시 디렉토리에 저장하기 https://jasmine-elamblakatt.medium.com/caching-data-with-filemanager-cc3fedf97858

RxSwift 6.0에 unretained 사용하기 https://medium.com/better-programming/using-withunretained-in-rxswift-6-0-8e3e221b37ee

테이블뷰 셀 펼쳐지고 접혀지는 기능 구현 https://medium.com/@MuralidharanKathiresan/uitableview-with-collapsible-expand-and-collapse-cells-ios-swift-8a1db381000e

Combine으로 Futures/Promises 활용하기 https://medium.com/so-much-code/futures-promises-in-swift-combine-e783467fa617

코드로 오토 레이아웃 관리하기 https://medium.com/better-programming/effective-auto-layout-programmatically-in-swift-2e68d1b2f546

뷰컨트롤러끼리 데이터 전달하는 3가지 방법 https://medium.com/next-level-swift/3-simple-ways-to-pass-data-between-uiviewcontrollers-d6c4c9ccf075

콤바인으로 제스터 다루기 https://medium.com/better-programming/handling-uikit-gestures-in-combine-framework-2ebe1c0572fd

RxSwift에서 콤바인으로 전환하기 https://medium.com/swlh/combine-from-rxswift-highlights-for-smooth-adaption-e552cfbb7cd1 https://github.com/CombineCommunity/RxCombine

[한글] 접근성-VoiceOver 알아보기 https://okanghoon.medium.com/ios-접근성-voiceover-적용하기-f2b3b1288b02

커스텀뷰에서 VoiceOver 지원하기 https://medium.com/@anuragajwani/supporting-voiceover-on-custom-uiviews-4b7d142b3477

좋은 접근성 사례들 https://levelup.gitconnected.com/traits-of-a-good-accessible-ios-app-25266ee08fb9

Image I/O로 이미지 디코딩하기 https://dmytro-anokhin.medium.com/decoding-images-in-swift-with-image-i-o-f6ac04232698

스프라이트킷 함께 쓰기 https://medium.com/codex/integrate-spritekit-to-your-app-8d66b83f8091

근접 센서(Proximity) 활용하기 https://itnext.io/ios-proximity-sensor-as-simple-as-possible-a473df883dc9

iOS14 UIListContentView https://medium.com/swlh/ios-14-new-list-set-up-using-uilistcontentconfiguration-and-uilistcontentview-d2c71b4975c7

개발환경

앱 배포 최선의 방법 https://medium.com/ne-digital/best-practices-in-ios-app-release-250d018c7e4b

프로젝트 모듈화를 위한 프로젝트 빌드하기 https://medium.com/vptech/solving-modularised-ios-project-challenges-by-adopting-project-generation-eda9cd1ee3bd

SPM 라이브러리 만들기 https://medium.com/better-programming/creating-a-library-using-swift-package-manager-in-xcode-701d5586e953

SwiftLint 사용하기 https://stevenpcurtis.medium.com/installing-and-using-swiftlint-21df54f090a2

ITMS-90562: Invalid Bundle 에러 해결하기 https://medium.com/360learning-engineering/resolving-itms-90562-invalid-bundle-email-from-the-app-store-d4a1030418e5

테스트

XCUITest로 GraphQL 모킹 테스트하기 https://medium.com/swlh/xcui-swift-mocking-graphql-restful-way-6cdf0aacdc72

의존성 관리도구 needle https://medium.com/joom/dependency-injection-by-needle-6d1c823893b

코어 데이터 단위 테스트하기 https://medium.com/swlh/implement-unit-testing-for-core-data-in-ios-2b914767f7e3

시뮬레이터에서 노티 테스트하기 https://medium.com/compass-true-north/how-to-ui-test-push-notifications-and-universal-links-in-the-ios-simulator-81cc43b33f81

코드 커버리지 올리기 https://nycode-jn.medium.com/source-based-code-coverage-for-swift-step-by-step-3df3c44c28d9

UITest 더 잘하기 https://riccardocipolleschi.medium.com/advanced-uitests-in-swift-2a8fb866aa61

기타

아카이브 데이터로 용량과 프레임워크 분석해주는 도구 emerge https://www.emergetools.com/ https://medium.com/swlh/how-7-ios-apps-could-save-you-500mb-of-storage-a828782c973e

AWS 다이나모DB 사용하는 CLI 도구 만들기 https://medium.com/@eneko/using-aws-dynamodb-from-a-command-line-swift-application-46d1c4b368df

오픈소스

SnapKit과 비슷한 오픈소스입니다. 스토리보드 없이 PrettyConstraints 활용하기 https://medium.com/@hardikparmarj/ios-app-without-storyboards-using-prettyconstraints-ec8e7dd7df9d

saryongkang commented 3 years ago

“ 왜 플러터는 다음 대세가 아닌가” 글 읽어봤는데.. 정확히는 “‘ 왜 플러터는 다음 대세가 아닌가’에 대한 반론”이네요.^^

godrm commented 3 years ago

“ 왜 플러터는 다음 대세가 아닌가” 글 읽어봤는데.. 정확히는 “‘ 왜 플러터는 다음 대세가 아닌가’에 대한 반론”이네요.^^

네 원글과 같이 링크를 해야겠네요

godrm commented 3 years ago

24호 발행했습니다. https://stib.ee/wRw2