万本电子书0元读

万本电子书0元读

顶部广告

Learning Swift - Second Edition电子书

售       价:¥

0人正在读 | 0人评论 9.8

作       者:Andrew J Wagner

出  版  社:Packt Publishing

出版时间:2016-03-23

字       数:170.3万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Develop the skills required to create compelling, maintainable, and robust iOS and OS X apps with Swift About This Book Write expressive, understandable, and maintainable Swift 2 code with this hands-on tutorial Unveil the complex underpinnings of Swift to turn your app ideas into reality This book is packed with real-life examples to help you implement concepts as you learn Who This Book Is For If you are looking to build iOS or OS X apps using the most modern technology, this book is ideal for you. You will find this book especially useful if you are new to programming or if you are yet to develop for iOS or OS X. No prior programming exposure is required. What You Will Learn Form a solid understanding of the Swift 2 language Get to know the practical aspects of how a computer program actually works Understand the paradigms used by Apple’s frameworks so you are not intimidated by them Utilize the vast resources written in Objective-C to better inform your Swift programming Develop a basic portfolio of Swift code by learning the critical concepts Experience both object-oriented and functional programming Get to know the new coding techniques made available by Swift 2 Discover resources to ensure you never stop becoming a better developer In Detail Swift is Apple’s new programming language and the future of iOS and OS X app development. It is a high-performance language that feels like a modern *ing language. On the surface, Swift is easy to jump into, but it has complex underpinnings that are critical to becoming proficient at turning an idea into reality. This book is an approachable, step-by-step introduction into programming with Swift for everyone. It begins by giving you an overview of the key features through practical examples and progresses to more advanced topics that help differentiate the proficient developers from the mediocre ones. It covers important concepts such as Variables, Optionals, Closures, Generics, and Memory Management. Mixed in with those concepts, it also helps you learn the art of programming such as maintainability, useful design patterns, and resources to further your knowledge. This all culminates in writing a basic iOS app that will get you well on your way to turning your own app ideas into reality. Style and approach This is an approachable, step-by-step guide to programming in Swift 2. Each topic is separated into compressible sections that are full of practical examples and easy-to-understand explanations. Each section builds on the previous topics so you can develop a proficient and comprehensive understanding of app development in Swift 2.
目录展开

Learning Swift Second Edition

Table of Contents

Learning Swift Second Edition

Credits

About the Author

About the Reviewer

www.PacktPub.com

eBooks, discount offers, and more

Why subscribe?

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Downloading the color images of this book

Errata

Piracy

Questions

1. Introducing Swift

Defining our goals for this book

Setting up the development environment

Running our first swift code

Understanding playgrounds

Learning with this book

Summary

2. Building Blocks – Variables, Collections, and Flow Control

Core Swift types

Constants and variables

Containers

Tuples

Arrays

Dictionaries

Swift's type system

Printing to the console

Control flow

Conditionals

Switches

Loops

Functions

Basic functions

Parameterized functions

Functions that return values

Functions with default arguments

Guard statement

Bringing it all together

Summary

3. One Piece at a Time – Types, Scopes, and Projects

Structs

Types versus instances

Properties

Member and static methods

Computed properties

Reacting to property changes

Subscripts

Custom initialization

Classes

Inheriting from another class

Initialization

Overriding initializer

Required initializer

Designated and convenience initializers

Overriding methods and computed properties

Methods

Computed properties

Casting

Upcasting

Downcasting

Enumerations

Basic declaration

Testing enumeration values

Raw values

Associated values

Methods and properties

Projects

Setting up a command-line Xcode project

Creating and using an external file

Interfacing with code from other files

File organization and navigation

Extensions

Scope

How scope is defined

Nested types

Access control

Summary

4. To Be or Not To Be – Optionals

Defining an optional

Unwrapping an optional

Optional binding

Forced unwrapping

Nil coalescing

Optional chaining

Implicitly unwrapped optionals

Debugging optionals

The underlying implementation

Summary

5. A Modern Paradigm – Closures and Functional Programming

Functional programming philosophy

State and side effects

Declarative versus imperative code

Closures

Closures as variables

Closures as parameters

Syntactic sugar

Building blocks of functional programming in Swift

Filter

Reduce

Map

Sort

How these affect the state and nature of code

Lazy evaluation

Example

Summary

6. Make Swift Work For You – Protocols and Generics

Protocols

Defining a protocol

Implementing a protocol

Using type aliases

Generics

Generic function

Generic type

Type constraints

Protocol constraints

Where clauses for protocols

Where clauses for equality

Extending generics

Adding methods to all forms of a generic

Adding methods to only certain instances of a generic

Extending protocols

Putting protocols and generics to use

Generators

Sequences

Product of Fibonacci numbers under 50

Summary

7. Everything Is Connected – Memory Management

Computer data storage

File system

Memory

Value types versus reference types

Determining value type or reference type

Behavior on assignment

Behavior on input

Closure capture behavior

Automatic reference counting

Object relationships

Strong

Weak

Unowned

Strong reference cycles

Between objects

Spotting

Fixing

With closures

Spotting

Fixing

Lost objects

Between objects

With closures

Structures versus classes

Summary

8. Paths Less Traveled – Error Handling

Throwing errors

Defining an error type

Defining a function that throws an error

Implementing a function that throws an error

Handling errors

Forceful try

Optional try

Catching an error

Propagating errors

Cleaning up in error situations

Order of execution when errors occur

Deferring execution

Summary

9. Writing Code the Swift Way – Design Patterns and Techniques

What is a design pattern?

Behavioral patterns

Iterator

Observer

Callback

Notification center

Structural patterns

Composite

Hierarchies

Alternative to subclassing

Delegate

Model view controller

Creational patterns

Singleton/shared instance

Abstract factory

Using associated values effectively

Replacing class hierarchies

Concisely representing state

Extending system types to reduce code

Lazy properties

Avoiding unnecessary memory usage

Avoiding unnecessary processing

Localizing logic to the concerned property

Summary

10. Harnessing the Past – Understanding and Translating Objective-C

Swift's relationship to Objective-C

Background of Objective-C

Constants and variables

Value types

Reference types

Containers

Arrays

Dictionaries

Control flow

Conditionals

Switches

Loops

Functions

Types

Structures

Enumerations

Classes

Basic class

Initializers

Properties

Methods

Inheritance

Categories

Protocols

Blocks

Projects

Header files

Implementation files

Organization

Calling Objective-C code from Swift

Bridging header

Using functions

Using types

Containers

Annotations

Nullability

Container element types

Summary

11. A Whole New World – Developing an App

Conceptualizing the app

Features

Interface

Data

Setting up the app project

Configuring the user interface

Running the app

Allowing picture taking

Temporarily saving a photo

Populating our photo grid

Refactoring to respect model-view-controller

Permanently saving a photo

Summary

12. What's Next? – Resources, Advice, and the Next Steps

Apple's documentation

Forums and blogs

Blog posts

Forums

Prominent figures

Podcasts

Summary

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部