معرفی کتاب «Swift : developing iOS applications : unleash the power of Swift and discover the skills required to build incredible robust iOS applications : a course in three modules» نوشتهٔ Hoffman, Jon;Scalzo, Giordano;Wagner, Andrew Joseph، منتشرشده توسط نشر Packt Publishing Limited در سال 2016. این کتاب در 5 صفحه، فرمت pdf، زبان انگلیسی ارائه شده است.
Unleash the power of Swift and discover the skills required to build incredible robust iOS applications About This Book • Write expressive, understandable, and maintainable Swift 2 code with this hands-on course • Unveil the complex underpinnings of Swift to turn your app ideas into reality • Specialize in developing real iOS apps, and 2D and 3D video games using Swift and Cocoapods • Dive deep into protocol extensions, learn new error handling model and use featured Swift design patterns to write more efficient code Who This Book Is For This course would be for app developers who are new to developing for iOS or OSX and are trying to get grips with Swift for the first time. What You Will Learn • From 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 • Create a server in Swift to deliver JSON data to an iOS app • Take advantage of Cocoapods to use third-party libraries • Build games with SpriteKit and SceneKit • Develop an app running on the cloud to act as an API server for your client's apps • Dive into the core components of Swift 2 including operators, collections, control flow, and functions • Create and use classes, structures, and enums including object-oriented topics such as inheritance, protocols, and extensions • Develop a practical understanding of subscripts, optionals, and closures • Master Objective-C interoperability with mix and match • Access network resources using Swift • Implement various standard design patterns in the Swift language In Detail The Swift––Developing iOS Applications course will take you on a journey to become an efficient iOS and OS X developer, with the latest trending topic in town. Right from the basics to the advanced level topics, this course would cover everything in detail. We'll embark our journey by dividing the learning path into four modules. Each of these modules are a mini course in their own right; and as you complete each one, you'll gain key skills and be ready for the material in the next module. The first module is like a 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. By the end of this module, you'll have a basic understanding of Swift 2 and its functionalities. The second module will be the an easy-to-follow guide filled with tutorials to show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server e-commerce app right from scratch. You'll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps. The third and the last module of our course will take an example-based approach where each concept covered is supported by example code to not only give you a good understanding of the concept, but also to demonstrate how to properly implement it. Style and approach This course includes all the resources that will help you jump into the app development .This course covers all the important aspects Swift application development and is divided into individual modules so that you develop your skill after the completion of a module and get ready for the next. Through this comprehensive course, you'll learn how to use Swift programming with hands-on examples from scratch to finish! Cover 1 Copyright 3 Credits 4 Preface 6 Table of Contents 10 Module 1: Learning Swift - Second Edition 20 Chapter 1: Introducing Swift 22 Defining our goals for this book 22 Setting up the development environment 24 Running our first swift code 24 Understanding playgrounds 28 Learning with this book 29 Summary 30 Chapter 2: Building Blocks – Variables, Collections, and Flow Control 32 Core Swift types 33 Swift's type system 36 Printing to the console 38 Control flow 39 Functions 46 Bringing it all together 52 Summary 58 Chapter 3: One Piece at a Time – Types, Scopes, and Projects 60 Structs 61 Classes 72 Enumerations 82 Projects 88 Extensions 96 Scope 97 Access control 98 Summary 99 Chapter 4: To Be or Not To Be – Optionals 102 Defining an optional 103 Unwrapping an optional 104 Optional chaining 108 Implicitly unwrapped optionals 110 Debugging optionals 112 The underlying implementation 115 Summary 116 Chapter 5: A Modern Paradigm – Closures and Functional Programming 118 Functional programming philosophy 119 Closures 122 Building blocks of functional programming in Swift 125 Lazy evaluation 129 Example 130 Summary 133 Chapter 6: Make Swift Work For You – Protocols and Generics 134 Protocols 134 Generics 140 Extending generics 146 Putting protocols and generics to use 152 Summary 157 Chapter 7: Everything Is Connected – Memory Management 158 Computer data storage 159 Value types versus reference types 160 Automatic reference counting 167 Strong reference cycles 171 Lost objects 179 Structures versus classes 180 Summary 181 Chapter 8: Paths Less Traveled – Error Handling 182 Throwing errors 182 Handling errors 184 Cleaning up in error situations 194 Summary 197 Chapter 9: Writing Code the Swift Way – Design Patterns and Techniques 198 What is a design pattern? 199 Behavioral patterns 200 Structural patterns 204 Creational patterns 211 Using associated values effectively 215 Extending system types to reduce code 217 Lazy properties 219 Summary 221 Chapter 10: Harnessing the Past – Understanding and Translating Objective-C 222 Swift's relationship to Objective-C 223 Background of Objective-C 223 Constants and variables 224 Containers 226 Control flow 229 Functions 233 Types 234 Projects 246 Calling Objective-C code from Swift 248 Using functions 249 Summary 252 Chapter 11: A Whole New World – Developing an App 254 Conceptualizing the app 255 Setting up the app project 257 Configuring the user interface 259 Running the app 267 Allowing picture taking 268 Temporarily saving a photo 271 Populating our photo grid 275 Refactoring to respect model-view-controller 281 Permanently saving a photo 284 Summary 293 Chapter 12: What's Next? – Resources, Advice, and the Next Steps 294 Apple's documentation 294 Forums and blogs 297 Prominent figures 298 Podcasts 299 Summary 300 Module 2: Swift 2 by Example 302 Chapter 1: Welcome to the World of Swift 304 The first look at Swift 305 Summary 340 Chapter 2: Building a Guess the Number App 342 The app is... 342 Summary 359 Chapter 3: A Memory Game in Swift 362 The app is... 362 Building the skeleton of the app 363 The menu screen 364 The game screen 369 Connecting the dataSource and the delegate 374 Implementing a deck of cards 376 Finishing the game 385 Summary 389 Chapter 4: A TodoList App in Swift 390 The app is... 390 Building a skeleton app 393 Building the Todos screen 406 Adding a Todo task 415 Summary 435 Chapter 5: A Pretty Weather App 436 The app is... 436 Building the skeleton 438 Implementing the UI 443 Completing the UI 448 Blurring the background 459 Downloading the background image 462 Geolocalising the app 465 Retrieving the actual forecast 468 Connecting to the server 476 Where do we go from here? 481 Summary 482 Chapter 6: Flappy Swift 484 The app is... 484 Building the skeleton of the app 485 A stage for a bird 492 A flying bird 499 Pipes! 504 Making the components interact 509 Completing the game 515 Summary 519 Chapter 7: Polishing Flappy Swift 520 Adding juiciness 520 Integrating with Game Center 526 Summary 539 Chapter 8: Cube Runner 540 The app is... 540 Introduction to SceneKit 541 Implementing Cube Runner 546 Flying in a 3D world 552 Adding a few touches 567 Summary 571 Chapter 9: Completing Cube Runner 572 Creating a real game 572 Summary 585 Chapter 10: ASAP – an E-commerce App in Swift 586 The app is... 586 The skeleton app and register screen 589 The ASAP e-commerce store 601 The ASAP cart 614 Summary 628 Chapter 11: ASAPServer, a Server in Swift 630 The interface of the ASAP Server 630 One skeleton server for two OSes 631 The ASAPServer 638 Connecting the ASAP app 641 Summary 647 Module 3: Mastering Swift 2 648 Chapter 1: Taking the First Steps with Swift 650 What is Swift? 650 Playgrounds 654 Hello World 673 Summary 675 Chapter 2: Learning about Variables, Constants, Strings, and Operators 676 Constants and variables 677 Operators 699 Summary 703 Chapter 3: Using Collections and Cocoa Data Types 704 Swift collection types 705 Mutability 705 Arrays 705 Dictionaries 717 Set 721 Tuples 724 Using Cocoa data types 725 Foundation data types 729 Summary 730 Chapter 4: Control Flow and Functions 732 What we have learned so far 732 Control flow 734 Functions 753 Putting it all together 763 Summary 765 Chapter 5: Classes and Structures 766 What are classes and structures? 767 Creating a class or structure 769 Custom initializers 778 Inheritance 783 Overriding methods and properties 786 Protocols 790 Protocol syntax 790 Extensions 794 Memory management 795 Summary 804 Chapter 6: Using Protocols and Protocol Extensions 806 Protocols as types 807 Polymorphism with protocols 809 Type casting with protocols 810 Protocol extensions 812 Summary 821 Chapter 7: Writing Safer Code with Availability and Error Handling 822 Error handling prior to Swift 2.0 823 Error handling in Swift 2 824 The availability attribute 832 Summary 834 Chapter 8: Working with XML and JSON Data 836 XML and JSON 837 Common files 837 XML and the NSXMLParser class 840 Using the NSXMLParserDelegate protocol 841 Parsing XML documents 842 XML and manually building XML documents 848 JSON and NSJSONSerialization 849 Summary 854 Chapter 9: Custom Subscripting 856 Introducing subscripts 856 Subscripts with Swift arrays 857 Read and write custom subscripts 858 Read-only custom subscripts 859 Calculated subscripts 859 Subscript values 860 Subscripts with ranges 860 External names for subscripts 861 Multidimensional subscripts 862 When not to use a custom subscript 864 Summary 866 Chapter 10: Using Optional Types 868 Introducing optionals 868 The need for optional types in Swift 870 Optional chaining 876 Summary 879 Chapter 11: Working with Generics 880 An introduction to generics 880 Generic functions 881 Generic types 885 Associated types 889 Summary 893 Chapter 12: Working with Closures 894 An introduction to closures 894 Simple closures 895 Shorthand syntax for closures 898 Using closures with Swift's array algorithms 901 Standalone closures and good style guidelines 905 Changing functionality 908 Selecting a closure based on results 910 Creating strong reference cycles with closures 912 Summary 916 Chapter 13: Using Mix and Match 918 What is mix and match 918 Using Swift and Objective-C together in the same project 920 Summary 933 Chapter 14: Concurrency and Parallelism in Swift 934 Concurrency and parallelism 935 Summary 954 Chapter 15: Swift Formatting and Style Guide 956 What is a programming style guide? 956 Your style guide 957 Summary 968 Chapter 16: Network Development with Swift 970 What is network development? 971 An overview of the URL session classes 972 REST web services 974 Making an HTTP GET request 975 Making an HTTP POST request 978 Checking network connection 982 RSNetworking2 for Swift 2 984 Summary 992 Chapter 17: Adopting Design Patterns in Swift 994 Value versus reference types 995 What are design patterns 997 Creational patterns 998 Structural design patterns 1007 Behavioral design patterns 1016 Summary 1022 Biblography 1024
Unleash the power of Swift and discover the skills required to build incredible robust iOS applications
About This Book
- Write expressive, understandable, and maintainable Swift 2 code with this hands-on course
- Unveil the complex underpinnings of Swift to turn your app ideas into reality
- Specialize in developing real iOS apps, and 2D and 3D video games using Swift and Cocoapods
- Dive deep into protocol extensions, learn new error handling model and use featured Swift design patterns to write more efficient code
Who This Book Is For
This course would be for app developers who are new to developing for iOS or OSX and are trying to get grips with Swift for the first time.
What You Will Learn
- From 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
- Create a server in Swift to deliver JSON data to an iOS app
- Take advantage of Cocoapods to use third-party libraries
- Build games with SpriteKit and SceneKit
- Develop an app running on the cloud to act as an API server for your client's apps
- Dive into the core components of Swift 2 including operators, collections, control flow, and functions
- Create and use classes, structures, and enums including object-oriented topics such as inheritance, protocols, and extensions
- Develop a practical understanding of subscripts, optionals, and closures
- Master Objective-C interoperability with mix and match
- Access network resources using Swift
- Implement various standard design patterns in the Swift language
In Detail
The Swift––Developing iOS Applications course will take you on a journey to become an efficient iOS and OS X developer, with the latest trending topic in town. Right from the basics to the advanced level topics, this course would cover everything in detail. We'll embark our journey by dividing the learning path into four modules. Each of these modules are a mini course in their own right; and as you complete each one, you'll gain key skills and be ready for the material in the next module.
The first module is like a 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. By the end of this module, you'll have a basic understanding of Swift 2 and its functionalities.
The second module will be the an easy-to-follow guide filled with tutorials to show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server e-commerce app right from scratch. You'll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps.
The third and the last module of our course will take an example-based approach where each concept covered is supported by example code to not only give you a good understanding of the concept, but also to demonstrate how to properly implement it.
Style and approach
This course includes all the resources that will help you jump into the app development.This course covers all the important aspects Swift application development and is divided into individual modules so that you develop your skill after the completion of a module and get ready for the next. Through this comprehensive course, you'll learn how to use Swift programming with hands-on examples from scratch to finish!