LEADER 00000nam a22004573i 4500 
001    EBC4043081 
003    MiAaPQ 
005    20200713055426.0 
006    m     o  d |       
007    cr cnu|||||||| 
008    200713s2015    xx      o     ||||0 eng d 
020    9781119148715|q(electronic bk.) 
020    |z9781119016779 
035    (MiAaPQ)EBC4043081 
035    (Au-PeEL)EBL4043081 
035    (CaPaEBR)ebr11115236 
035    (CaONFJC)MIL785583 
035    (OCoLC)910880881 
040    MiAaPQ|beng|erda|epn|cMiAaPQ|dMiAaPQ 
050  4 QA76.7 -- .D577 2015eb 
082 0  005.1/17 
100 1  Dippery, Michael 
245 10 Professional Swift 
250    1st ed 
264  1 New York :|bJohn Wiley & Sons, Incorporated,|c2015 
264  4 |c©2015 
300    1 online resource (310 pages) 
336    text|btxt|2rdacontent 
337    computer|bc|2rdamedia 
338    online resource|bcr|2rdacarrier 
505 0  Intro -- Professional Swift™ -- Contents -- Introduction -
       - Part I: Building Applications with Swift -- Chapter 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 -- Chapter 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 
505 8  Chapter 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 -- Chapter 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 -- Chapter 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 -- Chapter 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 
505 8  Implementing the Table View's Behavior -- The Completed 
       Application Delegate -- Summary -- Part II: Advanced Swift
       Concepts -- Chapter 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 -- Chapter 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 -- Chapter 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 
505 8  Working with Global Constants and Defines and Swift -- 
       Calling C Code from Swift -- Using C++ Code in Swift -- 
       Summary -- Chapter 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 LLDB, the LLVM Debugger -- Basic Breakpoints -
       - Using lldb to Inspect Programs -- Using the Variable 
       Pane -- Entering Commands in the lldb Command Prompt Pane 
       -- Displaying Code Hierarchy with the lldb Ribbon -- 
       Walking through a Program with the lldb Ribbon -- Removing
       or Disabling Breakpoints -- Setting Conditional 
       Breakpoints -- Setting Symbolic Breakpoints -- Exploring 
       the Debugger -- Summary -- Chapter 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
       -- Appendix: An Overview of c -- 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 -- Index -- Advert -- EULA 
588    Description based on publisher supplied metadata and other
       sources 
590    Electronic reproduction. Ann Arbor, Michigan : ProQuest 
       Ebook Central, 2020. Available via World Wide Web. Access 
       may be limited to ProQuest Ebook Central affiliated 
       libraries 
650  0 Swift (Computer program language);Programming languages 
       (Electronic computers) 
655  4 Electronic books 
776 08 |iPrint version:|aDippery, Michael|tProfessional Swift
       |dNew York : John Wiley & Sons, Incorporated,c2015
       |z9781119016779 
856 40 |uhttps://ebookcentral.proquest.com/lib/sinciatw/
       detail.action?docID=4043081|zClick to View