Library Hours
Monday to Friday: 9 a.m. to 9 p.m.
Saturday: 9 a.m. to 5 p.m.
Sunday: 1 p.m. to 9 p.m.
Naper Blvd. 1 p.m. to 5 p.m.
     
Limit search to available items
Results Page:  Previous Next
Author Dippery, Michael, author.

Title Professional Swift / Michael Dippery. [O'Reilly electronic resource]

Publication Info. Indianapolis, IN : Wrox, a Wiley brand, [2015]
©2015
QR Code
Description 1 online resource
Series Wrox programmer to programmer
Programmer to programmer.
Note Includes index.
Summary Annotation Transition from Objective-C to the cleaner, more functional Swift quickly and easily. Professional Swift shows you how to create Mac and iPhone applications using Apple's new programming language. This code-intensive, practical guide walks you through Swift best practices as you learn the language, build an application, and refine it using advanced concepts and techniques. Organized fo reasy navigation, this book can be read end-to-end for a self-paced tutorial, or used as an on-demand desk reference as unfamiliar situations arise. The first section of the book guides you through the basics of Swift programming, with clear instruction on everything from writing code to storing data, and Section II adds advanced data types, advanced debugging, extending classes, and more. You'll learn everything you need to know to make the transition from Objective-C to Swift smooth and painless, so you can begin building faster, more secure apps than ever before. Get acquainted with the Swift language and syntax. Write, deploy, and debug Swift programs. Store data and interface with web services. Master advanced usage, and bridge Swift and Objective-C. Professional Swift is your guide to the future of OS X and iOS development.
Contents Ch. 1 A Swift Primer -- What Is Swift? -- Why Learn Swift? -- Working with Constants and Variables -- Understanding Swift Data Types -- Using Numerical Types -- Boolean Types -- Using Character Types -- Using Arrays -- Using Dictionaries -- Using Tuples -- Working with Type Annotations -- Minimizing Annotation with Type Inference -- Clarifying Code with Type Aliasing -- Working with Operators -- Using Basic Operators -- Using Compound Assignment Operators -- Using Overflow Operators -- Using Range Operators -- Using Logical Operators -- Using Comparison Operators -- Using Custom Operators -- Making Decisions with Control Flow -- Using Conditional Statements -- Using Loops -- Control Transfer Statements -- Grouping Types with Enumerations -- Working with Functions -- Declaring Functions -- Specifying Parameter Names -- Defining Default Parameters -- Specifying Variadic Parameters -- Specifying Constant, Variable, and In-Out Parameters -- Function Types -- Using Closures -- Summary -- ch. 2 Writing A Swift Program -- Setting Up Xcode -- Downloading from Apple's Developer Portal -- Downloading Xcode -- Experimenting with Playgrounds -- Using Playgrounds in Xcode -- A Simple Example in Playground -- A More Exciting Playground Example -- Writing Swift in Xcode -- Creating a New Swift Project -- Creating the Swiftisms App -- Creating the Interface -- Creating Connections between the View Controller and the Object -- Connecting the Buttons and the Action -- Displaying Random Strings -- What Next? -- Debugging Swift Applications -- Understanding Breakpoint Types -- Setting Breakpoints -- Using the Debugger -- Using the Hierarchical View -- Using the Debugger View and the po Command -- Executing the Program -- Summary -- ch. 3 Classes, Structs, And Enums -- Working with Classes and Structs -- Defining Classes and Structs -- Initializing Classes and Structs -- Creating an Initial Value -- Defining Your Own Initializer -- Writing an Initializer -- Working with Multiple Initializers -- Deinitializing Classes -- Working with Properties -- Using Simple Properties -- Using Lazy Properties -- Using Computed Properties -- Observing Property Changes -- Understanding Methods -- Understanding the Difference between Classes and Structs -- Working with Enumerations -- Summary -- ch. 4 Concurrency In Swift -- What Is Concurrency? -- Understanding Processes -- Understanding Threads -- Why Concurrency? -- Designing Concurrent Programs -- Concurrency in iOS and OS X -- Understanding Event Loops -- Understanding Run Loops -- Understanding Asynchronous Methods -- Understanding NSTimer -- Understanding NSThread -- Understanding Grand Central Dispatch -- Summary -- ch. 5 Interfacing With Web Services -- Understanding Web Services -- Implementing a Web Services Client -- Signing Up for a Firebase Account -- Laying Out the User Interface -- Hooking Up the Add Album View Controller -- Adding the Album Creation View Controller -- Hooking Up the Segue -- Creating the Album Model -- Communicating with Firebase -- Creating the Firebase Connector -- Making Asynchronous Web Requests -- Processing JSON Data -- Creating New Albums -- Deleting Albums -- Wiring Up the View and Data Models -- Wiring Up the Segue -- Run the Application -- Summary -- ch. 6 Storing Data With Core Data -- What Is Core Data? -- The Core Data Stack -- Using Core Data with Swift -- Setting Up the Birthdays Application -- Getting User Input -- Examining Xcode Files -- Adding Methods to the AppDelegate Class -- Handling the Dialog Sheet -- Hooking Up the Dialog Sheet -- Displaying Data -- Implementing the Table View's Behavior -- The Completed Application Delegate -- Summary -- ch. 7 Extending Classes -- Working with Class Extensions -- Adding Methods to Classes -- Adding Properties to Classes -- Mutating Classes in Extensions -- Specifying Behavior with Protocols -- Adopting Protocols -- Declaring Properties and Methods -- Working with Optional Methods and Properties -- Protocols Are Types -- Checking for Protocol Conformance -- Using Protocol Types in Collections -- Composing Protocols -- Inheriting from Other Protocols -- Adopting Protocols in Class Extensions -- Working with Generics -- Generic Classes -- Working with Type Constraints -- Summary -- ch. 8 Advanced Data Types -- Working with Enums and Algebraic Data Types -- Matching Patterns -- Putting It All Together with JSON -- Working with Optional Types -- Working with Null Values -- Excluding Null Values -- Understanding Swift's Version of Null -- Chaining Optional Values -- Understanding Type Casting -- Grouping Values with Tuples -- Custom Operators -- Defining Custom Operators -- Defining Precedence and Associativity -- A Final Word about Operators -- Using Functions and Closures -- Summary -- ch. 9 Bridging Swift And Objective-C -- The Successor to Objective-C -- Introducing Namespaces and Modules -- Organizing Code with Namespaces -- Distributing Code with Modules -- Using Access Modifiers -- Specifying an Access Level -- How Swift and Objective-C Interact -- Using Swift Classes in Objective-C -- Generating an Objective-C Header -- Objective-C and Swift-Only Features -- Using Swift Code in an Objective-C Application -- Using Objective-C in Swift -- Generating a Bridging Header -- Calling Objective-C Code from Swift -- Using C and C++ Code with Swift -- Working with C Scalar Types -- Accessing Memory with C Pointers -- Working with Global Constants and Defines and Swift -- Calling C Code from Swift -- Using C++ Code in Swift -- Summary -- ch. 10 Debugging Swift Applications -- The Art of Debugging -- Creating CircleView -- Drawing the Circle -- Adding Sliders -- Completing the Project -- Printing Values -- Working with Debuggers -- Examining Errors with Ildb, the LLVM Debugger -- Basic Breakpoints -- Using Ildb to Inspect Programs -- Using the Variable Pane -- Entering Commands in the Ildb Command Prompt Pane -- Displaying Code Hierarchy with the Ildb Ribbon -- Walking through a Program with the Ildb Ribbon -- Removing or Disabling Breakpoints -- Setting Conditional Breakpoints -- Setting Symbolic Breakpoints -- Exploring the Debugger -- Summary -- ch. 11 The Swift Runtime -- What Is a Runtime? -- Understanding the Objective-C Runtime -- Dispatching Methods Dynamically in Objective-C -- Message Passing -- Resolving Methods -- Messages and Methods -- Exploring the Swift Runtime -- Understanding Virtual Method Tables -- Loading Swift Programs -- Summary -- Comparing Procedural and Object-Oriented Programming Styles -- Understanding the Importance of C Language Syntax -- Defining Data with Variables and Arrays -- Integral Data Types -- Floating-Point Data Types -- Arrays -- Typedefs -- Enums -- Performing Calculations with Operators -- Arithmetic Operators -- Logical Operators -- Relational Operators -- Bitwise Operators -- Bitshift Operators -- Referencing Data with Pointers -- Organizing Data with Structs -- Generalizing Data with Unions -- Referencing Functions with Function Pointers.
Subject Swift (Computer program language)
Programming languages (Electronic computers)
Swift (Langage de programmation)
Programming languages (Electronic computers)
Swift (Computer program language)
Other Form: Erscheint auch als: Druck-Ausgabe
ISBN 9781119148722 (electronic bk.)
1119148723 (electronic bk.)
1119016770
9781119016779
Patron reviews: add a review
Click for more information
EBOOK
No one has rated this material

You can...
Also...
- Find similar reads
- Add a review
- Sign-up for Newsletter
- Suggest a purchase
- Can't find what you want?
More Information