Effective Objective-C 2.0


Book Description

Write Truly Great iOS and OS X Code with Objective-C 2.0! Effective Objective-C 2.0 will help you harness all of Objective-C’s expressive power to write OS X or iOS code that works superbly well in production environments. Using the concise, scenario-driven style pioneered in Scott Meyers’ best-selling Effective C++, Matt Galloway brings together 52 Objective-C best practices, tips, shortcuts, and realistic code examples that are available nowhere else. Through real-world examples, Galloway uncovers little-known Objective-C quirks, pitfalls, and intricacies that powerfully impact code behavior and performance. You’ll learn how to choose the most efficient and effective way to accomplish key tasks when multiple options exist, and how to write code that’s easier to understand, maintain, and improve. Galloway goes far beyond the core language, helping you integrate and leverage key Foundation framework classes and modern system libraries, such as Grand Central Dispatch. Coverage includes Optimizing interactions and relationships between Objective-C objects Mastering interface and API design: writing classes that feel “right at home” Using protocols and categories to write maintainable, bug-resistant code Avoiding memory leaks that can still occur even with Automatic Reference Counting (ARC) Writing modular, powerful code with Blocks and Grand Central Dispatch Leveraging differences between Objective-C protocols and multiple inheritance in other languages Improving code by more effectively using arrays, dictionaries, and sets Uncovering surprising power in the Cocoa and Cocoa Touch frameworks




Effective Objective-C 2.0


Book Description

Write Truly Great iOS and OS X Code with Objective-C 2.0! Effective Objective-C 2.0 will help you harness all of Objective-C's expressive power to write OS X or iOS code that works superbly well in production environments. Using the concise, scenario-driven style pioneered in Scott Meyers' best-selling Effective C++, Matt Galloway brings together 52 Objective-C best practices, tips, shortcuts, and realistic code examples that are available nowhere else. Through real-world examples, Galloway uncovers little-known Objective-C quirks, pitfalls, and intricacies that powerfully impact code behavior and performance. You'll learn how to choose the most efficient and effective way to accomplish key tasks when multiple options exist, and how to write code that's easier to understand, maintain, and improve. Galloway goes far beyond the core language, helping you integrate and leverage key Foundation framework classes and modern system libraries, such as Grand Central Dispatch. Coverage includes Optimizing interactions and relationships between Objective-C objects Mastering interface and API design: writing classes that feel "right at home" Using protocols and categories to write maintainable, bug-resistant code Avoiding memory leaks that can still occur even with Automatic Reference Counting (ARC) Writing modular, powerful code with Blocks and Grand Central Dispatch Leveraging differences between Objective-C protocols and multiple inheritance in other languages Improving code by more effectively using arrays, dictionaries, and sets Uncovering surprising power in the Cocoa and Cocoa Touch frameworks




Learning Objective-C 2.0


Book Description

Get Started Fast with Objective-C 2.0 Programming for OS X, iPhone, iPod touch, and iPad If you want to learn Objective-C 2.0 to write programs for Mac OS X, iPhone, iPad, or iPod touch, you've come to the right place! Concise, readable, and friendly, Learning Objective-C 2.0 is the perfect beginner's guide to the latest version of Objective-C. Longtime Mac OS X and iPhone developer Robert Clair covers everything from the absolute basics to Objective-C 2.0's newest innovations. Clair begins with a practical refresher on C and object-oriented programming and walks you through creating your first Objective-C program with Xcode. Next, you'll master each core language feature, from objects and classes to messaging, frameworks, and protocols. Every concept is illustrated with simple examples, and many chapters contain hands-on practice exercises. Throughout, Learning Objective-C 2.0 focuses on the features, concepts, and techniques that matter most day to day. The result is an outstanding first book for everyone who wants to begin programming for iPhone, iPod touch, iPad, or Mac OS X. COVERAGE INCLUDES Understanding methods, messages, and the Objective-C messaging system Defining classes, creating object instances, and using class objects Using categories to extend classes without subclassing Simplifying development with Objective-C 2.0 declared properties Using protocols to emphasize behavior rather than class Working with common Foundation classes for strings, arrays, dictionaries, sets, and number objects Using Objective-C control structures, including Objective-C 2.0's new fast enumeration construct Understanding application security and hiding the declaration of methods that should stay private Using the new blocks feature provided in Objective-C 2.0.




Programming in Objective-C


Book Description

Presents an introduction to Objective-C, covering such topics as classes and objects, data types, program looping, inheritance, polymorphism, variables, memory management, and archiving.




Programming in Objective-C 2.0


Book Description

