Beginning Swift : master the fundamentals of programming in Swift 4 /
Take your first foray into programming for Apple devices with Swift. Swift is fundamentally different from Objective-C, as it is a protocol-oriented language. While you can still write normal object-oriented code in Swift, it requires a new way of thinking to take advantage of its powerful features...
Clasificación: | Libro Electrónico |
---|---|
Autores principales: | , |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham, UK :
Packt Publishing,
2018.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Intro
- Preface
- Swift Basics
- Swift Program Structure
- Hello, World!
- Swift Variables and Constants
- Declaring Swift Variables
- Variables Versus Constants
- Type Inference
- Variable Naming
- Working with Variables
- Tuples
- Creating a Tuple
- Optionals
- Declaring an Optional
- Working with Optionals
- Optional nil Values
- Accessing Optional Values
- Force Unwrapping an Optional
- Conditionally Unwrapping Optionals
- The Swift guard Statement
- Activity: Variable Summary
- Swift Data Types
- Numeric Data Types
- Int on 64-Bit Versus 32-Bit Platforms
- Built-In Numeric Data Types
- Choosing the Appropriate Numeric Data Type
- Declaring and Assigning Integer Variables
- Declaring and Assigning Floating Point Numbers
- Numeric Literal Grouping
- Numeric Type Conversions
- Boolean
- Character
- Assigning a Character
- Constructing a Character Literal
- String
- Instantiating a String
- String Concatenation
- Extracting Characters
- String Length
- Activity: Data Type Summary
- Enums
- Basic Enum Syntax
- Enum with Raw Values
- Activity: Using Swift Enums
- Summary
- Swift Operators and Control Flow
- Swift Operators
- Assignment Operator
- Arithmetic Operators
- Standard Arithmetic Operators
- Remainder Operator
- Unary minus Operator
- Compound Assignment Operators
- Comparison Operators
- Equality
- Inequality
- Comparison between Two Values
- Ternary Conditional Operator
- Logical Operators
- Bitwise Operators
- Nil-Coalescing Operator
- Range Operators
- Closed Range Operator
- Half-Open Range Operator
- One-Sided Range Operator
- Activity: Operators
- Branching
- The if Statement
- Condition Lists
- Optional Unwrapping with if
- The switch Statement
- switch Statement Rules
- The break Keyword
- The fallthrough Keyword
- Matching Non-Scalar Values.
- Multiple Patterns in a Single Case
- Using the where Statement within case
- Evaluating Optionals with a switch Statement
- Activity: Converting Code from if to switch
- Loops
- The for ... in Statement
- Iterating over Objects
- Iterating over Array Objects with index
- The for Loop where Clause
- The break Control Transfer Statement
- The continue Control Transfer Statement
- The while Loop
- The repeat ... while Loop
- Activity: Implementing Loops
- Summary
- Functions, Classes, and Structs
- Functions
- Defining a Function
- Argument Labels
- Excluding Argument Labels
- Parameter Default Values
- Activity: Implementing a Function
- Returning Values from Functions
- Using @discardableResult
- Function Attributes
- Variadic Parameters
- inout Parameters
- Recursion
- Functions as Parameters
- Closures
- Creating a Function to Receive Content from an Asynchronous Web Service Call
- Error Handling
- The do ... catch Statement
- Multiple catch Blocks
- Using do without catch
- The guard Statement
- Activity: Exception Handling
- Object-Oriented Features
- Object-Oriented Principles
- Classes Versus Structs
- Defining Classes and Structures
- Activity: Creating a Customer Struct and Class
- Summary
- Challenge
- Collections
- Arrays
- Working with Arrays
- Index
- Common Operations with Index
- ArraySlice
- Creating Slices
- Activity: Working with Arrays
- Sets
- Working with Sets
- Combining Sets
- Comparing Sets
- Activity: Removing Duplicates from a Sequence
- Dictionaries
- Working with Dictionaries
- Activity: Using Dictionaries
- Summary
- Strings
- String Fundamentals
- Character
- Collection
- Index
- Working with String Index
- Debugging
- Activity: All Indices of a Character
- Using Strings
- Creating Strings
- Common Operations
- Activity: All Ranges of a Substring.
- Activity: Counting Words, Sentences, and Paragraphs
- Substring
- Creating Substrings
- Parsing Strings
- Converting NSRange to Range
- Activity: CamelCase
- Summary
- Functional Programming and Lazy Operations
- Function Type
- Functional Methods
- filter
- Using the filter Method
- map
- Using the map Method
- flatMap
- Using the flatMap Method
- reduce
- Using the reduce Function
- Activity: Using Functional Programming
- Lazy Operations
- Lazy Sequences
- Sequence Internals
- Creating Lazy Operations
- sequence(first:next:)
- sequence(state:next:)
- Activity: Implementing a Lazy Version of a Method
- Swifty Code
- Naming
- Organizing Code
- Miscellaneous
- Writing Swifty Code
- Summary
- Further Study
- Challenge
- Index.