8+ Hours of Video Instruction
The Swift programming language is an ever-changing work in progress, and the best way to understand how you can use it to build iOS apps and roll with future changes to the language is to learn the fundamentals now. iOS Swift Development by Example LiveLessons provides developers with a solid understanding of Swift coding basics into intermediate-level and some advanced practices, so that they can become even more adept at working with the language as it continues to evolve.
This video training offers developers a practical introduction to programming with Swift, Apple's proprietary programming language. The video starts with a comprehensive survey of Swift fundamentals, including how to work with playgrounds, Apple's interactive coding environment. It uses playgrounds to examine Swift's fundamental structure and language basics, such as loops and conditionals, data types, and much more. Next, the training teaches viewers how to work with functions and closures, define data structures, perform actions using methods, write Swift code that interacts with Objective-C, work with UIKit, and design interfaces using storyboards. The video further covers more advanced Swift topics such as using functional programming paradigms, closures, generic programming, and adding behavior to existing data types with extensions. After watching this video, developers who perhaps have never worked with a functional programming language will understand the differences between Swift and Objective-C, current iOS developers will gain a better understanding of how to incorporate Swift into their application programming practices, and new iOS developers will learn how Swift simplifies the process of building their first (or second) iOS application.
About the Instructor
BJ Miller is an iOS developer for DXY Solutions, a development and design consultancy in the Cleveland, Ohio, area. BJ earned his B.S. in Computer Science from Baldwin-Wallace College (now called Baldwin-Wallace University) in Berea, Ohio, the town where he grew up. His latest career path encompasses large-scale enterprise network administration, SQL database administration, and Microsoft SharePoint Server and Microsoft Project Server administration and integration as a contractor for the United States Department of Defense, with all the Microsoft certifications that come along with that. Before that, he spent several years in LAN engineering, designing, and implementing network infrastructure, as a Cisco Certified Network Associate.
BJ is also the author of Teach Yourself Swift in 24 Hours, a hands-on practical approach to learning the Swift language by example. BJ also helps lead the Cleveland CocoaHeads chapter, presents Swift- and iOS-related topics there, and speaks at various other developer conferences such as CodeMash and CocoaConf.
What You Will Learn
How to navigate Xcode and the Swift playground
How to use both object-oriented and functional programming paradigms in Swift
How to build a functional iOS application entirely using Swift
How to code an app using Swift alongside Objective-C
How to persist model data using Apple's Core Data framework
How to add concurrency and networking functionality to your iOS app
Who Should Take This Course
Longtime Objective-C developers looking for an introduction to the Swift language
iOS developers interested in building their first all-Swift iOS application or integrating Swift into an existing application
Developers of other languages who are new to the iOS platform and want to expand their knowledge
Basic knowledge of object-oriented programming and data structures
Basic knowledge of Objective-C programming with CocoaTouch
A Mac with Xcode 6.3 or greater
Lesson 1: Covering Swift Basics
"Covering Swift Basics" familiarizes you with the foundational syntax and gets you started writing Swift statements in Xcode and working with the new read-eval-print-loop (REPL). You learn about features common to most languages, including arithmetic expressions, conditional logic, and iteration, and you learn how to use types to store different kinds of data.
Lesson 2: Introducing Functions and Closures
"Introducing Functions and Closures" covers functions, closures, and how to use functions as first-class objects in Swift. You learn about the structure of functions and closures and how to use them to perform actions and calculations. You also learn how to pass functions and closures to other functions to be executed elsewhere.
Lesson 3: Defining Data Structures
"Defining Data Structures" takes a look at classes, structs, and enums. You learn about the differences between how Swift and Objective-C handle these types. You learn how to create classes, structs, and enums; how to add stored and computed properties to these structures; how to use raw values with enums; how to add initializers; and how to use optional values. You also learn about the initialization phases for initializing instances and about the memory management involved with reference types such as classes and functions.
Lesson 4: Learning Advanced Swift
"Learning Advanced Swift" explores more complex Swift topics. You learn about optional chaining and how to use optionals to your advantage. You then learn how to use extensions in Swift to extend a type's capabilities without modifying it. You also learn about generics and other introductory aspects of functional programming.
Lesson 5: Using Swift with Objective-C
"Using Swift with Objective-C" explains how to integrate the two programming languages within the same project, regardless of whether the project started in Objective-C or Swift. You learn how to bridge data types and recognize the differences in syntax.
Lesson 6: Understanding Cocoa Concepts
"Understanding Cocoa Concepts" covers the Model-View-Controller (MVC) paradigm with respect to iOS development. You learn how to design efficient and well-structured object-oriented code. You learn how to use the MVC paradigm to separate code into manageable and sensible chunks. You learn about the Cocoa Touch view lifecycle and about using delegates and data sources to provide custom actions and data to a requesting object. Finally, you learn how to work with, retrieve, and persist model objects to disk using Apple's Core Data framework.
Lesson 7: Defining Interfaces with Storyboards
"Defining Interfaces with Storyboards" teaches you how to use Xcode's Interface Builder to create the visual layout for your application. You learn how to use Xcode's Interface Builder component to build storyboards and how to connect its many different UI elements to code. You also learn how to visually lay out an interface using Auto Layout that accommodates devices of various sizes. Finally, you learn how to customize app flow by using segues to handle navigation.
Lesson 8: Creating Apps Integrating Concurrency and Fetching Network Data
"Creating Apps Integrating Concurrency and Fetching Network Data" covers the different methods of fetching data from the network. You learn about the differences between synchronous and asynchronous operations, and you learn how to use Apple's built-in frameworks to assist in creating efficient software. You also learn how to parse JSON. Finally, you learn how to create an entire app using your cumulative knowledge of Swift and Cocoa Touch.
About LiveLessons Video Training
The LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at http://www.informit.com/livelessons.