iPhone Applications Tune-Up

High performance tuning guide for real-world iOS projects
Preview in Mapt

iPhone Applications Tune-Up

Loyal Moses

High performance tuning guide for real-world iOS projects
Mapt Subscription
FREE
$29.99/m after trial
eBook
$18.90
RRP $26.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$18.90
$44.99
$29.99p/m after trial
RRP $26.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


iPhone Applications Tune-Up Book Cover
iPhone Applications Tune-Up
$ 26.99
$ 18.90
HTML5 iPhone Web Application Development Book Cover
HTML5 iPhone Web Application Development
$ 29.99
$ 21.00
Buy 2 for $35.00
Save $21.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781849690348
Paperback256 pages

Book Description

The best iPhone applications are the ones that demonstrate smooth, fast, efficient and optimal performance. An application should be designed to run at 200 mph, but operate just as smoothly as it would at 5 mph. Developing an application that supports such a wide range of performance needs is no small task and requires an understanding of the basic elements of performance as well as a strong strategy.

This book covers every aspect of tuning, optimizing, and squeezing every last bit of performance out of an iOS project. From application architecture and design to development and deployment, readers will be guided through the entire process of tuning an iOS application for high performance.

Every line of code presents an opportunity to improve upon the effective performance of an application. This book begins with the fundamentals of performance, demonstrating the impact poor performance can have on the success of an application. Apple's App Store is riddled with applications that fall just short of success and it isn't too much of a stretch to attribute many of these failures to a lack of optimization. Readers will be lead through each chapter, learning every aspect of performance tuning from simple syntax tips and tricks to advanced process management, and network and memory optimizations.

In addition to theories, syntax, and detailed code examples, readers will learn to take advantage of Apple's powerful performance measurement and benchmarking utilities to identify the specific components of an iOS project that might need attention.

Table of Contents

Chapter 1: Performance, Bottlenecks, and Fundamentals
Success and performance
Perception of performance
Performance fundamentals
Approaching performance
Process management
Memory
Storage
Network
User interface
Be a good neighbor
Application design and architecture
Application performance
Summary
Chapter 2: Design for Performance
Preparing the project
Project organization
Project structure
Groups and files
Code structure
Summary
Chapter 3: Maintainability
Variable naming conventions
Method naming conventions
Camel case
Syntax efficiency
Readability versus compactness
Dot syntax
Re-factoring
Library bloat
LIPO
Comments
Documentation
Summary
Chapter 4: Reliability
Exception handling
Error checking
Unit testing
Preparing a project for logic unit testing
Preparing a project for application unit testing
Summary
Chapter 5: Performance Measurement and Benchmarking
Static analyzer
Instruments
Summary
Chapter 6: Syntax and Process Performance
Iteration loops
Object reuse
Bitmasks
Sorting
Bubble sort
Selection sort
Bucket sort
Quicksort
Run loops
Timers
Semaphores
Summary
Chapter 7: Network Performance
Sockets
Streams
Protocols
Bandwidth
Compression
Façade pattern
Summary
Chapter 8: Memory Performance
Garbage collection
Alloc
Dealloc
Copy
Retain
Release
Autorelease
didReceiveMemoryWarning
Summary
Chapter 9: Application and Object Lifecycles
Mise en place
Application lifecycle
Application startup sequence
Application execution
Application termination sequence
Application init
awakeFromNib
application: didFinishLaunchingWithOptions
applicationDidBecomeActive
applicationWillEnterForeground
applicationWillResignActive
applicationDidEnterBackground
applicationWillTerminate
Object lifecycle
Object init
Summary
Chapter 10: Animation, View, and Display Performance
View performance
Animated content
Core Animation
Item renderers
Summary
Chapter 11: Database and Storage Performance
Disk
Cache
Compression
SQLite
Core Data
Summary
Chapter 12: Common Cocoa Design Patterns
Why design patterns are critical
Singleton
Mediator
Delegate
Adaptor
Decorator
Model-View-Controller
Summary
Chapter 13: The Xcode Advantage
Distributed builds
Dead code stripping
Compiler
Debugger
Source code management
Summary

