Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
Design
The Presentation Model
With MVC the subject of a lot of discussion in recent months, @sandofsky looks at some of the criticisms leveled at this architetural pattern, compares and contrasts it with MVVM and discusses some of the tradeoffs that MVC and MVVM introduce. He makes some good points, many of which I can’t help but agree with.
medium.com
Code
iOS Background Transfer
Background transfer can be extremely useful for improving the user experience of your app moving network transfers into the background and freeing the user to get on with their day. However, implementing background transfer in your own app isn’t always as straight forward as you might hope. @vasarhelyia shares some important lessons that are definitely worth checking out.
topologyeyewear.github.io
Lenses and Prisms in Swift: A Pragmatic Approach
With Swift supporting both object-oriented and functional programming paradigms, @_logicist provides a great introduction into the functional concepts of lenses and prisms in Swift and hightlights some of the benefits that they can offer.
broomburgo.github.io
30 Auto Layout Best Practices
Auto Layout is a great technology for laying out your apps user interface, especially when supporting multiple device sizes, but it’s not without it’s quirks. In this article, @PaulSolt provides 30 best-practices to keep in mind when working with Auto Layout in your own projects.
supereasyapps.com
Tools
Swizzling in iOS 11 with UIDebuggingInformationOverlay
Improve your lldb and debugging superpowers with this article from LOLgrep in which Derek goes behind the scenes of the UIKit framework digging into a number of private UIKit classes that can help with visual debugging.
raywenderlich.com
Testing
Applying Unit Tests to MVVM in Swift
With MVVM a popular architectural choice for iOS developers, @KoromikoNeo provides a step-by-step tutorial on how to identify and implement unit tests for your MVVM-based code. A nice introduction if you’ve yet to dive into the world of unit testing.
medium.com
Libraries
TransitionalTab
With the arrival of the iPhone X and the additional vertical space afforded by it’s edge-to-edge display, the use of tab bars are likely to increase in the coming months as apps update their UIs to take advantage of the additional screen real-estate. TranitionableTab is a library by Interactive-Studio that makes adding polish to these tab-bar interfaces super easy by adding a number of animated transitions that you can use when switching between tabs.
github.com
Chronology
Although the Foundation Frameworks APIs for date and time programming provide a huge range of capabilities, it is not always the simplest of APIs to work with and it’s relatively easy to make a mistake. Chronology by @davedelong aims to address thais issue by building a better Swift-basesd date and time API on top of the existing date and time APIs provided by the Foundation Framework.
github.com
Videos
RxSwift: Deep Cuts
With Reactive Programming becoming increasingly popular within the Swift community due to it’s promise of making asynchronous code simpler to write, @_siejkowski shares some best practices and lessons learnt for using RxSwift in a large code base on a day-to-day basis.
realm.io
From iOS- to Vapor developer; my experiences after working with server-side Swift in production for 6 months
Swift on the server continues to rapidly mature with most of the popular server-side Swift frameworks reaching, or near to reaching, major point releases in recent months. So with these framework continuing to develop what’s it like working with them in production? @steffendsommer talks through his journey from iOS to Vapor and shares his experiences of working with Vapor in production over the last 6 months.
steffendsommer.com