
Install the stable Xcode from the app store or developer site, then create and run a hello world Swift playground and view output in the console.
Explore the inspector panel, covering file inspector tabs: file template, code snippet, object, and media libraries, plus help. Learn identity, attributes, size, and connections inspectors for storyboards.
Tackle the Xcode editor suite, from the source code editor and interface builder to storyboard and nib editors, with context sensitive editing, versioning, and dual editor views.
Learn to create a button action and hook it up to a storyboard button via the target-action pattern, using touch up inside, then verify hello world output.
Bind a storyboard label to a view controller with an outlet, then update its text to 'Hello X code' in the button action, showcasing outlet wiring and UI updates.
Define variables and constants in Swift, using var for mutable values and let for immutable ones. Observe a Swift playground showing live results and how assignments affect values.
Master swift optionals, which can hold a value or nil, using ? or !. Learn to unwrap with if let and implicit unwrapping using price, tax, and total as examples.
Explore strings and characters in Swift, including string literals, concatenation, and mutable vs immutable strings, plus Unicode and grapheme clusters, and safe string indexing with start and end indices.
Explore Swift tuples to group name, price, and quantity for an inventory item; access elements by index or named labels, use wildcards, and return tuples from functions.
Tackle unresponsive Swift playgrounds by shifting from get started to creating a new playground via the file menu, and explore Swift's arrays, sets, and dictionaries as core collection types.
Align the command line tools with the Xcode version to fix playground errors. In Xcode, preferences → locations, set Command Line Tools to the exact version shown in About Xcode.
Explore Swift arrays as index-based, typed collections and master zero-based indexing, array literals, and the initializer; mutate arrays with append, insert, remove, and slices, and loop with for-in and ranges.
Explore sets in Swift, an unindexed collection with unique elements and no implied order. Learn creation, membership checks, and set operations such as intersection, union, exclusive or, and subtract.
Explore dictionaries in Swift: a key-value collection with hashable string keys and int values, supporting updates, optional handling, and removal, while illustrating ordering and retrieval.
Explore Swift loops, including for, for-in, while, and repeat, with counted and uncounted variants, array indexing, and a practical table of squares and square roots using break and continue.
The lecture covers decision constructs in Swift, including if with else, guard for false conditions, and switch with expressions, cases, default, and tuple switching with where.
Master basic function syntax in Swift, define functions with parameters, return values, and understand external versus internal parameter names, including how to call and silence parameters.
Learn how to define functions with default parameters and variadic parameters, including external names, when defaults apply, and how to implement one variadic parameter per function.
Learn how Swift enumerations define a type with fixed cases like red, amber, and green, breaking the link to a specific numeric value and enabling associated types.
Assign raw values to a Swift enumeration, mapping red to 1, amber to 2, green to 3, and instantiate a stoplight from a raw value; illustrate enums with hex values.
Explore how enumerations can define default and raw value initializers, assign self in init, and demonstrate days of week defaults and raw value initialization across enums, structs, and classes.
Explore mutating functions in enums by reassigning self to change the case, using associated types like string, int, and dictionary, with a day-of-week example.
Learn how to use property observers in Swift with willSet and didSet on stored properties, illustrated through a circle's radius and a stack's push and pop operations using optional values.
Discover how type properties and type methods belong to the type itself, accessed by the type name, with static properties and factory methods for creating instances and tracking counts.
Explore Swift inheritance by building a simple item and sellable item hierarchy, illustrating root classes, super, overrides, and initializers, with price, discount, and total price calculations.
Create a new Xcode project for a single-view iOS app in Swift, configure project settings and bundle identifier, and start building a model class to represent the user data.
Instantiate a separate model class in the view controller to encapsulate large app data, using a constant let that references the model’s default initializer, and wire it via the storyboard.
create the view in iOS using storyboard and bind the view to a view controller, ensuring the custom class matches, then add a label and text field with constraints.
Learn to wire a text field and label in a view controller using Interface Builder, implement the done return key, and update a greeting label based on user input.
Demonstrates model–view–controller in iOS by separating data from presentation and showing how the controller mediates between the model and the view using IBOutlet and IBAction, with target-action across events.
Learn how to connect view controllers with a storyboard segue, using show segues, identifiers, and back navigation to present and dismiss a new view.
Learn delegation with a navigation controller to return a user entered name from the name view controller to the route view controller via a protocol and delegate.
Create a two-tab iOS tab bar app by wiring a new person view controller to a phonebook model via delegation, load tab bar icons from assets, and show the count.
Explore how a table view controller uses UITableViewDataSource and UITableViewDelegate, implementing number of rows in section, number of sections, and header titles.
Learn to index and navigate table views with section headers, footers, and an index, and present row details in a new controller.
Choose a collection that interests you, model it in your app, and display it in a table view controller with optional sections and a detail view segue.
learn to display notes in a table view by loading notes from the model, sorting by date, showing subject and date, and add notes via a delegate-driven flow.
Discover how to dismiss keyboards for text views and text fields by using a button with an empty title and resigning first responder, including did end on exit event.
Tap a table cell to present a detail view with the note subject and text in a multi-line, non-editable text view, showing the timestamp.
Alert users when a plist is missing by using a model delegate and a table view controller to present a friendly alert.
In this iOS Bootcamp you will learn fundamentals of developing iOS applications using Swift programming language both the versions.
This course contains 255 lectures spread over 30 hours of video.
You will have access to actively ask Rick any questions you like related to the content.
At the end of the course, you’ll be able to write iOS applications that use tables, hierarchical and tabbed navigation, and understand the principles behind developing any iOS application.
The course will be complimented with shorter sessions on the various
extension frameworks at a later date, including SpriteKit, SceneKit,
HealthKit, WatchKit, etc
We will also cover everything you need to develop compelling apps for Apple Watch using the WatchKit framework and the Swift programming language.
We'll cover the techniques of app development, starting with some simple apps and working our way up to more complex techniques..
We'll build several apps together, including a simple note taker, a few different kinds of calculator, a few of games, a simple memo systems with voice recording and playback, etc.
All topics are easy to learn and presented in digestible short 5 to 15 minute videos with real world examples and demos. The course contains discussions and demos to test your skill. All demos come with full source codes that you can download which is complimentary and use for your projects.
Topics include:
I hope you join me as we explore this course together!