Cocoa与Objective-C:构建与运行(影印版)

Cocoa与Objective-C:构建与运行(影印版)
作 者: 史蒂文森
出版社: 东南大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 程序设计
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Scott Stevenson从事Cocoa应用开发八年,此外还拥有六年相关教学经验。他曾创建了风靡一时的Mac编程博客Theocacao,并且于2003年接手Cocoa Dev Central,成为主笔和编辑。他在硅谷组织了多场Cocoa Heads会议,并发表演讲。

内容简介

为Mac、iPhone和iPad打造健壮的应用程序,无论你是只有基本的编程技能,还是有多年的开发经验。在本书中,你将通过循序渐进的教程、亲身实践的练习、简明扼要的范例,以及来自Cocoa专家的谆谆教诲,学会如何运用Apple的Cocoa框架和lObiective—C语言。《Cocoa与ObjectiVe—c:构建与运行》给你打下充分的理论基础,然后向你展示如何使用Apple的快速开发工具——Xcode和InterlfaceBuilder,来开发Cocoa应用程序、管理用户交互、创建很棒的UI等等。你将迅速获得开发高级软件所需的经验,无论你是编程新手还是该平台的入门用户。

图书目录

Preface

1. Setup and First Run

Download and Install Xcode

Your First Application

Create the Interface

Run the Finished Application

2. Thinking in Code: Basic C

How Code Works

How to Format Code

Variables

Types

Constants

Enumerated Types

Typedefs

Functions

Declaring Functions

Example: FirstProgram

Displaying Values on the Command Line

Compile and Run the Example

Scope

Static Variables

Conditionals

Example: ShoppingTrip

Compile and Run

Wrap Up

3. Memory and Pointers: Advanced C

Arrays

Loops

Text Strings

Multidimensional Arrays

Pointers

The Purpose of Pointers

Using Pointers

Pointers and the const Keyword

Dynamic Memory

Strings and Dynamic Memory

Returning Strings from Functions

Arrays of Strings

Example: AddressBook

Compile and Run the AddressBook Example

Structs

Header Files

Compile and Run the HeaderFileTest Example

Create Files for the Song Struct

Final Example

4. Thinking in Objects

Structs and Classes

Designing Classes

Accessors

Inheritance

Composition

Object Lifetime

Built-in Classes

5. Basic Objective-C

NSString Basics

Using Methods

Nested Method Calls

Multi-Input Methods

Accessors

Dot Syntax

Creating Objects

Basic Memory Management

Using Autorelease Directly

Declaring a Class

Add Methods

Implementing a Class

init

dealloc

Example: Photolnfo

6. More Objective-C

More on Memory Management

The Life of an Instance Variable

Copying Objects

Class Name Prefixes

Properties

Property Options

64-Bit Objective-C

Enabling 64-Bit

Should I Use 64-Bit?

All Further Examples Assume 64-Bit

Categories

Categories for Private Methods

Introspection

Protocols

Dynamic Messaging

Using Selectors to Call Methods

Forwarding Messages

Exceptions

Example: DataCollector

Some New Classes and Methods

Create the Files

Build and Run

7. Foundation Value Classes

NSString

Ranges and Substrings

Using NSString with C Types

Comparing Strings for Equality

Strings As File Paths

Reading and Writing Files with Strings

Mutability

Advantages of Mutability

Advantages of Immutability

Core Foundation

Memory Management

Core Foundation Mutability

Toll-Free Bridging

Core Foundation Types As Properties

Drawbacks of Core Foundation Types

Open Source

NSNumber

CFNumberRef

Cocoa Primitive Types

NSDecimalNumber

NSNumberFormatter

When to Use Which Number Type

NSData

NSMutableData

NSArray

Fast Enumeration

Blocks

NSMutableArray

CFArrayRef

NSIndexSet

NSDictionary

NSMutableDictionary

CFDictionaryRef

NSSet

NSMutableSet

NSValue

NSDate

CFDateRef

8. Basic C0ntr01s

How to Use This Chapter

Windows and Views

Targets and Actions

Buttons

Declaring Action Methods

Connecting Actions

Menus

Responder Chain

Pop-up Buttons

Sliders

Text Fields

Outlets

Datasources

Table View Datasource Methods

Implementing Datasource Methods

Bindings

Key-Value Protocols

Bindings for Simple Controls

Bindings for Complex Controls

Tips for Debugging Bindings

9. Designing Applications Using MVC

About This Project

Window Controllers

View Controllers

Core Data

Create the Project Files

Create the Entities

Add Attributes and Relationships

Update the App Delegate

Add the Quartz Framework

Create the Window Controller

Create the View Controllers

Create the Managed Object Classes

Create the User Interface

Remove the Default Window

Create the Main Window Interface

Create the Browser Interface

Create the Editor View Interface

Create the List View Interface

Run the Application

Preparing for Release

10. Custom Views and Drawing

Basic Geometry

Geometry Structs As Strings

Geometry Structs As NSValues

Cocoa View Coordinates

Derived Rects

Comparison Functions

Basic Drawing

NSColor

Subclassing NSView

Instantiate the View

The Graphics Context

Bezier Paths

Drawing Polygons

Drawing Curved Paths

Images

Loading Image Data

Drawing Images in a View

Shadows

Add a Shadow to StyledlmageView

Gradients

Drawing a Gradient Background

Drawing an Image Sheen,

Refactoring View Code

Why You Should Refactor

Goals for Refactoring

Refactored Header

Refactored Implementation

Test the Refactored Version

Text

Fonts

Attributed Strings

Add a Title to StyledlmageView

Handling Mouse and Keyboard Events

Keyboard Events

Mouse Events

Add Event Support to StyledImageView

11. The Final Word

The List

Websites

Last Thought

Index