Over a million developers have joined DZone.

This Week in Mobile: WWDC 2017 and Refactoring Singletons

DZone's Guide to

This Week in Mobile: WWDC 2017 and Refactoring Singletons

This week we got a little bit of news about WWDC, as well as more detail on Swift 4. We also cover the usual topics, like reducing your singleton usage in Swift and how to get more from Butter Knife.

· Mobile Zone ·
Free Resource

The Swift 4 release process was detailed this week, estimated to be complete in fall 2017.  Also, we found out that this year's WWDC will be hosted in San Jose, June 5-9. You'll be able to apply as usual through the random selection process from March 27th. Lots of notice this year!  


Airbnb has been using Swift for a long time, and just finished their migration to Swift 3. Read about some of the engineering team's insights into Swift 3 in Getting to Swift 3 in Airbnb.

Singletons are very popular in Swift code; used in Apple frameworks and open source projects everywhere. As something that is usually frowned upon in software development, you might want to reduce the amount of them in your code; here is Jesse Squires article on Refactoring Singleton Usage in Swift

If you're new to using beacons, I'd recommend this Guide to Interacting with iBeacons in iOS using Swift.

Getting your architecture right is essential in creating an app that can scale and be maintained across a long time. Here's Justin William's recent talk on Advanced iOS Application Architecture.

Ideally, you should centralize where you define colors for your application. Here is A Smart Way to Manage Colour Schemes for iOS Application Development


  • Swift30Projects: 30 minute Swift apps for self-study

  • Hydra: Promises & Await - write better async code in Swift

  • Motion: Seamless animations and transitions in Swift 

  • AnimatedCollectionViewLayoutA UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView without affecting your existing code


You've probably used the Butter Knife library to bind views, but have you ever tried Butter Knife Actions? With them, you can apply actions to a number of views at once. This is very useful if you need to animate a group of views.

You might already have been caught by changes in how you share files through Intents on Android Nougat. Here are more details about the file system permission changes

Here are some tips on Interacting with Beacons with the Awareness API

Kotlin is certainly getting more popular among the Android developer community. Here's what one developer found about Starting Activities with Kotlin.


Also, make sure to check this list of new Android libraries you'll want to try in 2017


Once your app is out in the wild, you'll really want to track everything from crashes to what users are actually doing with the app. To achieve this, you should consider adopting at least one of these Top App Analytics Tools.

Want to work in product design? Then this article could be The Beginning of Your Design Career

swift ,ios ,android ,java

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}