售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Swift 3 New Features
Swift 3 New Features
Credits
About the Author
About the Reviewer
www.PacktPub.com
Why subscribe?
Preface
Objectives and achievements
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. What Were They Thinking?
Apple's goals for Swift 3
Open source Swift
Contributing to Swift
Swift evolution process
Overview of accepted proposals for Swift 3
Summary
2. Discovering New Territories – Linux at Last!
Downloading Swift
Swift 3 on Mac
Swift 3 on Linux
Using the REPL
Swift Package Manager
Our first Swift program
Summary
3. Migrating to Swift 3 to Be More Swifty
How can you migrate your project…
Option1 - Migrating to Swift 3
Option 2 - Migrating to Swift 2.3
Planning ahead
Migrating with Xcode's Swift migration tool
Quick strategies for addressing issues
Summary
4. Changes to Swifts Core Will Have You Asking for More
The grand renaming
Referencing Objective-C code in Swift 3
Referencing the Objective-C selector of property getters and setters - SE-0064
Referencing Objective-C key paths [SE-0062]
Importing code from Objective-C and C APIs to Swift 3
Importing Objective-C constants as Swift types [SE-0033]
Importing as Struct
Importing as Enum
Importing Objective-C lightweight generics [SE-0057]
Importing as member [SE-0044]
Defining an initializer
Creating getters and setters
Adding methods
Creating static variables
Summary
5. Function and Operator Changes – New Ways to Get Things Done
Function declaration changes
Consistent parameter labeling [SE-0046]
Removing currying func syntax in declaration [SE0002]
Warning on Unused Results by Default [SE-0047]
Removing var from function parameter lists [SE-0003]
Removing ++ and -- operators [SE-0004]
Removing C-style for loops [SE-0007]
Removing implicit tuple splat from functions [SE-0029]
Adjusting inout declarations for type decoration [SE-0031]
Replacing equal signs with colons for attribute arguments [SE-0040]
Standardizing function type argument syntax to require parentheses [SE-0066]
Enforcing the order of defaulted parameters [SE-0060]
Making optional requirements Objective-C only [SE-0070]
Summary
6. Extra, Extra Collection and Closure Changes That Rock!
Collection and sequence type changes
Lazy FlatMap for sequence of optional [SE-0008]
Adding a first(where:) method to Sequence [SE-0032]
Add sequence(first: next:) and sequence(state: next:) [SE-0094]
A new model for collections and indices [SE-0065]
Introducing the Collection protocol
Conforming to the Collection protocol
New Range and associated indices types
Quick takeaways
Closure changes for Swift 3
Limiting inout Capture of @noescape Closures [SE-0035]
Resolution
Making non-escaping closures the default [SE-0103]
Summary
7. Hold onto Your Chair; Advanced Type Changes Are Here!
Unmanaged and UnsafePointer changes
Changing Unmanaged to use UnsafePointer [SE-0017]
Making UnsafePointer explicit using Optional [SE-0055]
Adding UnsafeRawPointer [SE-0107]
Type aliases and protocol changes
Generic type aliases [SE-0048]
Type aliases in protocols and protocol extensions [SE-0092]
Floating point changes
Enhanced Floating point protocols [SE-0067]
New rounding functions on the FloatingPoint protocol [SE-0113]
Summary
8. Oh Goodness! Look Whats New in the Foundation Framework
Mutability and Foundation value types
Value types versus reference types
Nested enumerations
Strongly typed string enumerations
Class properties
Type safe access with value types
Measurements and units
Measurement
Unit and dimension
Custom units
Custom Dimension types
Convert functions
Formatting measurements
Summary
9. Improving Your Code with Xcode Server and LLDB Debugging
Continuous integration overview with Xcode server
Bot features
Monitoring and managing bots
Configuring Xcode server
Adding repositories for the Xcode server
Configuring bots
Managing and monitoring your integration runs
Debugging with LLDB
LLDB command syntax
Managing breakpoints
Creating a breakpoint
Listing breakpoints
Modifying a breakpoint
Enabling and disabling a breakpoint
Deleting a breakpoint
Command aliases
Summary
10. Exploring Swift on the Server
IBM Swift Package catalog
Introducing our server project
Project description and dependencies
Setting up our environment and project
The Vapor framework
Routing
Creating views
Public resources
Defining our shop view
Slack integration
Making a custom integration
Updating our server to post to Slack
Summary
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