万本电子书0元读

万本电子书0元读

顶部广告

Reactive Programming with Swift 4电子书

售       价:¥

6人正在读 | 0人评论 9.8

作       者:Navdeep Singh

出  版  社:Packt Publishing

出版时间:2018-02-27

字       数:31.2万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Learn how to solve blocking user experience and build event based reactive applications with Swift. About This Book ? Build fast and scalable apps with RxSwift ? Apply reactive programming to solve complex problems and build efficient programs with reactive user interfaces ? Take expressiveness, scalability, and maintainability of your Swift code to the next level with this practical guide Who This Book Is For This book is for the developers who are familiar with Swift and iOS application development and are looking out to reduce the complexity of their apps. Prior experience of reactive programming is not necessary. What You Will Learn ? Understand the practical benefits of Rx on a mobile platform ? Explore the building blocks of Rx, and Rx data flows with marble diagrams ? Learn how to convert an existing code base into RxSwift code base ? Learn how to debug and test your Rx Code ? Work with Playgrounds to transform sequences by filtering them using map, flatmap and other operators ? Learn how to combine different operators to work with Events in a more controlled manner. ? Discover RxCocoa and convert your simple UI elements to Reactive components ? Build a complete RxSwift app using MVVM as design pattern In Detail RxSwift belongs to a large family of Rx implementations in different programming languages that share almost identical syntax and semantics. Reactive approach will help you to write clean, cohesive, resilient, scalable, and maintainable code with highly configurable behavior. This book will introduce you to the world of reactive programming, primarily focusing on mobile platforms. It will tell how you can benefit from using RxSwift in your projects, existing or new. Further on, the book will demonstrate the unbelievable ease of configuring asynchronous behavior and other aspects of the app that are traditionally considered to be hard to implement and maintain. It will explain what Rx is made of, and how to switch to reactive way of thinking to get the most out of it. Also, test production code using RxTest and the red/ green approach. Finally, the book will dive into real-world recipes and show you how to build a real-world app by applying the reactive paradigm. By the end of the book, you’ll be able to build a reactive swift application by leveraging all the concepts this book takes you through. Style and approach This book is a definite tutorial in FRP with Swift filled with well-described examples.
目录展开

Title Page

Copyright and Credits

Reactive Programming with Swift 4

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the author

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

Migrating from Swift 3 to Swift 4

What's new in Swift 4?

Setting up the environment

What’s changed?

Changes/improvements in Dictionary

Grouping initializer

Key-based subscript with default value

Convert tuples to Dictionary

Convert arrays to Dictionary

Resolving duplicates

Reserving capacity

Changes/improvements in Strings

Bid bye to string.characters

String protocol

Changed interpretation of grapheme clusters

Access modifiers

What's new

JSON encoding and decoding

Multiline String literals

Smart key paths

One sided ranges

Pattern matching with one sided ranges.

swap versus swapAt

Improved NSNumber

Directly access unicode scalars of characters

Migrating to Swift 4

Preparation before migration

Swift migration assistant

Swift 4 migration changes overview

SDK changes

Notable special cases

New String

Differentiating between single-tuple and multiple-argument function types

Adding tuple destructuring

Default parameter values must be public

After migration

Known migration issues

Using Carthage/CocoaPods projects

Summary

FRP Fundamentals, Terminology, and Basic Building Blocks

Functional reactive programming

What is functional reactive programming (FRP)?

Imperative programming

Functional programming

Reactive programming

Basic building blocks

Event streams

State

Side effects

Immutability

RxSwift foundation

Reactive extensions

Observable

Subject

Marble diagrams

Schedulers

Railway-oriented programming

Summary

Set up RxSwift and Convert a Basic Login App to its RxSwift Counterpart

RxSwift in action

Let's build the environment first

Setting up the environment

RxSwift with CocoaPods

Installing RxSwift

Installing RxSwift with Carthage

Let's get started – The Login page

Setting up

Steps to set up

Functional programming to the rescue

Summary

When to Become Reactive?

Creating and subscribing to Observables

Project setup

Getting started

Different types of subject

PublishSubject in action

BehaviorSubject in action

ReplaySubject in action

Variable in action

Understanding traits and its types

What are traits?

Different types of trait

The single trait

The completable trait

The maybe trait

Summary

Filter, Transform, and Simplify

Working with events using operators

Environment setup

Transforming operators

flatMap and flatMapLatest in action

Scan, reduce, and buffer

Scan

Buffer

Filtering operators

The filter operator

The distinctUntilChanged operator

The takeWhile operator

Summary

Reduce by Combining and Filtering and Common Trade Offs

Combining and filtering Observable sequences

Project setup

Concatenating and prefixing

Merging

Combining elements of different types

Introducing zip

Performing side effects

doOn in action

Setting the project

Building the app

Summary

React to UI Events – Start Subscribing

RxCocoa traits

Types of RxCocoa traits

Driver

ControlProperty

ControlEvent

Binding UI elements in practice

Binding data to UI

Binding UITableViews

Configuring cell rows in a TableView

Selecting a row in TableView

Binding UICollectionViews

Summary

RxTest and Custom Rx Extensions – Testing with Rx

Testing in RxSwift

RxTest

Testing in practice with HotObservables

Testing in RxTest with ColdObservables

RxBlocking

Testing with RxBlocking

Summary

Testing Your RxCode – Testing Asynchronous Code

Tracking down issues – Debugging Rx code

Debugging with debug

Debugging with total

Testing asynchronous code

Summary

Schedule Your Tasks, Don't Queue!

Queues and schedulers

Scheduler Singletons

Specifying a scheduler

Schedulers in practice

ConcurrentDispatchQueueScheduler

SerialDispatchQueueScheduler

OperationQueueScheduler

Summary

Subscribe to Errors and Save Your App

Error handling

The catchErrorJustReturn operator

The catchError operator

The retry operator

onErrorJustReturn

onErrorDriveWith

onErrorRecover

Summary

Functional and Reactive App-Architecture

Design patterns

Singleton design pattern

Implementation

Singleton design pattern – Pros and cons

Key value coding (KVC)

KVC – Implementation

Notifications

Notifications – Implementation

Model view controller – MVC

The model

The view

The controller

MVC implementation

Summary

Finish a Real-World Application

Networking in RxSwift

Project setup

Project implementation

Fetching and parsing data

Binding fetched data to View elements

Build and run

Some other cool libraries

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部