Learning Swift 2 Programming
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-13-443159-8 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
Learning Swift 2 Programming is a fast-paced, hands-on introduction to writing production-quality iOS and OS X apps with Apple’s programming language. Written for developers with experience in any modern language, this book explains Swift simply and clearly, using relevant examples that solve realistic problems.
Author Jacob Schatz’s popular YouTube video tutorials have already helped thousands of Apple developers get started with Swift. Now, he helps you take full advantage of Swift’s advanced design, remarkable performance, and streamlined development techniques.
Step by step, you’ll move from basic syntax through advanced features such as closures and generics—discovering helpful tips and tricks along the way. After you’ve mastered Swift’s building blocks and learned about its key innovations, a full section of case studies walks you through building complete apps from scratch.
Learn how to:
Compare Swift with Objective-C, JavaScript, Python, Ruby, and C
Collect data with arrays and dictionaries, and store it with variables and constants
Group commonly used code into functions for easy reuse
Structure your code with enums, structs, and classes
Use generics to get more done with less code
Write closures to share small blocks of functionality
Use optionals to write more robust, crash-resistant, and cleaner code
Integrate existing Objective-C code into new Swift apps
Program on the bit and byte levels with advanced operators
Implement efficient design patterns with protocols and delegates
Create animated 2D games with SpriteKit, and apps with UIKit
Jacob Schatz is a senior software engineer with more than eight years of experience writing code for the masses. His code is often used by millions of people, and his advice is often sought. Jacob also goes by the name Skip Wilson and has a popular YouTube channel currently covering Swift and Python. Jacob is always selectively consuming the latest programming trends. He has a passion for making a difference and is constantly solving problems. Lately he has been deep into Swift, but he also writes tons of JavaScript, Python, Objective-C, and other languages. He is always learning more languages and thoroughly enjoys making new things. He is, at heart, a pedagogue, and he enjoys teaching and finding new ways to explain advanced concepts.
Introduction 1
1 Getting Your Feet Wet: Variables, Constants, and Loops 5
Building Blocks of Swift 6
Computed Properties (Getters and Setters) 6
Using Comments 8
Inference 8
Merging Variables into a String 10
Optionals: A Gift to Unwrap 11
Printing Your Results 14
Implicitly Unwrapped Optionals 14
Tuples 15
Number Types 16
From Objective-C to Swift 17
Control Flow: Making Choices 18
Switching It Up: switch Statements 25
Stop...Hammer Time 28
Summary 29
2 Collecting Your Data: Arrays and Dictionaries 31
Using Arrays 31
Your First Array the Long Way 31
A Quicker Array 32
Using AnyObject 32
Differences Between NSArrays and Swift Arrays 33
Modifying Arrays 33
Accessing Array Elements 33
Adding Elements to an Array 34
Removing Elements from Arrays 34
Iterating Over Arrays 35
Extra Bits of Arrays 35
Emptying an Array 36
Using Dictionaries 36
Adding, Removing, and Inserting with Dictionaries 37
Iterating Over Dictionaries 37
Extra Bits of Dictionaries 38
Emptying a Dictionary 38
Testing Dictionaries for the Presence of Values 38
Putting It All Together 39
Summary 41
3 Making Things Happen: Functions 43
Defining Functions 44
Return Types 45
Multiple Return Values 46
More on Parameters 47
External Parameter Names 47
Default Parameter Values 48
Variadic Parameters 49
In-Out Parameters 50
Functions as Types 51
Putting It All Together 52
Summary 55
4 Structuring Code: Enums, Structs, and Classes 57
Enums 58
Which Member Was Set? 59
Associated Values 59
Raw Values 60
Structs 61
Defining Methods in Structs 63
Structs Are Always Copied 64
Mutating Methods 65
Classes 66
Initialization 66
What Is a Reference Type? 68
Do I Use a Struct or a Class? 68
Forgot Your Pointer Syntax? 69
Property Observers 69
Methods in Classes 70
Summary 74
5 SpriteKit 75
Introducing SpriteKit 75
The SKNode and SKSpriteNode 75
Creating a Game 76
The New Project Screen 76
The Game 85
Summary 92
6 Reusable Code: Closures 93
What Are Closures? 93
Closures in Other Languages 94
How Closures Work and Why They’re Awesome 95
The Closure Syntax 96
Inferring Using Context 96
Arguments Have a Shorthand, Too 97
Sorting a Custom Car Class 97
Closures Are Reference Types 98
Automatic Reference Counting 99
Strong Reference Cycles 100
Trailing Closures 106
Summary 107
7 Creating Your Own Syntax: Subscripts and Advanced Operators 109
Writing Your First Subscript 110
Bits and Bytes with Advanced Operators 113
Bitwise NOT 114
Bitwise AND 115
Bitwise OR 116
Bitwise XOR 117
Shifting Bits 118
UInt8, UInt16, UInt32, Int8, Int16, Int32, and So On 119
Value Overflow and Underflow 119
Customizing Operators 120
Making Your Own Operators 122
Bits and Bytes in Real Life 123
Summary 127
8 Protocols 129
Writing Your First Protocol 129
Properties 131
Animizable and Humanizable 134
Methods 135
Delegation 136
Protocols as Types 138
Protocols in Collections 139
Protocol Inheritance 140
Protocol Composition 141
Protocol Conformity 143
Optional Protocol Prerequisites 145
Optional Chaining 146
Back to Optional Protocol Requisites 148
Useful Built-in Swift Protocols 149
Summary 151
9 Becoming Flexible with Generics 153
The Problem That Generics Solve 153
Other Uses for Generics 155
Generics for Protocols 157
The where Clause 158
Summary 162
10 Games with SpriteKit 163
The Game 163
The Setup 163
Tour the Code 164
The Game 164
Step 1: Create the World 165
Step 2: Making Things Move 176
Summary 185
11 Making Games with Physics 187
Making a Physics-Based Game 187
Creating the Project 188
Adding the Assets 189
Adding the Levels 189
Generating the Levels 190
Making a Playable Game 197
Creating the Cage 199
Summary 204
12 Making Apps with UIKit 205
Application Types 205
Single-View Applications 206
Creating the User Interface 208
Adding Constraints 209
Hooking Up the UI to Code 211
Writing the Code 212
The TableView 216
Summary 218
Index 219
Erscheinungsdatum | 31.01.2016 |
---|---|
Verlagsort | New Jersey |
Sprache | englisch |
Maße | 179 x 228 mm |
Gewicht | 402 g |
Themenwelt | Informatik ► Betriebssysteme / Server ► Macintosh / Mac OS X |
Informatik ► Programmiersprachen / -werkzeuge ► Mac / Cocoa Programmierung | |
Informatik ► Software Entwicklung ► Mobile- / App-Entwicklung | |
Informatik ► Weitere Themen ► Smartphones / Tablets | |
Technik ► Nachrichtentechnik | |
ISBN-10 | 0-13-443159-6 / 0134431596 |
ISBN-13 | 978-0-13-443159-8 / 9780134431598 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich