iOS 11: Location Permissions and avoiding the Blue Bar of Shame!

Apple has always been known to be a flag bearer for user privacy and the evidence for it is now even clearer with iOS 11. With iOS 11 if an app collects location data in the background, then a big ugly flashing blue bar shows up over the status bar.

If you have an app or planning to develop one that continuously scans user location, then check out the article linked below that details how to avoid it.

 

Source: Location Permissions in iOS 11 and avoiding the Blue Bar of Shame

NSObject: The Inheritance Curse!

Here is an article that provides a whimsical take on the evil that is NSObject. If you use classes that inherit from UIKit classes then you directly or indirectly inherit from NSObject.

There are ways to stop this inheritance madness in your classes by marking them as final so it cannot be subclassed. It allows some compiler optimizations, and also makes the code more consistent by removing features that can be achieved in a more Swifty way like code reuse with protocol extensions, generics or composition and polymorphism with protocols.

Read on at the link below to find out more tips:

Source: The Inheritance Curse – Swift Programming – Medium

Dev Tools: Introducing Paralayout – An easy to use alternative to Autolayout!

Apple has made tremendous improvements to Autolayout (Apple’s constraint-based system for specifying UI) since the last few years. While technically impressive, in practice it’s more difficult and takes longer to implement especially if you have to modify and animate the layout dynamically or if you want to performance tune the UI. Square’s Cash iOS team have embraced a different philosophy that prioritizes development speed, correctness, readability, maintainability, and performance and they call it Paralayout, a 100% Swift open source library to programmatically code layout rules.

Read on at the link below to find out more.

Source: Introducing Paralayout – Square Corner Blog – Medium

Tutorial: The Complete Understanding of Swift Delegate and Data Source!

If you are new to Swift development, understanding the delegation pattern can be a difficult topic to wrap your head around. Delegate and Datasource patterns are used quite liberally in Swift especially if you are using components like TableViews and CollectionViews and hence it’s imperative that you master the topic. 

Check out the tutorial linked below to get you started on the subject:

Source: The Complete Understanding of Swift Delegate and Data Source

iOS 11: Stack View Custom Spacing!

When Apple introduced StackViews in iOS 9 it quickly became everyone’s favorite control because it was easy to use and also due to the fact that it required fewer constraints to get it going. But for all its power there was one piece missing which was the ability to set a variable spacing between arranged subviews. All this is changing with iOS 11 which introduces a small tweak to allow variable spacing among its arranged subviews. The only caveat is that it can only be done programmatically and not through interface builder.

Read on at this tutorial link below to learn how to implement one:

Source: Stack View Custom Spacing

Swift 4: Ultimate Guide to JSON Parsing!

With Swift 4 came built in support for JSON parsing with a refreshingly easy to use API. There have been a number of great libraries for JSON parsing in the past but now that Swift 4 has built-in support for it, the use of 3rd party libraries has become questionable. The new JSON parsing API is super easy to adopt and also provides the customization required to encode and decode complex scenarios.

Check out this linked article below to learn more:

Source: Ultimate Guide to JSON Parsing with Swift 4 – Ben Scheirman

Tutorial: Getting Started with URLSession!

The URLSession class provides an API for downloading content via HTTP by offering a rich set of delegate methods to support authentication & to give your apps the ability to perform tasks in the background. If you have been using URLConnection in the past or have been using a third party library like Alamofire, then you should take a second look at the much improved URLSession class.

Check out this excellent tutorial written by the folks at Raywenderlich to find out more about URLSession.

Source: URLSession Tutorial: Getting Started

Port: Your iOS App to macOS!

If you are an iOS developer and are thinking about developing apps for macOS but felt daunted, then its time to think again. Your iOS development skills will come to great use when you are developing apps for macOS and the best part is that you can reuse a significant amount of the code between the 2 platforms and only having to rewrite the portions that are platform-specific.

Check out the article linked below that takes you through the process in detail:

Source: Porting Your iOS App to macOS

Tutorial: Core Machine Learning for iOS Developers!

Machine learning is a technology that’s been there since 1950’s but it’s all the rage today. It’s being increasing adopted in many industries, not just at tech companies. Many people have heard about it, but only a few know what it is. Apple has made available a ton of great resources covering Cover ML including their in-depth documentation along with 2 WWDC sessions – Introducing Core MLCore ML in depth.

If you are looking for a starter tutorial to get you going with Core ML, then check out this article linked below.

Source: Core Machine Learning For iOS Developers – Towards Data Science – Medium

ARKit: Getting Started Building an AR App!

It’s been just a week since Apple introduced augmented reality with iOS 11 and developers around the world are pretty stoked with the possibilities. You can find a collection of great demos that developers have already created at this link. If you are also psyched with the creative possibilities of ARKit but don’t know how to begin, then check out the link below to learn how to create a simple ARKit application.

Source: ARKit 101: Get Started Building AR Apps

iOS 11: Notable UIKit Additions!

UIKit is probably the most used framework to develop apps for iOS. With the introduction of iOS 11, it’s not surprising that there is a ton of interest in the developer community to know what’s new in UIKit. Jordan Morgan in his article linked below talks about exciting new changes to UIStackView, UITableview, and others. Read on to find out more.

Source: iOS 11: Notable UIKit Additions – Jordan Morgan

Push Notifications Tutorial: Getting Started!

When used properly, push notifications are a great way to drive users to engage with your app on a more regular basis. Apple has made a number of enhancements in the last few years to make Push notifications powerful.

Read on at the link below to find out how you can incorporate Push notification in your app with iOS 10 and Swift:

Source: Push Notifications Tutorial: Getting Started – Raywenderlich Tutorials

Opinion: The Case for Deprecating UITableView!

Apple introduced big improvements to UICollectionView with iOS 8 and ever since then there have been numerous discussions on the interwebs about the need for UITableView anymore. Some argue that UITableview offers the simplest solution and should be used whenever it suits the need.

In the article linked below, Peter Steinberger and Michael Ochs make the case for deprecating UITableview even stronger. Read on to find out more…

Source: The Case for Deprecating UITableView | Inside PSPDFKit