Muutke küpsiste eelistusi

E-raamat: Objective-C Programming: The Big Nerd Ranch Guide

  • Formaat: 325 pages
  • Sari: Big Nerd Ranch Guides
  • Ilmumisaeg: 20-Nov-2013
  • Kirjastus: Big Nerd Ranch Guides
  • Keel: eng
  • ISBN-13: 9780133491906
Teised raamatud teemal:
  • Formaat - EPUB+DRM
  • Hind: 18,71 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 325 pages
  • Sari: Big Nerd Ranch Guides
  • Ilmumisaeg: 20-Nov-2013
  • Kirjastus: Big Nerd Ranch Guides
  • Keel: eng
  • ISBN-13: 9780133491906
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

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 Ranchs popular Objective-C Bootcamp, Objective-C Programming: The Big Nerd Ranch Guidecovers 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
I Getting Started 1(18)
1 You and This Book
3(4)
C and Objective-C
3(1)
How this book works
4(1)
How the life of a programmer works
4(3)
2 Your First Program y
7(12)
Installing Apple's developer tools
7(1)
Getting started with Xcode
7(2)
Where do I start writing code?
9(5)
How do I run my program?
14(1)
So, what is a program?
15(1)
Don't stop
16(3)
II How Programming Works 19(64)
3 Variables and Types
21(4)
Types
21(1)
A program with variables
22(2)
Challenge
24(1)
4 if/else
25(4)
Boolean variables
27(1)
When curly braces are optional
27(1)
else if
27(1)
For the more curious: conditional operators
28(1)
Challenge
28(1)
5 Functions
29(14)
When should I use a function?
29(1)
How do I write and use a function?
29(2)
How functions work together
31(2)
Standard libraries
32(1)
Local variables, frames, and the stack
33(1)
Scope
34(1)
Recursion
35(3)
Looking at frames in the debugger
38(2)
return
40(1)
Global and static variables
41(1)
Challenge
42(1)
6 Format Strings
43(4)
Using tokens
43(1)
Escape sequences
44(1)
Challenge
45(2)
7 Numbers
47(8)
Integers
47(5)
Tokens for displaying integers
48(1)
Integer operations
49(3)
Floating-point numbers
52(1)
Tokens for displaying floating-point numbers
52(1)
The math library
52(1)
Challenge
53(1)
A note about comments
53(2)
8 Loops
55(10)
The while loop
56(1)
The for loop
57(1)
break
58(1)
continue
59(1)
The do-while loop
60(1)
Challenge: counting down
60(1)
Challenge: user input
61(4)
9 Addresses and Pointers
65(6)
Getting addresses
65(1)
Storing addresses in pointers
66(1)
Getting the data at an address
67(1)
How many bytes?
67(1)
NULL
68(1)
Stylish pointer declarations
69(1)
Challenge: how much memory?
70(1)
Challenge: how much range?
70(1)
10 Pass-By-Reference
71(4)
Writing pass-by-reference functions
72(2)
Avoid dereferencing NULL
74(1)
Challenge
74(1)
11 Structs
75(4)
Challenge
77(2)
12 The Heap
79(4)
III Objective-C and Foundation 83(154)
13 Objects
85(10)
Objects
85(3)
Classes
85(1)
Creating your first object
86(2)
Methods and messages
88(6)
Message sends
88(1)
Another message
89(1)
Class methods vs. instance methods
90(1)
Sending bad messages
91(2)
A note on terminology
93(1)
Challenge
94(1)
14 More Messages
95(8)
A message with an argument
95(1)
Multiple arguments
96(2)
Nesting message sends
98(1)
alloc and init
99(1)
Sending messages to nil
99(1)
id
100(1)
Challenge
100(3)
15 Objects and Memory
103(6)
On pointers and their values
103(2)
Memory management
105(4)
ARC
106(3)
16 NSString
109(10)
Creating instances of NSString
109(1)
NSString methods
109(1)
Class references
110(6)
Other parts of the documentation y
116(1)
Challenge: finding more NSString methods
117(1)
Challenge: using readline()
117(2)
17 NSArray
119(10)
Creating arrays
119(1)
Accessing arrays
120(3)
Iterating over arrays
123(2)
NSMutableArray
125(1)
Old-style array methods
126(1)
Challenge: a grocery list
127(1)
Challenge: interesting names
127(2)
18 Your First Class
129(8)
Accessor methods
133(1)
Accessor naming conventions
133(1)
self
134(1)
Multiple files
134(1)
Class prefixes
134(1)
Challenge
135(2)
19 Properties
137(4)
Declaring properties
137(1)
Property attributes
138(1)
Dot notation
139(2)
20 Inheritance
141(10)
Overriding methods
144(1)
super
145(1)
Inheritance hierarchy
146(1)
description and %@
147(1)
Challenge
148(3)
21 Object Instance Variables and Properties
151(10)
Object ownership and ARC
153(6)
Creating the BNRAsset class
154(1)
Adding a to-many relationship to BNREmployee
155(4)
Challenge: holding portfolio
159(1)
Challenge: removing assets
160(1)
22 Class Extensions
161(4)
Hiding mutability
162(1)
Headers and inheritance
163(1)
Headers and generated instance variables
164(1)
Challenge
164(1)
23 Preventing Memory Leaks
165(12)
Strong reference cycles
167(3)
Weak references
170(1)
Zeroing of weak references
171(2)
For the More Curious: manual reference counting and ARC history
173(4)
Retain count rules
174(3)
24 Collection Classes
177(12)
NSSet/NSMutableSet
177(3)
NSDictionary/NSMutableDictionary
180(3)
Immutable objects
183(1)
Sorting arrays
184(1)
Filtering
185(1)
Collections and ownership
186(1)
C primitive types
186(1)
Collections and nil
187(1)
Challenge: reading up
187(1)
Challenge: top holdings
187(1)
Challenge: sorted holdings
187(2)
25 Constants
189(8)
Preprocessor directives
190(2)
#include and #import
191(1)
#define
191(1)
Global variables
192(1)
enum
193(2)
#define vs. global variables
195(2)
26 Writing Files with NSString and NSData
197(8)
Writing an NSString to a file
197(1)
NSError
198(2)
Reading files with NSString
200(1)
Writing an NSData object to a file
200(2)
Reading an NSData from a file
202(1)
Finding special directories
202(3)
27 Callbacks
205(12)
The run loop
206(1)
Target-action
206(3)
Helper objects
209(3)
Notifications
212(2)
Which to use?
214(1)
Callbacks and object ownership
214(1)
For the more curious: how selectors work
215(2)
28 Blocks
217(12)
Using blocks
218(5)
Declaring a block variable
218(1)
Composing a block
219(1)
Passing in a block
220(2)
typedef
222(1)
Blocks vs. other callbacks
223(1)
More on blocks
223(4)
Return values
223(1)
Anonymous blocks
224(1)
External variables
224(3)
Challenge: an anonymous block
227(1)
Challenge: using a block with NSNotificationCenter
227(2)
29 Protocols
229(4)
Calling optional methods
231(2)
30 Property Lists
233(4)
Challenge
236(1)
IV Event-Driven Applications 237(42)
31 Your First iOS Application
239(20)
GUI-based applications
239(1)
Getting started with iTahDoodle
240(1)
BNRAppDelegate
241(1)
Model-View-Controller
242(2)
The application delegate
244(1)
Setting up views
245(3)
Running on the iOS simulator
248(1)
Wiring up the button
249(2)
Wiring up the table view
251(4)
Saving and loading data
255(2)
Adding a C helper function
255(1)
Saving task data
256(1)
Loading task data
256(1)
For the more curious: what about main()?
257(1)
For the more curious: running iTahDoodle on a device
257(2)
32 Your First Cocoa Application
259(20)
Getting started with TahDoodle
260(2)
Setting up views in Interface Builder
262(8)
Setting up the button
263(2)
Setting up the table view
265(3)
Adding autolayout constraints
268(2)
Making connections
270(5)
File's Owner
270(1)
Setting the button's target-action pair
271(2)
Connecting the table view
273(2)
Implementing NSTableViewDataSource
275(2)
Saving and loading data
277(1)
Challenge
278(1)
V Advanced Objective-C 279(28)
33 init
281(10)
Writing init methods
281(1)
A basic init method
282(1)
instancetype
282(1)
Using and checking the superclass initializer
283(1)
init methods that take arguments
283(2)
Using accessors
285(1)
Multiple initializers
286(3)
Deadly init methods
289(2)
34 More about Properties
291(6)
More on property attributes
291(3)
Mutability
291(1)
Lifetime specifiers
291(3)
Advice on atomic vs. nonatomic
294(1)
Implementing accessor methods
294(3)
35 Key-Value coding
297(4)
Non-object types
299(1)
Key paths
299(2)
36 Key-Value Observing
301(4)
Using the context in KVO
302(1)
Triggering the notification explicitly
303(1)
Dependent properties
304(1)
37 Categories
305(2)
Challenge
306(1)
VI Advanced C 307(30)
38 Bitwise Operations
309(8)
Bitwise-OR
310(1)
Bitwise-AND
311(1)
Other bitwise operators
312(2)
Exclusive-OR
312(1)
Complement
313(1)
Left-shift
313(1)
Right-shift
314(1)
Using enum to define bit masks
314(1)
More bytes
315(1)
Challenge
315(2)
39 C Strings
317(6)
char
317(1)
char*
318(3)
String literals
321(1)
Converting to and from NSString
322(1)
Challenge
322(1)
40 C Arrays
323(6)
Challenge
325(4)
41 Running from the Command Line
329(6)
Command-line arguments
330(3)
More convenient running from the command-line
333(2)
42 Switch Statements
335(2)
Appendix: The Objective-C Runtime 337(8)
Introspection
337(1)
Dynamic method lookup and execution
337(1)
Management of classes and inheritance hierarchies
338(4)
How KVO works
342(2)
Final notes
344(1)
Challenge: instance variables
344(1)
Next Steps 345(2)
Index 347
Aaron Hillegass, a former employee at NeXT and Apple, has nearly two decades experience programming and teaching Objective-C, Cocoa, and, more recently, iOS. Aaron is the author of Cocoa Programming for Mac OS X and co-author of iOS Programming: The Big Nerd Ranch Guide. Both best-sellers, these books have helped many people develop and enhance their programming skills. In 2001, Aaron founded Big Nerd Ranch and began developing intensive courses that teach programming in a focused, distraction-free environment. He is currently working on site plans and blueprints for the new Ranch to be located in Atlanta, GA.

Mikey Ward is a senior iOS and Cocoa instructor at Big Nerd Ranch. Mikey also convenes the Atlanta chapter of CocoaHeads, a worldwide group devoted to discussion of Apple's frameworks for writing Mac and iOS applications.

Big Nerd Ranch is a unique software engineering and training company where monastic principles drive technological development. Since 2001, the company has been helping students master programming languages through public enrollment bootcamps, private corporate on-site training, and a growing roster of programming books. Big Nerd Ranch offers consultative services to a broad array of clients, shaping their mobile strategies and developing fresh and engaging mobile and desktop applications.