What You Will Learn

  • Understand the basic principles of application performance and bottlenecks
  • Learn the benefits and techniques of performance-driven development
  • Analyze an application with proper benchmarking and measurement utilities
  • Identify iOS and device capabilities and limitations
  • Improve network and communications performance
  • Understand the common pitfalls caused by misuse of basic language syntax
  • Learn design patterns that can increase application simplicity and performance
  • Become more familiar with the object and component lifecycle
  • Use unit testing and exception handling to create better code
  • Store and recall data faster and more efficiently

Authors

Table of Contents

Chapter 1: Performance, Bottlenecks, and Fundamentals
Success and performance
Perception of performance
Performance fundamentals
Approaching performance
Process management
Memory
Storage
Network
User interface
Be a good neighbor
Application design and architecture
Application performance
Summary
Chapter 2: Design for Performance
Preparing the project
Project organization
Project structure
Groups and files
Code structure
Summary
Chapter 3: Maintainability
Variable naming conventions
Method naming conventions
Camel case
Syntax efficiency
Readability versus compactness
Dot syntax
Re-factoring
Library bloat
LIPO
Comments
Documentation
Summary
Chapter 4: Reliability
Exception handling
Error checking
Unit testing
Preparing a project for logic unit testing
Preparing a project for application unit testing
Summary
Chapter 5: Performance Measurement and Benchmarking
Static analyzer
Instruments
Summary
Chapter 6: Syntax and Process Performance
Iteration loops
Object reuse
Bitmasks
Sorting
Bubble sort
Selection sort
Bucket sort
Quicksort
Run loops
Timers
Semaphores
Summary
Chapter 7: Network Performance
Sockets
Streams
Protocols
Bandwidth
Compression
Façade pattern
Summary
Chapter 8: Memory Performance
Garbage collection
Alloc
Dealloc
Copy
Retain
Release
Autorelease
didReceiveMemoryWarning
Summary
Chapter 9: Application and Object Lifecycles
Mise en place
Application lifecycle
Application startup sequence
Application execution
Application termination sequence
Application init
awakeFromNib
application: didFinishLaunchingWithOptions
applicationDidBecomeActive
applicationWillEnterForeground
applicationWillResignActive
applicationDidEnterBackground
applicationWillTerminate
Object lifecycle
Object init
Summary
Chapter 10: Animation, View, and Display Performance
View performance
Animated content
Core Animation
Item renderers
Summary
Chapter 11: Database and Storage Performance
Disk
Cache
Compression
SQLite
Core Data
Summary
Chapter 12: Common Cocoa Design Patterns
Why design patterns are critical
Singleton
Mediator
Delegate
Adaptor
Decorator
Model-View-Controller
Summary
Chapter 13: The Xcode Advantage
Distributed builds
Dead code stripping
Compiler
Debugger
Source code management
Summary

Book Details

ISBN 139781849690348
Paperback256 pages
Read More

Read More Reviews

Recommended for You

Mastering Web Application Development with AngularJS Book Cover
Mastering Web Application Development with AngularJS
$ 26.99
$ 5.40
Responsive Web Design with HTML5 and CSS3 Book Cover
Responsive Web Design with HTML5 and CSS3
$ 23.99
$ 4.80
Learning jQuery, Third Edition Book Cover
Learning jQuery, Third Edition
$ 23.99
$ 16.80
HTML5 Games Development by Example: Beginner’s Guide Book Cover
HTML5 Games Development by Example: Beginner’s Guide
$ 26.99
$ 18.90
PhoneGap Beginner's Guide Book Cover
PhoneGap Beginner's Guide
$ 26.99
$ 18.90
Core Data iOS Essentials Book Cover
Core Data iOS Essentials
$ 26.99
$ 18.90