
Learn how to download and install Xcode from the Mac App Store, choose the official Apple Xcode, and begin the free, large download.
Meet Nick Walter, learn how the course starts with Swift fundamentals, then builds apps with Xcode, and discover tips to stay motivated and get help when needed.
Install and launch Xcode from the App Store, then open it via command-space or Launchpad. Accept first-time prompts, install documentation, and note Xcode 8.x changes so you’re ready to code.
Walking through why Xcode and Swift are important.
Variables and Constants are the building blocks of Swift!
Testing your knowledge of Variables and Constants.
Strings and Ints in Swift
Learn how to add text to your app with labels
Bring Xcode Storyboards and code together with Outlets
Look out for these errors!
Add some functionality to your app with buttons
Learn how to "print" things so that you can get inside info on your app
Bring life to your app with If Statements
Practice working with If Statements
Bring If Statements into your Xcode project
Let's wrap up our intro to Swift and Xcode
Let's get started with Git
Learn from a pervious student about why Git is so important
Let's save our code to GitHub
Let's do math with Doubles!
Let the user add text to your app!
Let's get fancy with Strings!
Is it true...or false? :)
Let's beef up our app a bit!
Let's wrap up git
Let's talk about the Emoji Dictionary
Learn what arrays are
Some more arrays for ya!
Drawing out the Emoji Dictionary
Finally! Time for TableViews :)
Connecting our TableView DataSource and Delegate
Bring Arrays and TableViews together
On to the next one ;)
Switch from one ViewController to the other
Doing some prep right before the segue happens
Pass the Emoji from one ViewController to the other
Make the definition show up!
Wrapping up the Emoji Dictionary
Explore three ways to make money with iOS apps: working for a company, freelancing, or building your own apps, while previewing Swift fundamentals like functions and classes.
Working for a company provides a stable income and benefits, while offering learning from others; however salary growth is limited and you may be constrained by management.
Explore freelancing, a project-based model where you earn money without being an employee, balancing flexibility and control against unstable income and messy client projects.
Build and monetize your own app to pursue entrepreneurship, owning the process and rewards, while facing high risk, low odds, and potential loneliness.
Submit an app to the App Store to showcase your work and unlock freelance, internship, and full-time iOS opportunities while learning functions and classes.
Master Swift functions and classes in this hands-on playground lesson. Define named code blocks, pass parameters, call functions, and print results, then revisit the emoji dictionary project.
Discover how functions take parameters and return information, specify a return type, and reuse returned values in later code through examples like adding numbers and building a person info string.
Learn how classes act as blueprints to create objects in Swift, with properties and methods for real-world things like a person, then instantiate objects and access their attributes.
Explore how methods work as functions inside a class by creating a Person with name and age, then calling an info method on instances to print details in Swift.
See why classes matter by extending the Moji dictionary app with category and birth year labels, wiring them to the definition view controller, and updating emoji details.
Introduce an emoji class with properties like emoji, definition, category, and birth year, and implement a make emoji function returning an array of emoji objects to display categories.
Replace strings with emoji objects, pass a Moji object between view controllers, and use object oriented programming to manage properties like birth year, origination date, category, and definition.
Explore monetizing apps and freelance opportunities while advancing through Swift topics, view controllers, properties, and methods to build a stronger iOS foundation and start making apps confidently.
Learn to build a simple to-do list app called Do It, add and complete items, and persist data with Core Data while exploring optionals.
Sketch the do it to-do list app, showing how to add items (important flag), view details, and complete tasks, while creating an iOS project with core data and GitHub integration.
Build a table view in a view controller, wire outlet, set data source and delegate, implement number of rows and cell content, and view ten hello cells without core data.
Define a Task class with a name and an important boolean, create tasks with makeTasks, and display them in a table view, highlighting important items with an exclamation point.
Embed the initial view controller in a navigation controller, add a right bar button item for a show segue, and customize the back button for clear navigation.
Create a task screen by adding a name label, a text field, an important switch, and an add button in the storyboard. Wire outlets and an action to CreateTaskViewController.
Create a new task from the text field and important switch, pass it back via prepare for segue, then append it to the tasks array.
Fix the task list update by reloading the table view after adding a new task, then automatically return to the previous screen using navigation controller, and address optionals.
Learn how optionals in Swift represent a value or nil, declare optional types with a question mark, and safely unwrap with if let to avoid crashes from exclamation points.
Master using optionals with classes in Swift, comparing exclamation and question marks while safely handling text fields, navigation controllers, and segues with if let and nil checks.
Implement a select task segue to a complete task view controller, pass the task, delete it from the array, and reload data.
Learn to enable persistence with core data by creating a Task entity with name and important attributes, auto-generating the Task class, and differentiating core data from plain classes.
Learn to access the NSManagedObjectContext via the app delegate's persistent container, save changes, and fetch tasks from core data to replace in-memory storage.
Learn how to pull tasks from Core Data using a context and a fetch request, handle errors with do-try-catch, and load saved tasks when the view appears.
Master deleting tasks with core data by handling the context, saving changes, and refreshing the table view to reflect updates in a to-do list app.
Celebrate completing a fully functional app, revisiting core data, optionals, and a table view, and gain confidence in the app development process as you dive into more integrations.
Learn to take pictures with iOS devices and build a game collection catalog app that saves titles and displays your entire collection, using Core Data and Swift dictionaries.
Sketch your app to map its direction, then build a personalized game collector that adds items with photos and titles, with update and delete options.
Add bar button items in a navigation controller. Use a plus button with a segue to a creation view and build image, text field, and add button user interface.
Import images into a Xcode project, display them in an image view, and use aspect fit or aspect fill. Connect outlets and actions in the storyboard; prepare to learn dictionaries.
Learn how dictionaries in Swift work as key-value stores, where order doesn't matter, access values by keys, and build examples using dog names and ages.
Learn how to update dictionary entries in Swift, add new keys, remove entries, and enforce unique string-to-string mappings.
Configure an image picker controller with a delegate to let users select photos from their library or camera, then present it and handle the chosen image.
Use the image picker delegate to retrieve the original image from the info dictionary, convert it to a UIImage, and display it in an image view after dismissal.
Configure a core data entity named game with title and image attributes. Enable external storage for images, convert UI images to data, and save new games.
Fetch game objects from Core Data, populate a table view with each game's title and image, and refresh the list after adding new items by reloading the table view.
Reuse a single view controller for creating and updating a game, pass data via segues, and dynamically toggle update and delete buttons to reflect state.
Learn to manage add and update flows in a Core Data iOS app by editing existing items or creating new ones, with save and delete actions.
Learn to enable real-device camera access in an iOS app by switching from photo library to the camera using the image picker controller, and add a privacy camera usage description.
Recaps image handling with image views and UI images, importing photos from library or camera, storing images in Core Data, and updating or deleting games via a single view controller.
Build a soundboard app by recording sounds with a microphone, naming them, and tapping to play. Deepen audio handling in Swift and add swipe-to-delete in a table view.
Sketch a soundboard app layout with view controllers and a table view, featuring record, stop, play, name input, and add button, plus swipe left to delete and Core Data setup.
Learn to build an iOS UI flow by adding a plus button, embedding in a navigation controller, and wiring a sound view controller with outlets, actions, and a segue.
learn to set up an AVAudioRecorder, create an AVAudioSession, specify a URL and settings, and handle errors, debunking the myth that programmers memorize everything.
Learn how to handle errors in Swift by marking functions with throws, wrapping calls in a do-catch block, and using catch to inspect and respond to specific errors.
Learn to configure an AVAudioRecorder by creating a documents directory path, building a file URL, and setting format, sample rate, and channels, then prepare to record.
This lecture shows implementing a record button that starts and stops audio recording from the microphone, updates the button title, and saves the file in the app sandbox.
Add an audio player, configure a url, and enable the play button after recording, using a do-catch block to handle optional urls.
Create a sound entity with name and audio data, convert the recorded audio URL to data, and save it to Core Data using the context, with add button logic.
Display sounds saved in Core Data in a table view, fetch them via context, show each name, and play the selected sound with AVAudioPlayer.
Learn to implement swipe left to delete in a table view, handle editing style delete, delete the Core Data object, save the context, and refresh the table data.
Learn to record and play audio, handle air and audio captures, manage chord data in a table view, build a customizable soundboard app, and upload it to the App Store.
Learn how to set up your Apple developer account, obtain a distribution certificate, create your app identifier, and generate a provisioning profile to publish on the App Store.
Learn practical app store submission tips to boost your launch: perfect your app icon, screenshots, and title; craft clear descriptions and keywords; plan ahead and anticipate rejections.
Generate a certificate signing request in keychain access, submit to a certificate authority, and download the distribution certificate for the app.
Create a new app identifier with a reverse domain style prefix, name the app colorific, and register the app ID to enable provisioning profiles for the App Store.
Create and configure a provisioning profile using the distribution certificate and app ID to prepare your iOS app for the App Store, then download and verify before iTunes Connect setup.
Sign in to iTunes Connect to manage your app, upload the app icon and screenshots, set version details, and apply the provisioning profile.
Discover how to prepare an iOS app for submission in iTunes Connect, with video previews and device-specific screenshots. Learn to define metadata like keywords, descriptions, category, and contact details.
Celebrate your graduation and finish this course with a sense of achievement. Share your story in the comments and tell us what you submitted so we can hear from you.
Build a snapchat-clone app using firebase and pods, learning to upload and download data from a phone. By the end, create a social network with a backend.
Sketch a snapchat clone flow with one sign-in/up button, five view controllers, and a camera to take pictures with text; send snaps via email, view them large, and disappear.
Discover how Firebase powers user authentication and image sharing in an iOS app, and learn to integrate it with CocoaPods, including pod install and AppDelegate setup.
Explore firebase auth, database, and storage basics, then design a sign-in screen with email and password fields and a sign-in button, wiring it to a sign-in view controller.
Enable email and password sign-in in firebase, configure cocoapods for firebase components, and implement a sign-in flow that creates a new user if no account exists using a completion block.
Sign in or create a user with email and password using Firebase, handle errors with completion blocks, and navigate via segues and a navigation controller, including a log out.
Design a plus button and a camera-enabled view to capture an image, enter a description, and proceed with a next button, wiring up outlets and actions in storyboard.
Open the image picker on camera tap, assign the delegate, retrieve the selected image, display it in the image view, and handle privacy prompts for photo library usage.
Upload an image to Firebase storage by creating an images folder, building a storage reference, converting the image to data, and completing the upload before the next segue.
Learn to optimize image uploads in a Swift iOS app by converting to jpeg with compression, generating unique file names with NSUUID, and obtaining download URLs from Firebase storage.
Create and populate a firebase database with a users list using each uid and email during sign up, so the app can display user emails in a table view.
Pull and display users from a firebase database by creating a user model with email and id, observing child added events, parsing snapshot data, and updating a table view.
Add snaps to firebase by modeling a snap with image, description, from, and to, then store it under a user's snaps using an auto-ID.
Learn to pass image and description data between view controllers via segues, assemble a complete snap object, and manage snaps in the database with add and delete operations.
pulls the current user's snaps from firebase, defines a snap model with imageURL, description, and from, and displays them in a table view using a data source and delegate.
Navigate from a snaps list to a detail view by building a view controller, connecting outlets, performing segues, and passing the selected snap to display its image and description.
Learn to download and display images in a Snapchat clone using CocoaPods and SDWebImage, installing the pod and setting the image asynchronously with aspect fit.
Delete a firebase snap when the back button is pressed by removing the snap’s key, using view will disappear and removeValue.
Remove a deleted snap from the in-app array by matching its Firebase key with a for loop and deleting the corresponding index, then update the table.
Delete the database record for the snap, then remove the actual image from storage by passing its uid to the snap object and using the storage reference.
Show a no snaps message in the table view and enable next after selecting a photo, switching the image picker to the camera and using the current user email.
Explore Firebase to build and deploy a social app, from Snapchat-like or Twitter-like experiences, to sharing with friends' phones and launching on the app store.
Have you ever wanted to make an iPhone app? Did you get lost in YouTube videos or online blog posts? This is the course for you!
My name is Nick Walter and I am a self taught iPhone programmer. I Know what it feels like to start from the beginning. In my course I will teach you Swift 3 and how to make iOS 10 apps. What will we make?
*Emoji Dictionary - A simple app to help us learn about TableViews
*Do It! - A todo app that teaches us about CoreData
*Game Collector - Learn to work with the camera as we make an app to catalog a collection of something (video games, movies, stamps, etc...)
*Soundboard - Record sounds using the microphone and play them back. This one is fun!
*Snapchat Clone - We'll use Firebase to make a simple version of Snapchat. Very involved
*Pokemon Go Clone - Learn how to work with maps as we make a clone of most popular iOS game right now
Come join the funnest course on Udemy for making iPhone apps!