Humburger Icon
Let's Explore, Bibiliophile
close menu
Bookswagon-24x7 online bookstore
close menu
My Account
28%
The Swift Developer's Cookbook (includes Content Update Program): (Developer's Library)

The Swift Developer's Cookbook (includes Content Update Program): (Developer's Library)

          
5
4
3
2
1

Out of Stock


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Notify me when this book is in stock
Add to Wishlist

About the Book

As in all of Sadun’s programming best-sellers, The Swift Developer’s Cookbook translates modern best practices into dozens of well-tested, easy-to-apply solutions. This book’s code examples were created in response to real-world questions from working developers to reflect Swift’s newest capabilities and best practices. Each chapter groups related tasks together. You can jump straight to your solution without having to identify the right class or framework first.

Table of Contents:
Preface xiii
How This Book Is Organized xiii
About the Sample Code xiv
Contacting the Author xv
Chapter 1: Welcome to Modern Swift 1
Migrating Code 2
How to Migrate 2
Migration Lessons 4
Using Swift 4
Compiled Applications 4
Frameworks and Libraries 5
Scripting 5
REPL 6
Playgrounds 7
Other Swift 8
Learning Swift 8
Wrap-up 9
Chapter 2: Printing and Mirroring 11
Basic Printing 11
Printing Multiple Items 12
Adding Item Separators 13
String Interpolation 13
Controlling Line Feeds 14
Recipe: Printing to Custom Destinations 15
Printing to Strings 16
Printing to Custom Output Streams 17
Recipe: Printing and String Formats 18
Swift and Format Specifiers 19
Format Limitations 19
Conditional Compilation 20
Debug Printing 21
Custom Stream Output 21
Recipe: Postfix Printing 23
Quick Looks 24
Quick Look for Custom Types 24
Quick Looks for Custom Types in Playgrounds 25
Playground Quick Looks 25
Creating Custom Quick Looks for Playgrounds 26
Built-in Quick Look Types 27
Third-Party Rendering 28
Using Dump Functions 30
Building Custom Mirrors 31
Recursive Reflection 32
Building Basic Mirror Descriptions Using Protocol Conformance 33
Adding Header Docs 35
Building Header Documentation 35
Markdown Support 36
Keywords 37
Special Swift Concerns 40
Adding Images to Header Docs 40
Wrap-up 41
Chapter 3: Optionals?! 43
Optionals 101 43
Unwrapping Optionals 45
Forced Unwrapping 45
Conditional Binding 46
Conditional Binding and Type Casts 46
Binding Cascades 48
guard Statements 50
Implicitly Unwrapped Optionals 51
Guarding Failable Initializers 52
Optionals and Sentinel Values 53
Coalescing 55
Optional Assignment 55
Optional Patterns 56
Optional Chaining 58
Selector Testing and Optional Chaining 59
Subscripts 60
Optional Mapping 61
Maps and Chaining 61
Filtering nil Values with flatMap 62
Unmanaged Wrappers 62
Wrap-up 64
Chapter 4: Closures and Functions 65
Building a Function 65
Parameter Names 66
Label Conventions 66
Naming Methods and Functions 68
External and Local Parameters 69
Defaults 70
Constant and Variable Parameters 71
Modifying Parameters 72
Closures and Functions 73
Function Types 73
Using Tuple Arguments 74
Using Shorthand Argument Names 74
Inferred Closure Types 76
Parameter Type Inference 77
Declaring Type Aliases 78
Nested Functions 79
Tuples 80
From Tuples to Structs 82
Tuple Return Types 82
Variadic Parameters 83
Capturing Values 85
Autoclosures 87
Adding Default Closures 90
Currying 91
Why Curry? 92
Building Libraries 92
Partial Application 93
Currying Costs 94
Currying and Callbacks 94
Practical Currying 95
Passing Closures as Function Parameters 97
Wrap-up 99
Chapter 5: Generics and Protocols 101
Expanding to Generics 101
Protocols 102
Tokens 103
Type Constraints 104
Adopting Protocols 104
Declaring Protocols 105
Member Declarations 107
Building a Basic Protocol 109
Adding Protocol Default Implementations 110
Optional Protocol Requirements 111
Swift-Native Optional Protocol Requirements 112
Building Generic Types 113
Type Parameters 113
Generic Requirements 114
Conformance Requirements 115
Recipe: Same-Type Requirements 115
Generic Beautification 117
Legal Tokens 117
Matching Aliases 118
Protocol Alias Defaults 119
Collating Associated Types 119
Extending Generic Types 120
Using Protocols as Types 121
Protocol-Based Collections 121
Self Requirements 122
Protocol Objects and Self Requirements 123
Leveraging Protocols 124
Wrap-up 124
Chapter 6: Errors 125
Failing Hard 125
Fatal Errors 126
Assertions 126
Preconditions 127
Aborting and Exiting 128
Failing Gracefully 128
The ErrorType Protocol 129
Choosing Between Optionals and Error Handling 130
Swift Error Rules 130
Rule 1: Move Away from nil Sentinels 131
Rule 2: Use throw to Raise Errors 132
Rule 3: Use Error Types with Visible Access 133
Rule 4: Mark All Error-Participating Methods with throws 134
Rule 5: Use rethrows Consistently 134
Rule 6: Consume Errors Where They Matter 135
Rule 7: Terminate Threaded Error Chains 135
Building Errors 137
Good Errors 138
Naming Your Errors 138
Adding String Descriptions 139
Adding Reasons 139
Simplifying Output 140
Extending String 140
Type-Specific Errors 141
Retrieving Context 141
Contextualizing Strings 142
Contextualizing Throwing Types 143
Simplifying Contexts 144
Calling Throwing Functions 145
Using try 145
Error Propagation 147
Using try! 148
Using try? 148
Implementing Alternatives to try? 149
Guarding Results 151
Building a Printing Version of try? 151
Working with guard and defer 151
Wrap-up 153
Chapter 7: Types 155
Language Concepts 155
Reference and Value Types 155
Copy-and-Write-Back 156
Algebraic Data Types 157
Other Terminology 158
Enumerations 159
Basic Enumerations 159
Using Hash Values to Support Ranges 160
Raw Value Enumerations 162
Raw Value Members and Sequences 163
Associated Values 164
Indirect Values 165
Switches 166
Branching 166
Breaks 167
Fallthroughs 167
Complex Cases 169
Tuples 169
Pattern Matching with Value Bindings 169
where Clauses 170
Unwrapping Optional Enumerations 171
Embedding Values by Type 172
Option Sets 174
Revisiting NS_OPTIONS 174
Building Enumerations 175
Building Option Sets 176
Viewing Options 176
Classes 177
Optimization 178
Initializers 178
Initialization Steps 179
Designated and Convenience Initializers 179
Initialization Rules 179
Building Convenience Initializers 181
Failable and Throwing Initializers 181
Deinitializers 183
Property Observers 184
Getters/Setters and Access-Level Modifiers 185
Extensions and Overrides 186
Lazy Evaluation 187
Lazy Sequences 187
Lazy Properties 188
Wrap-up 188
Chapter 8: Miscellany 189
Statement Labels 189
Custom Operators 190
Declaring Operators 191
Conforming with Operators 192
Evaluating Operator Trade-offs 192
Array Indexing 193
Multi-indexed Array Access 194
Wrapped Indices 195
Array Slices 195
General Subscripting 196
Parameter-less Subscripting 197
String Utilities 198
Repeat Initializers 198
Strings and Radix 198
String Ranges 199
String Splitting 201
String Subscripts 201
Foundation Interoperability 203
Joining and Extending 203
Permutation Generator 203
Wrap-up 205
Index 207


Best Seller

| | See All

Product Details
  • ISBN-13: 9780134395265
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Depth: 13
  • Language: English
  • Returnable: N
  • Spine Width: 13 mm
  • Width: 179 mm
  • ISBN-10: 0134395263
  • Publisher Date: 24 Dec 2015
  • Binding: Paperback
  • Height: 228 mm
  • No of Pages: 240
  • Series Title: Developer's Library
  • Weight: 388 gr


Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Be The First to Review
The Swift Developer's Cookbook (includes Content Update Program): (Developer's Library)
Pearson Education (US) -
The Swift Developer's Cookbook (includes Content Update Program): (Developer's Library)
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

The Swift Developer's Cookbook (includes Content Update Program): (Developer's Library)

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    | | See All


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!
    ASK VIDYA