Objective-C Phrasebook - David Chisnall

Objective-C Phrasebook

(Autor)

Buch | Softcover
352 Seiten
2011
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-74362-6 (ISBN)
27,70 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Objective-C Phrasebook gives you the code phrases you need to quickly and effectively complete your programming projects with Objective-C, on systems including iOS and Mac OS X.

 

Concise and Accessible



Easy to carry and easy to use–lets you ditch all those bulky books for one portable pocket guide

 

Flexible and Functional

Packed with more than 100 customizable code snippets–so you can readily code elegant Objective-C in just about any situation

David Chisnall is an active contributor to the GNUstep project, which provides an open source implementation of the Cocoa APIs, and cofounded the Étoilé project to build a desktop environment atop GNUstep. He has created a new Objective-C runtime library, worked on Objective-C support in the clang compiler, and published papers on Objective-C. He is the author of Cocoa Programming Developer’s Handbook (Addison-Wesley, 2009).

Introduction xiv

1 The Objective-C Philosophy 1

Understanding the Object Model 2

A Tale of Two Type Systems 4

C Is Objective-C 5

The Language and the Library 7

The History of Objective-C 9

Cross-Platform Support 12

Compiling Objective-C Programs 14

2 An Objective-C Primer 17

Declaring Objective-C Types 18

Sending Messages 22

Understanding Selectors 26

Declaring Classes 28

Using Protocols 33

Adding Methods to a Class 35

Using Informal Protocols 38

Synthesizing Methods with Declared Properties 39

Understanding self, _cmd, super 44

Understanding the isa Pointer 47

Initializing Classes 50

Reading Type Encodings 53

Using Closures 56

3 Memory Management 59

Retaining and Releasing 60

Assigning to Instance Variables 61

Avoiding Retain Cycles 63

Autorelease Pools 64

Using Autoreleased Constructors 66

Autoreleasing Objects in Accessors 67

Supporting Automatic Garbage Collection 68

Interoperating with C 70

Using Weak References 71

Allocating Scanned Memory 73

4 Common Objective-C Patterns 75

Supporting Two-Stage Creation 76

Copying Objects 78

Archiving Objects 80

Creating Designated Initializers 84

Enforcing the Singleton Pattern 87

Delegation 89

Providing Façades 91

Creating Class Clusters 93

Using Run Loops 96

5 Numbers 99

Storing Numbers in Collections 101

Performing Decimal Arithmetic 105

Converting Between Strings and Numbers 108

Reading Numbers from Strings 110

6 Manipulating Strings 113

Creating Constant Strings 114

Comparing Strings 115

Processing a String One Character at a Time 119

Converting String Encodings 122

Trimming Strings 125

Splitting Strings 126

Copying Strings 128

Creating Strings from Templates 130

Storing Rich Text 133

7 Working with Collections 135

Using Arrays 137

Manipulating Indexes 139

Storing Unordered Groups of Objects 141

Creating a Dictionary 143

Iterating Over a Collection 145

Finding an Object in a Collection 149

Subclassing Collections 152

8 Dates and Times 157

Finding the Current Date 158

Converting Dates for Display 160

Calculating Elapsed Time 163

Parsing Dates from Strings 165

Receiving Timer Events 166

9 Working with Property Lists 169

Storing Collections in Property Lists 170

Reading Data from Property Lists 173

Converting Property List Formats 176

Storing User Defaults 178

Storing Arbitrary Objects in User Defaults 182

10 Interacting with the Environment 185

Getting Environment Variables 186

Parsing Command-Line Arguments 188

Accessing the User’s Locale 190

Supporting Sudden Termination 191

11 Key-Value Coding 195

Accessing Values by Key 196

Ensuring KVC Compliance 197

Understanding Key Paths 201

Observing Keys 203

Ensuring KVO Compliance 205

12 Handling Errors 209

Runtime Differences for Exceptions 210

Throwing and Catching Exceptions 214

Using Exception Objects 216

Managing Memory with Exceptions 218

Passing Error Delegates 221

Returning Error Values 222

Using NSError 223

13 Accessing Directories and Files 227

Reading a File 228

Moving and Copying Files 230

Getting File Attributes 232

Manipulating Paths 234

Determining if a File or Directory Exists 236

Working with Bundles 238

Finding Files in System Locations 240

14 Threads 245

Creating Threads 246

Controlling Thread Priority 247

Synchronizing Threads 250

Storing Thread-Specific Data 252

Waiting for a Condition 255

15 Blocks and Grand Central 259

Binding Variables to Blocks 260

Managing Memory with Blocks 264

Performing Actions in the Background 267

Creating Custom Work Queues 269

16 Notifications 273

Requesting Notifications 274

Sending Notifications 276

Enqueuing Notifications 277

Sending Notifications Between Applications 278

17 Network Access 283

Wrapping C Sockets 284

Connecting to Servers 286

Sharing Objects Over a Network 289

Finding Network Peers 292

18 Debugging Objective-C 297

Inspecting Objects 298

Recognizing Memory Problems 300

Watching Exceptions 302

Asserting Expectations 304

Logging Debug Messages 306

19 The Objective-C Runtime 309

Sending Messages by Name 310

Finding Classes by Name 312

Testing If an Object Understands a Method 313

Forwarding Messages 315

Finding Classes 318

Inspecting Classes 320

Creating New Classes 322

Index 325

Erscheint lt. Verlag 3.3.2011
Verlagsort New Jersey
Sprache englisch
Maße 177 x 122 mm
Gewicht 286 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Mac / Cocoa Programmierung
Informatik Software Entwicklung Objektorientierung
ISBN-10 0-321-74362-8 / 0321743628
ISBN-13 978-0-321-74362-6 / 9780321743626
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Apps programmieren für macOS, iOS, watchOS und tvOS

von Thomas Sillmann

Buch (2023)
Carl Hanser (Verlag)
59,99
Das umfassende Handbuch. Apps entwickeln für iOS, macOS und tvOS. …

von Michael Kofler

Buch | Hardcover (2019)
Rheinwerk (Verlag)
49,90
The Big Nerd Ranch Guide

von Matthew Mathias; Mikey Ward; John Gallagher

Buch | Softcover (2020)
Big Nerd Ranch Guides (Verlag)
48,75