THE #1 BESTSELLING BOOK ON OBJECTIVE-C 2.0 Programming in Objective-C 2.0 provides the new programmer a complete, step-by-step introduction to Objective-C, the primary language used to develop applications for the iPhone, iPad, and Mac OS X platforms. The book does not assume previous experience with either C or object-oriented programming languages, and it includes many detailed, practical examples of how to put Objective-C to use in your everyday iPhone/iPad or Mac OS X programming tasks. A powerful yet simple object-oriented programming language that’s based on the C programming language, Objective-C is widely available not only on OS X and the iPhone/iPad platform but across many operating systems that support the gcc compiler, including Linux, Unix, and Windows systems. The second edition of this book thoroughly covers the latest version of the language, Objective-C 2.0. And it shows not only how to take advantage of the Foundation framework’s rich built-in library of classes but also how to use the iPhone SDK to develop programs designed for the iPhone/iPad platform. Table of Contents 1 Introduction Part I: The Objective-C 2.0 Language 2 Programming in Objective-C 3 Classes, Objects, and Methods 4 Data Types and Expressions 5 Program Looping 6 Making Decisions 7 More on Classes 8 Inheritance 9 Polymorphism, Dynamic Typing, and Dynamic Binding 10 More on Variables and Data Types 11 Categories and Protocols 12 The Preprocessor 13 Underlying C Language Features Part II: The Foundation Framework 14 Introduction to the Foundation Framework 15 Numbers, Strings, and Collections 16 Working with Files 17 Memory Management 18 Copying Objects 19 Archiving Part III: Cocoa and the iPhone SDK 20 Introduction to Cocoa 21 Writing iPhone Applications Part IV: Appendixes A Glossary B Objective-C 2.0 Language Summary C Address Book Source Code D Resources




Objective-C Programming


Book Description

Want to write iOS apps or desktop Mac applications? This introduction to programming and the Objective-C language is your first step on the journey from someone who uses apps to someone who writes them. Based on Big Nerd Ranch's popular Objective-C Bootcamp, Objective-C Programming: The Big Nerd Ranch Guide covers C, Objective-C, and the common programming idioms that enable developers to make the most of Apple technologies. Compatible with Xcode 5, iOS 7, and OS X Mavericks (10.9), this guide features short chapters and an engaging style to keep you motivated and moving forward. At the same time, it encourages you to think critically as a programmer. Here are some of the topics covered: Using Xcode, Apple’s documentation, and other tools Programming basics: variables, loops, functions, etc. Objects, classes, methods, and messages Pointers, addresses, and memory management with ARC Properties and Key-Value Coding (KVC) Class extensions Categories Classes from the Foundation framework Blocks Delegation, target-action, and notification design patterns Key-Value Observing (KVO) Runtime basics




Objective-C Phrasebook


Book Description

Offers more than one hundred customizable code phrases for Objective-C programming projects.




iPhone Programming


Book Description

Based on Big Nerd Ranch’s popular iPhone Bootcamp class, iPhone Programming: The Big Nerd Ranch Guide leads you through the essential tools and techniques for developing applications for the iPhone, iPad, and iPod Touch. In each chapter, you will learn programming concepts and apply them immediately as you build an application or enhance one from a previous chapter. These applications have been carefully designed and tested to teach the associated concepts and to provide practice working with the standard development tools Xcode, Interface Builder, and Instruments. The guide’s learn-while-doing approach delivers the practical knowledge and experience you need to design and build real-world applications. Here are some of the topics covered: Dynamic interfaces with animation Using the camera and photo library User location and mapping services Accessing accelerometer data Handling multi-touch gestures Navigation and tabbed applications Tables and creating custom rows Multiple ways of storing and loading data: archiving, Core Data, SQLite Communicating with web services ALocalization/Internationalization "After many 'false starts' with other iPhone development books, these clear and concise tutorials made the concepts gel for me. This book is a definite must have for any budding iPhone developer." –Peter Watling, New Zealand, Developer of BubbleWrap




Working Effectively with Legacy Code


Book Description

Get more out of your legacy systems: more performance, functionality, reliability, and manageability Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform—with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structure This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.




Programming IOS 6


Book Description

Get a solid grounding in all the fundamentals of Cocoa Touch, and avoid problems during iPhone and iPad app development. With this revised and expanded edition, you'll dig into Cocoa and learn how to work effectively with Objective-C and Xcode. This book covers iOS 6 in a rigorous, orderly fashion--ideal whether you're approaching iOS for the first time or need a reference to bolster existing skills. Learn about features introduced with iOS 6, including Objective-C language advances, autosynthesis, autolayout, new view controller rotation rules, unwind segues, state restoration, styled text, and collection views. Learn Objective-C language details and object-oriented programming concepts Understand the anatomy of an Xcode project and all the stages of its lifecycle Grasp key Cocoa concepts such as relationships between classes, receiving events, and model-view-controller architecture Learn how views and layers are managed, drawn, composited, and animated Become familiar with view controllers and their relationships, along with nib and storyboard management Fully explore all basic interface objects such as scroll views, table views, and controls Delve into Cocoa frameworks for sound, video, sensors, maps, and other features Touch on advanced topics such as threading and networking