Swift Programming The Big Nerd Ranch Guide (Big Nerd Ranch Guides) 2nd edition by Matthew Mathias,John Gallagher – Ebook PDF Instant Download/Delivery:013461061X 978-0134610610
Full download Swift Programming The Big Nerd Ranch Guide (Big Nerd Ranch Guides) 2nd edition after payment
Product details:
ISBN 10: 013461061X
ISBN 13: 978-0134610610
Author: Matthew Mathias,John Gallagher
Through the authors’ carefully constructed explanations and examples, you will develop an understanding of Swift grammar and the elements of effective Swift style. This book is written for Swift 3.0 and will also show you how to navigate Xcode 8 and get the most out of Apple’s documentation.
Throughout the book, the authors share their insights into Swift to ensure that you understand the hows and whys of Swift and can put that understanding to use in different contexts.
After working through the book, you will have the knowledge and confidence to develop your own solutions to a wide range of programming challenges using Swift.
Swift Programming The Big Nerd Ranch Guide (Big Nerd Ranch Guides) 2nd Table of contents:
I. Getting Started
1. Getting Started
Getting Started with Xcode
Playing in a Playground
Varying Variables and Printing to the Console
You Are on Your Way!
Bronze Challenge
2. Types, Constants, and Variables
Types
Constants vs Variables
String Interpolation
Bronze Challenge
II. The Basics
3. Conditionals
if/else
Ternary Operator
Nested ifs
else if
Bronze Challenge
4. Numbers
Integers
Creating Integer Instances
Operations on Integers
Integer division
Operator shorthand
Overflow operators
Converting Between Integer Types
Floating-Point Numbers
Bronze Challenge
5. Switch
What Is a Switch?
Switch It Up
Ranges
Value binding
where clauses
Tuples and pattern matching
switch vs if/else
Bronze Challenge
Silver Challenge
6. Loops
for-in Loops
where
A Quick Note on Type Inference
while Loops
repeat-while Loops
Control Transfer Statements, Redux
Silver Challenge
7. Strings
Working with Strings
Unicode
Unicode scalars
Canonical equivalence
Counting elements
Indices and ranges
Bronze Challenge
Silver Challenge
8. Optionals
Optional Types
Optional Binding
Implicitly Unwrapped Optionals
Optional Chaining
Modifying an Optional in Place
The Nil Coalescing Operator
Bronze Challenge
Silver Challenge
III. Collections and Functions
9. Arrays
Creating an Array
Accessing and Modifying Arrays
Array Equality
Immutable Arrays
Documentation
Bronze Challenge
Silver Challenge
Gold Challenge
10. Dictionaries
Creating a Dictionary
Populating a Dictionary
Accessing and Modifying a Dictionary
Adding and Removing Values
Looping
Immutable Dictionaries
Translating a Dictionary to an Array
Silver Challenge
Gold Challenge
11. Sets
What Is a Set?
Getting a Set
Working with Sets
Unions
Intersections
Disjoint
Bronze Challenge
Silver Challenge
12. Functions
A Basic Function
Function Parameters
Parameter names
Variadic parameters
Default parameter values
In-out parameters
Returning from a Function
Nested Functions and Scope
Multiple Returns
Optional Return Types
Exiting Early from a Function
Function Types
Bronze Challenge
Silver Challenge
For the More Curious: Void
13. Closures
Closure Syntax
Closure Expression Syntax
Functions as Return Types
Functions as Arguments
Closures Capture Values
Closures Are Reference Types
Functional Programming
Higher-order functions
map(_:)
filter(_:)
reduce(_:_:)
Bronze Challenge
Bronze Challenge
Gold Challenge
IV. Enumerations, Structures, and Classes
14. Enumerations
Basic Enumerations
Raw Value Enumerations
Methods
Associated Values
Recursive Enumerations
Bronze Challenge
Silver Challenge
15. Structs and Classes
A New Project
Structures
Instance Methods
Mutating methods
Classes
A Monster class
Inheritance
A Zombie subclass
Preventing overriding
Your town has a zombie problem
What Should I Use?
Bronze Challenge
Silver Challenge
For the More Curious: Type Methods
For the More Curious: Mutating Methods
16. Properties
Basic Stored Properties
Nested Types
Lazy Stored Properties
Computed Properties
A getter and a setter
Property Observers
Type Properties
Access Control
Controlling getter and setter visibility
Bronze Challenge
Silver Challenge
Gold Challenge
17. Initialization
Initializer Syntax
Struct Initialization
Default initializers for structs
Custom initializers for structs
Initializer delegation
Class Initialization
Default initializers for classes
Initialization and class inheritance
Automatic initializer inheritance
Designated initializers for classes
Convenience initializers for classes
Required initializers for classes
Deinitialization
Failable Initializers
A failable Town initializer
Initialization Going Forward
Silver Challenge
Gold Challenge
For the More Curious: Initializer Parameters
18. Value vs Reference Types
Value Semantics
Reference Semantics
Constant Value and Reference Types
Using Value and Reference Types Together
Copying
Equality vs Identity
What Should I Use?
For the More Curious: Copy on Write
V. Advanced Swift
19. Protocols
Formatting a Table of Data
Protocols
Protocol Conformance
Protocol Inheritance
Protocol Composition
Mutating Methods
Silver Challenge
Gold Challenge
20. Error Handling
Classes of Errors
Lexing an Input String
Catching Errors
Parsing the Token Array
Handling Errors by Sticking Your Head in the Sand
Swift Error-Handling Philosophy
Bronze Challenge
Silver Challenge
Gold Challenge
21. Extensions
Extending an Existing Type
Extending Your Own Type
Using extensions to add protocol conformance
Adding an initializer with an extension
Nested types and extensions
Extensions with functions
Bronze Challenge
Bronze Challenge
Silver Challenge
22. Generics
Generic Data Structures
Generic Functions and Methods
Type Constraints
Associated Type Protocols
Type Constraint where Clauses
Bronze Challenge
Silver Challenge
Gold Challenge
For the More Curious: Understanding Optionals
For the More Curious: Parametric Polymorphism
23. Protocol Extensions
Modeling Exercise
Extending Exercise
Protocol Extension where Clauses
Default Implementations with Protocol Extensions
Naming Things: A Cautionary Tale
Bronze Challenge
Gold Challenge
24. Memory Management and ARC
Memory Allocation
Strong Reference Cycles
Breaking Strong Reference Cycles with weak
Reference Cycles in Closures
Escaping and Non-escaping Closures
Bronze Challenge
Silver Challenge
For the More Curious: Can I Retrieve the Reference Count of an Instance?
25. Equatable and Comparable
Conforming to Equatable
Interlude: infix operators
Buy one method, get another free!
Conforming to Comparable
Comparable’s Inheritance
Bronze Challenge
Gold Challenge
Platinum Challenge
For the More Curious: Custom Operators
VI. Event-Driven Applications
26. Your First Cocoa Application
Getting Started with VocalTextEdit
Model-View-Controller
Setting Up the View Controller
Setting Up Views in Interface Builder
Adding the Speak and Stop buttons
Adding the text view
Auto Layout
Making Connections
Setting target-action pairs for VocalTextEdit’s buttons
Connecting the text view outlet
Making VocalTextEdit … Vocal
Saving and Loading Documents
Type casting
Saving documents
Loading documents
MVC cleanup
Swift in the real world
Silver Challenge
Gold Challenge
27. Your First iOS Application
Getting Started with iTahDoodle
Laying Out the User Interface
Wiring up your interface
Modeling a To-Do List
Setting Up the UITableView
Saving and Loading TodoList
Saving TodoList
Loading TodoList
Bronze Challenge
Silver Challenge
Gold Challenge
28. Interoperability
An Objective-C Project
Creating a contacts app
Adding Swift to an Objective-C Project
Adding contacts
Adding an Objective-C Class
Silver Challenge
Gold Challenge
29. Conclusion
People also search for Swift Programming The Big Nerd Ranch Guide (Big Nerd Ranch Guides) 2nd :
swift programming the big nerd ranch guide (3rd edition)
swift programming the big nerd ranch guide
swift programming the big nerd ranch guide на русском
swift programming big nerd ranch
big nerd ranch swift
Tags:
Matthew Mathias,John Gallagher,Swift Programming
Reviews
There are no reviews yet.