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.
For many apps, the splash screen is one of the first things a user experiences about the app but with many apps turning away from Apple’s HIG guidelines to use the splash screen as additional branding for their apps, @ebaehr provides some tips on desigining splash screens of your own.
One of the best ways of improving your understanding of the Swift language is to try to implement simple programming constructs yourself. In this article, @dimsumthinking does just that, but uses a functional, rather than object-oriented approach to implement basic set functionality in Swift. It’s a great example of what you can get done using functions alone.
Regardless of which Apple platform your developing for, displaying and updating collections of data is a staple of most apps. In this tutorial, @onmyway133 shows you an alternative approach to the
reloadData() approach or individually tracking the elements that have added or deleted that uses the DeepDiff framework to achieve the same outcome. It’s also an interesting introduction into how diffing algorithms work under the hood.
One of the most important requirements of any app is keeping its users data safe which also includes not accidentally performing some destructive and irreversible action without the users agreement. For the most part, we try to solve this by building in
UIAlertController code into our applications to get the users agreement when some destructive action occurs but in reality there is nothing actually in place to stop us accidentally deleting data anyway. To help save us from this disaster, @olegdreyman has come up with a nice alternative that leverages Swift’s compile-time safety to help catch these destructive actions before it’s too late.
App Store Receipts are for most of us, opaque objects that we send off to Apple’s servers for validation with little or no thought, but if you’re of a more curious nature and are interested in how they work under the hood, @jeiting has written up a deep dive into their structure and how they work.
Almost every developer I know wants to be more productive, but the first step in that path is understanding where you are spending most of your time. In this article @TT_Kilew dives into a years worth of xcode time tracking data and discovers some interesting lessons along the way.
With the ever changing array of screen resolutions, hardware specs, processors and more, there’s a lot to keep track of as an Apple Developer. To help keep track of it all, @EugeneBelinski has put together a nice little site that brings all this reference material together in one place. One to have bookmarked I think.
This week saw the latest release of CocoaPods with a version bump to 1.4. Along with it, comes some nice new features including the addition of host support for test specs, script phases, the ability to distribute sources and build them as static libraries along with a whole lot more. @dnkoutso provides all the details.
When writing unit tests, one of the most powerful techniques you have at your disposal is mocking – the ability to create fake versions of dependencies in order to isolate the code you want to test. In this article, @johnsundell takes a look at some different situations where mocking can be useful and provides some tips for writing your own mocks in Swift.
The Final Conf-Down
So with 2018, still shiney and new, some of the community have been turning their attention to conferences this week. @invalidname is one of those people and has recently updated his list of iOS developer conferences for 2018 if you’re interested. In doing so though, he has also noticed a significant reduction in the number of iOS conferences compared to a few years ago, a sentiment echoed by @marcoarment in his follow-up post. So with technical information more accessible than ever before and alternative forms of media and interaction becoming increasingly mainstream, is it time for iOS conferences to change and adapt and if so, how do we replace those person-to-person discussions that for many are the most part of the conference experience?