Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
iOS and macOS Performance Tuning: Cocoa, Cocoa Touch, Objective-C, and Swift (Developer's Library) 1st Edition
Purchase options and add-ons
In iOS and macOS™ Performance Tuning, Marcel Weiher drills down to the code level to help you systematically optimize CPU, memory, I/O, graphics, and program responsiveness in any Objective-C, Cocoa, or CocoaTouch program.
This guide focuses entirely on performance optimization for macOS and iOS. Drawing on more than 25 years of experience optimizing Apple device software, Weiher identifies concrete performance problems that can be discovered empirically via measurement. Then, based on a deep understanding of fundamental principles, he presents specific techniques for solving them.
Weiher presents insights you won’t find anywhere else, most of them applying to both macOS and iOS development. Throughout, he reveals common pitfalls and misconceptions about Apple device performance, explains the realities, and helps you reflect those realities in code that performs beautifully.
- Understand optimization principles, measurement, tools, pitfalls, and techniques
- Recognize when to carefully optimize, and when it isn’t worth your time
- Balance performance and encapsulation to create efficient object representations, communication, data access, and computation
- Avoid mistakes that slow down Objective-C programs and hinder later optimization
- Fix leaks and other problems with memory and resource management
- Address I/O issues associated with drives, networking, serialization, and SQLite
- Code graphics and UIs that don’t overwhelm limited iOS device resources
- Learn what all developers need to know about Swift performance
This book’s source code can be downloaded at github.com/mpw/iOS-macOS-performance.
Register your product at informit.com/register for convenient access to downloads, updates, and corrections as they become available.
- ISBN-100321842847
- ISBN-13978-0321842848
- Edition1st
- PublisherAddison-Wesley Professional
- Publication dateFebruary 23, 2017
- LanguageEnglish
- Dimensions6.9 x 1 x 8.9 inches
- Print length400 pages
Products related to this item
Editorial Reviews
About the Author
In addition to helping established companies and startups create award-winning software and turn around development teams, Marcel also teaches, blogs, speaks at conferences, contributes to open source, and invents new techniques such as Higher Order Messaging. He also works on programming languages, starting with an Objective-C implementation in 1987 and culminating in the Objective-Smalltalk architecture research language. Marcel currently works as a principal software engineer at Microsoft Berlin and maintains his own software and consulting company, metaobject ltd.
Product details
- Publisher : Addison-Wesley Professional; 1st edition (February 23, 2017)
- Language : English
- Paperback : 400 pages
- ISBN-10 : 0321842847
- ISBN-13 : 978-0321842848
- Item Weight : 1.36 pounds
- Dimensions : 6.9 x 1 x 8.9 inches
- Best Sellers Rank: #2,722,784 in Books (See Top 100 in Books)
- #156 in Swift Programming Language
- #242 in Apple Programming
- #1,143 in Mobile App Development & Programming
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read author blogs and more
Related products with free delivery on eligible orders
Customer reviews
- 5 star4 star3 star2 star1 star5 star64%31%0%0%5%64%
- 5 star4 star3 star2 star1 star4 star64%31%0%0%5%31%
- 5 star4 star3 star2 star1 star3 star64%31%0%0%5%0%
- 5 star4 star3 star2 star1 star2 star64%31%0%0%5%0%
- 5 star4 star3 star2 star1 star1 star64%31%0%0%5%5%
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find the book's information useful, rich with helpful examples, and a goldmine of usable optimization information. They also appreciate the candor and candor of the author. Readers describe the writing quality as well-written, thoughtful, and accessible to beginners.
AI-generated from the text of customer reviews
Customers find the book's information useful, rich with helpful examples, and a goldmine of usable optimization information. They say the principles are timeless, and they expect the book to remain relevant.
"...This book is rich with helpful examples showing how to circle in upon a performance issue which might not be obvious at first blush...." Read more
"...It's clearly based on long experience and full of information that, as far as I know, is not available anywhere else: measurements, explanations for..." Read more
"Very talented writer, lots of useful information. Could use better editing: more than a few typos and the level of the book bounces around a lot." Read more
"Just a goldmine of usable optimization information that you'll never find anywhere else - phenomenal..." Read more
Customers find the book well-written, thoughtful, and accessible to beginners. They also say the author is talented.
"This book is well written, thoughtful, and accessible to beginning developers. If you're new to the platform this is a must-read...." Read more
"...The writing is concise and filled with little nuggets of insight...." Read more
"Very talented writer, lots of useful information. Could use better editing: more than a few typos and the level of the book bounces around a lot." Read more
-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
-it's not written in beginner language, you need a good general knowledge of computer science and objC to take advantage
-though it's primarily about objc, it talks about swift too. You'll learn plenty about both, and most of what you learn has applications in both languages. And alot of what you learn in this book applies broadly - like tagged pointers, for example. Any language that supports pointers can implement that. Smalltalk implements it, apparently
-there are so many useful things about performance you'd never find anywhere else and would not think of.
-my tests indicate most of the performance issues and optimizations apply to Swift as well as objC, and still hold up today
-you might be surprised to learn that ObjC outperforms Swift significantly when correctly optimized (despite the general dogma this is still true today, I've ran the tests myself) - you'll learn there's a serious use case for objC at a time when so many people are saying there's zero reason to ever use it.
-you will need to do a slight bit of research a few times in conjunction with reading the book - like on how to compile swift from the command line to run the tests, which he didn't specify, for example. There are also a few minor bugs in some of the code, and he doesn't explain some of his code examples well (not a beginners book). Nonetheless this isn't worth taking off a star, the knowledge in this book is just too valuable
-you're just going to gain so much deeper understanding of how these languages work in the process of studying their performance characteristics
-he's an expert in performance with something approaching 30 years of experience, was an apple engineer on their performance team...
I will add to it that Mr. Weiher is well known as an advocate of all of the things SmallTalk brought to Objective-C and you should understand the perspective he presents is that Objective-C is a strong and flexible language. Understanding this will make more sense in reading the book.
Top reviews from other countries
Aber was, wenn so ein Programm eines Tages richtig große Datenmengen verarbeiten muß? Wenn sich die Anwender beschweren, daß es langsamer und langsamer wird?
Dann ist eine sorgfältige Analyse der Schwachstellen erfoderlich, genaue Performance-Mesungen, und die richtigen Entscheidungen, wie mit diesen Informationen umzugehen ist.
Genau davor schrecken leider viele Entwickler zurück. Dabei gibt es jetzt dieses wunderbare Buch, das die nötigen Schritte ausgiebig darstellt und erläutert.
Natürlich werden Tools wie Instruments von Xcode erläutert, und bis in große Details auf mögliche Performance-Fallen und ihre Lösungen eingegangen.
Auch erfahrene Entwickler können hier noch so machen Tricks lernen, daher sollte dieses Buch zum Standard-Repertoire eines jeden Entwicklers gehören.