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.
Join the DZone community and get the full member experience.
Join For FreeThe 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!
iOS
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.
Projects:
Swift30Projects: 30 minute Swift apps for self-study
Hydra: Promises & Await - write better async code in Swift
Motion: Seamless animations and transitions in Swift
AnimatedCollectionViewLayout: A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView without affecting your existing code
Android
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.
Projects:
chuck: An in-app HTTP inspector for Android OkHttp clients
SlidingSquaresLoader: A simple progress loader inspired by Can you Code this UI Volume 6
ModularizationArchitecture: A routing-based multi-process, component-based architecture
mkloader: Beautiful and smooth custom loading views
Also, make sure to check this list of new Android libraries you'll want to try in 2017.
General
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.
Opinions expressed by DZone contributors are their own.
Comments