Announcing Expert Swift, First Edition!
Looking to take your understanding of Swift to the next level? Dive deep into the inner workings of the language in our newest book: Expert Swift! By Chris Belanger.
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Contents
Announcing Expert Swift, First Edition!
15 mins
Section III: Techniques
The final section of this book covers advanced techniques to super-charge your Swift powers, and use all of what Swift has to offer.
You’ll cover topics like higher order functions, functional reactive programming, Objective-C interoperability, using Instruments, and achieving API design:
- Higher-Order Functions: Higher-order functions can simplify your code significantly by making it more readable, a lot shorter and easier to reuse. You’ll learn what higher order functions are, what currying is, and examine examples of how they’re used in the standard library.
- Functional Reactive Programming: In this chapter you’ll learn the most important and refined concepts of functional reactive programming and how you can apply these concepts to your apps.
- Objective-C Interoperability: Like it or not, Objective-C is still a heavily used language in legacy codebases and apps that have been in production for many years. In your own apps, you’ll often have a sizable Objective-C codebase that just doesn’t feel at home inside your Swift code or want to use some of your shiny new Swift code in your Objective-C code. In this chapter, you’ll learn how to create a wholesome experience for consumers of both the Objective-C and Swift portions of your codebase in a way that feels as if it were designed for either.
- Instrumentation: Being a great iOS software engineer isn’t only about being a grandmaster of the Swift language. It’s also about knowing which tools the platform puts at your disposal, how to use them to sharpen your skills and how to identify areas of improvement in your code. In this chapter you’ll learn about advanced features of the Instruments app, and how to use it to improve your code.
- API Design Tips & Tricks: Explore a few topics to enhance your skillset and intuition for designing great APIs. Topics like Documentation, Encapsulation, versioning, and several powerful language features.
What Else Do You Need?
To follow along with this book, you’ll need the following:
- A Mac running macOS Catalina 10.15 or later, with the latest point release and security patches installed. This is so you can install the latest version of the required development tool: Xcode.
- Xcode 12.5 or later. You can download the latest version of Xcode for free from the Mac App Store, here: https://apps.apple.com/app/xcode/id497799835
The code covered in this book depends on Swift 5.4 and Xcode 12.5 — you may get lost if you try to work with an older version or work outside the playground environment that this book assumes.
How to Get Your Own Copy
There are two ways you can get this book:
- Buy it individually: If you want to build up a custom library without a subscription, you can choose to buy the book individually. It’s available now for just $59.99 in our online store.
- Get it as part of our subscriptions: Enjoy access to our videos and mobile development books in our Ultimate Beginner and Ultimate Pro subscription, including Android Apprentice! Right now, you can get a full year’s subscription and save 20% off the cost of a regular monthly subscription. It’s simply the best investment for your mobile development career.
We hope you enjoy this book! Feel free to reach out to us if you have any questions.
print(“Hello, Team”)
Come meet the Swift dream team that created this book:
Ehab Amer [Author]: Ehab is a very enthusiastic Lead iOS developer with a very diverse experience from building games to enterprise applications and POCs with new technologies. In his spare time, TV shows take the majority of his time, followed by video games. When away from the screen, he goes with his wife and friends to explore the underwater world through diving.
Marin Bencevic [Author]: Marin is a computer vision researcher working on medical images. He is also an iOS developer who likes to work on cool iOS apps and games, nerd out about programming, learn new things and then blog about it. He also has a chubby cat.
Ray Fix [Author]: Ray works on next-generation microscopes made for iPad at Discover Echo Inc. in San Diego, California. Ray enjoys learning new things and is excited about math, data, visualization, machine learning and computer vision. Swift is his problem-solving language of choice and he has been using it and teaching others about it since its 2014 public release.
Shai Mishali [Author]: Shai is an experienced, award-winning iOS specialist; as well as an international speaker, and a highly active open-source contributor and maintainer on several high-profile projects – namely, the RxSwift Community and RxSwift projects, but also releases many open-source endeavors around Combine such as CombineCocoa, RxCombine and more. As an avid enthusiast of hackathons, Shai took 1st place at BattleHack Tel-Aviv 2014, BattleHack World Finals San Jose 2014, and Ford’s Developer Challenge Tel-Aviv 2015. You can find him on GitHub and Twitter as @freak4pc.
Morten Faarkrog [Tech Editor]: Morten is a Technical Director & Solution Architect at a consultancy in Denmark, where he works with architecting larger software solutions across a range of companies. Morten has a background as an iOS developer and still loves tinkering with the Swift language in his spare time.
John Hagemann [Editor]: John is a communications specialist and analyst who enjoys putting technical subject matter into plain talk. He lives in Washington state with his son.
Eli Ganim [Final Pass Editor]: Eli is an iOS engineer from Israel, who’s passionate about teaching, writing and sharing knowledge with others.
Start Reading for Free Today
Expert Swift is out today — and even better, you can start reading the entire first section of the book for free:
Like every one of our books, Expert Swift has been automatically added to the collections of all Ultimate Pro subscribers.
On behalf of the book team, we wish you much success as you leverage more of the elegance and power of Swift in your own projects!