Create a Photo Sharing App for iOS with Parse in 4 Hours
4.3 (30 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,606 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Create a Photo Sharing App for iOS with Parse in 4 Hours to your Wishlist.

Add to Wishlist

Create a Photo Sharing App for iOS with Parse in 4 Hours

Make a social photo sharing app like instagram. Learn how to integrate Parse, a powerful backend service into your app
4.3 (30 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,606 students enrolled
Created by Daniel Xu
Last updated 3/2014
English
Current price: $12 Original price: $20 Discount: 40% off
4 days left at this price!
30-Day Money-Back Guarantee
Includes:
  • 3.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Create a photo sharing app like Instagram from scratch
  • Learn how to integrate Parse and Facebook SDK into iOS
  • Learn how to setup an app on Parse.com
  • Learn how to setup a Facebook app
  • Manage user authentication
  • Add Facebook Login to your app and access Facebook user profiles
  • Send and receive data with Parse
  • Apply UI design to your app
View Curriculum
Requirements
  • A mac running at least Mountain Lion OS X 10.8.4
  • Basic knowledge in iOS development, if you know what table view controller is, then you should be fine
Description

So you want to make an awesome social app such as Instagram, Snap Chat, Path, Airbnb but don't know where to start? This course will teach you how to code a photo sharing app for iOS in only 4 hours.

We will start from a blank project, and then cover the most important topics such as user authentication, database query, Facebook integration for building a scalable social app. By the end of this course, you will be able to create a fully functional app ready to handle millions of users!

If you already know the basics of iOS development (ie. UITableViewController), then you are good to go. Even If you are not familiar with iOS programming yet, you can definitely follow the course as we will show you step-by-step how to put everything together.

Everything in this course will be done completely in Objective-C, something you are already familiar with. We will be making the app with the most up-to-date version of development environment, Xcode 5 and iOS 7.

We divided the course into more than 38 bite-sized video lessons for you to learn at your own pace.

Who is the target audience?
  • People with basic knowledge of iOS development
  • Beginner iOS developers
  • Anyone who is interested to learn how a seemingly complex social app can be made in a short period of time
  • Anyone who wishes to lean more about mobile backend as a service (MBaaS) providers
Compare to Other iOS Development Courses
Curriculum For This Course
38 Lectures
03:27:24
+
Introduction
4 Lectures 12:14

Daniel introduces the concept of mobile backend as a service (mBaaS) providers and their advantages.

Preview 01:58

Daniel demos the app we will be building in the course.

Preview 01:28

In this video, we start the project from scratch.

Preview 01:39

We initialize the views with storyboard and add some basic controllers.

Preview 07:09
+
Getting to Know Parse
3 Lectures 10:02

In this lesson, we will register as a new Parse developer and add our app to Parse.

Preview 01:05

We download the Parse framework then add the it to our project. We will also add all the required dependencies.

Preview 05:02

We test the Parse framework by saving few objects into the cloud.

Saving simple objects to Parse
03:55
+
Retrieving and Displaying Data from Parse with Table View
2 Lectures 12:12

We learn how to write a basic query to get objects from Parse cloud. Then we display the result with a table view

Preview 07:04

We learn to use the table view controller called PFQueryTableViewController from Parse to automatically retrieve and display objects from Parse cloud.

Creating HomeViewController as a Subclass of PFQueryTableViewController
05:08
+
User Authentication
2 Lectures 18:52

We create basic login and sign up controllers and their views. We also connect all the necessary IBActions and IBOutlets.

Creating Login and Sign Up Controllers
09:06

Learn how to sign up and login new users with Parse

User Authentication with Parse
09:46
+
Facebook Integration
4 Lectures 32:05

In this video, we sign up as a new Facebook developer and register our app with Facebook.

Facebook Developer Account Setup
07:31

We learn how to integrate Facebook Login with Parse login. We will be using a login view controller called PFLoginViewController to achieve this.

Facebook Login with PFLoginViewController
05:00

In this lesson, we implement the necessary login view controller delegate methods for the login to work

Implementing PFLoginViewController Delegate Methods
08:16

We use facebook API to retrieve user information from Facebook and then save the information to Parse

Getting User Profile Information from Facebook and Update Parse User Object
11:18
+
Taking and Uploading Photos
4 Lectures 20:04

We create a camera view controller and add UIImagePickerViewController for obtaining images from camera or photo library.

Taking Photos with UIImagePickerViewController
05:40

We setup photo upload screen in Storyboard where the user can add a title and preview the photo.

Setup CameraViewController Upload Screen
03:44

We will implement the image picker delegate methods that are responsible for the scenarios when the user has successfully taken a photo and when the user has cancelled taking a photo.

Implementing UIImagePickerControllerDelegate Method
02:42

In this lesson, we write the code for wrapping the image data into a PFFile object, a file object provided by Parse, then upload the file to Parse cloud.

Saving Photo Object to Parse
07:58
+
Displaying Timeline
6 Lectures 27:47

In this lesson, we will create the views for section header cell and photo cell inside storyboard

Creating Custom Table Header View and Photo Cell
04:13

There are a lot of datasource and delegate methods waiting to be implemented. A template file is provided here with all the methods we are going to talk about in the next few lessons.

Using PFQueryTableViewController Template
01:18

We are going to implement the section header cell for displaying user profile image, username, image title, and follw button.

Implementing Section Header Cell and Methods
06:25

We are going to implement the photo cell for displaying large photos from Parse.

Implementing Photo Cell and Methods
05:11

Due to the complexity of our app, we can no longer rely on PFQueryTableViewController for automatically retrieving data for us. We need to write a custom query to the photos along with their corresponding user profile information.

Querying Photo Class and Its Children
04:11

Due to the way we display our photos in sections rather than rows, the pagination feature is broken. In this lesson, we will fix this issue.

Add Load More Cell and Reenable Pagination
06:29
+
Adding Follow and Unfollow Activities
4 Lectures 23:48

In order for our users to follow each other, we need to add a new Activity class to store the relationship information among users. In this lesson we will look at what key value pairs we need to store inside Activity class.

Understanding Follower Relationship Data Model
01:43

We will create a custom follow button, a subclass of UIButton, for follow/unfollow other users.

Creating a Custom Follow Button
05:42

We will implement the follow button delegate method inside home view controller. We will create queries for adding and removing relationships from the Activity class

Implementing Follow and Unfollow Methods
06:49

The follow button must be updated dynamically to reflect the changes when user follow or unfollow another user. We will write a query to get the current state of the database and update the follow buttons accordingly.

Querying Activity Class and Updating Follow Button States
09:34
+
Displaying Profile Screen
3 Lectures 18:54

The profile view is very similar to the home view controller we implemented in the previous section. We can reuse the code we wrote for home view controller when building the profile view controller

Creating ProfileViewController as a Subclass of HomeViewController
05:48

The biggest addition inside profile view is the user status view. In this lesson, we create several queries for retrieving the user status information from Parse.

Querying Current User Status
05:23

The profile screen contains a timeline just like the home screen. However, this timeline will only display the photos from the current user and the people the current user is following. We will write a query to obtain these photos.

Querying Photos from People Followed by the Current User
07:43
+
Applying User Interface Design
6 Lectures 31:26

We have finished coding all the logic behind the app. In this lesson, we will start to apply the UI design and polish our app. First, we need to import all the icons into our project.

Importing Image Assets into the Project
02:02

In this lesson, we add fonts, colors and icons to the login screen.

Applying UI Design to Login View
06:46

In this lesson, we add fonts, colors and icons to the home screen.

Applying UI Design to Home View
07:32

In this lesson, we add fonts, colors and icons to the camera screen.

Applying UI Design to Camera View
03:29

In this lesson, we add fonts, colors and icons to the profile screen.

Applying UI Design to Profile View
07:48

In this lesson, we will change the color of the status bar to white and add tab bar icons to the tab bar

Applying UI Design to Tab Bar and Status Bar
03:49
About the Instructor
Daniel Xu
4.3 Average rating
30 Reviews
1,606 Students
1 Course
Entrepreneur, Software Engineer and Investor

Hi, my name is Daniel Xu. Since I got my first computer in elementary school, technology has become a big part of my life and I am very passionate about learning and sharing my knowledge with others.

I started developing mobile apps 3 years ago. Since then, I've worked on mobile app projects with some of the most prominent startups, media companies and banks in Canada. My portfolio ranges from consumer oriented apps such as augmented reality games and social networking, to enterprise level apps such as online banking and construction safety management. I also hold both bachelor and master degree in computer engineering from University of Toronto.

Hope you enjoy my courses and please feel free to leave any comments or feedback.