CodeCompletion.io

Episode 46: Let Me Solve All Your Problems

Welcome to Code Completion, Episode 46! We are a group of iOS developers and educators hoping to share what we love most about development, Apple technology, and completing your code!

Follow us @CodeCompletion on Twitter to hear about our upcoming livestreams, videos, and other content.

Be sure to also sign up to our monthly newsletter, where we will recap the topics we discussed, reveal the answers to #CompleteTheCode, and share even more things we learned in between episodes.

You are what makes this show possible, so please be sure to share this with your friends and family who are also interested in any part of the app development process.

⭐️ This Week's Topics

  • The best architecture for SwiftUI does not exist.
    • Enums are great in Swift, and everyone should use them.
  • What announcements we expect at Apple’s California Streaming event.
    • Ceramic Apple Watches are a danger to paint jobs everywhere.

🚧 #CompleteTheCode

This week's #CompleteTheCode:

How would you transform the code below to use the new async/await pattern?
1
2
3
4
5
6
7
8
9
10
11
// How would you transform the code below to use the new async/await pattern?

print("Preparing request…")

urlSession.dataTask(with: httpRequest) { data, response, error in
    DispatchQueue.main.async {
        print("Received response: \(response)")
    }
}.resume()

print("Sent request!")

Be sure to tweet us with hashtag #CompleteTheCode if you know the answer!

⚠️ Compiler Error

This week's theme: SwiftUI View Modifiers!

  1. Much like UIKit, SwiftUI allows the interface orientation to be manipulated using statusBar(orientation:), moving the status bar to one of the four screen edges.
  1. Tooltips can be added to SwiftUI views using the help(_:) modifier, helping to guide the user around the interface without them needing to directly invoke any actions.
  1. Any view in the hierarchy can be modified with onOpenURL(perform:) to perform localized URL handling so long as it is part of the hierarchy when the URL is opened.
  1. A badge can be added to tab bar items using the badge(_:) modifier, but this will also add a visual indicator to list rows to help convey supplementary information.

🎁 Sponsor

This week's episode of Code Completion is brought to you by Weekly Swift Exercises! Subscribe to the Mailinglist today to subscribe!

📺 Watch the Stream