Online Courses and Tutorials

Onlinecourses.tech provides you with the latest online courses information by assisting over 45,000 courses and 1 million students.

Learn programming, marketing, data science and more.

Get started today

Skip to main content

Featured Post

Machine Learning

Master machine learning fundamentals in four hands-on courses

About This Specialization This Specialization from leading researchers at the University of Washington introduces you to the exciting, high-demand field of Machine Learning. Through a series of practical case studies, you will gain applied experience in major areas of Machine Learning including Prediction, Classification, Clustering, and Information Retrieval. You will learn to analyze large and complex datasets, create systems that adapt and improve over time, and build intelligent applications that can make predictions from data. Created by: Industry Partners: 4 courses Follow the suggested order or choose your own. Projects Designed to help you practice and apply the skills you learn. Certificates Highlight your new skills on your resume or

Networking and Security in iOS Applications

Networking and Security in iOS Applications

About this course: You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications. You'll learn how to store data securely on a device using Core Data. You’ll also learn to securely deploy apps to the App Store and beta users over-the-air. The format of the course is through a series of code tutorials. We will walk you through the creation of several apps that you can keep as a personal app toolbox. When you make your own apps after this course, you can bring in these capabilities as needed. When necessary we pop out of the code tutorials to talk about concepts at a higher level so that what you are programming makes sense. Upon completing this course, you will be able to: 1. Post Facebook, Twitter, Sina Weibo, Tencent Weibo messages to social media using single sign-on on behalf of a user. 2. Use OAuth 2.0 to securely authenticate to Instagram and retrieve photos on behalf of a user 3. JSON 4. Describe JSON’s syntax 5. Write well-formed JSON 6. Work with JSON data objects in Objective-C 7. Appropriately set the security settings for App Transport Security in iOS 9.0 8. Use http, https and https with perfect forward secrecy to fetch web resources 9. Obtain permissions to receive local push notifications 11. Write an app that can send and receive local push notifications 12. Obtain permissions to receive remote push notifications 13. Write an app that can receive remote push notifications 14. Authenticate using Apple’s cryptographic services such that the developer can use 3rd party infrastructure to send remote push notifications to their app. 15. Securely store data on the user’s device. 16. Authenticate using Apple’s cryptographic services such that they can deploy an app to the app store

Created by:  University of California, Irvine

  • Don Patterson
    Taught by:  Don Patterson, Associate Professor
    Informatics and Computer Science

  • Sam Kaufman
    Taught by:  Sam Kaufman, Partner at Gradient
Basic Info
Language
English
How To PassPass all graded assignments to complete the course.
User Ratings
Average User Rating 4.6See what learners said
Syllabus
WEEK 1
Welcome!
Welcome to this course on Networking and Security in iOS Applications. Our focus in this course is very practitioner oriented. We want to get you up and running using social networking integration with single sign-on, basic OAuth2 functionality, secure JSON web APIs, cryptographically secured push notifications, and secure data storage so that you can get apps into the iTunes ecosystem and out into the marketplace. This course will have several code sessions in which we walk you through the process of building apps, some of which you will also build for peer review assignments. Interspersed with the tutorials we will take time-outs to cover the basics of some concepts that might be mysterious without a more formal treatment. Our hope is that you come out of this course knowing more (of course!) and having several projects that you can refer to in the future when you want to incorporate these techniques into your apps - your personal app toolbox. The intensity picks up from the previous course in this Specialization, so get ready!
15 videos6 readings
  1. Reading: Course Overview
  2. Video: Welcome!
  3. Reading: Pre-Course Survey
  4. Reading: Getting Help
  5. Reading: Twitter App Orientation
  6. Video: Twitter App: Setting up the User Interface
  7. Video: Twitter App: Connecting the U/I
  8. Video: Twitter App: Styling the U/I via ".layer"
  9. Video: Twitter App: Social.Framework and building a UIAlertController
  10. Video: Twitter App: Closing a window with UIAlertAction
  11. Video: Twitter App: Checking for "Single Sign On"
  12. Video: A general pattern for pop-up alerts
  13. Video: Twitter App: Tweet with SLComposeViewController
  14. Video: Twitter App: Reviewing what we accomplished
  15. Reading: Facebook Orientation
  16. Video: Facebook: Adding an additional UIAlertAction
  17. Video: Facebook: Using SLComposeViewController to Post
  18. Reading: Future proofing
  19. Video: Future Proofing with the UIActivityViewController
  20. Video: Simplifying the Interface - Less Clicks!
  21. Video: Peer-Review 01: Your turn!
Graded: Social Networking App
WEEK 2
Using Secure Web APIs: an Instagram Case Study
Now it's time to consider what we are going to do if we want to work with web services that aren't deeply integrated into iOS. There are hundreds (thousands?!?!) of them. Most of them require authentication via the OAuth 2.0 protocol. In this week's lessons we will walk through an example of getting a photo from Instagram on behalf of a user. This week is also a code tutorial in preparation for your peer review assignment, but in the middle we need to step back from coding to cover some basics: How do we use a UIImageView? What is OAuth 2.0 anyway? What is JSON and how do we read it? What's the big deal about http vs https anyway?
12 videos1 reading
  1. Video: Overview of Instagram App
  2. Video: Building the project with Cocoapods
  3. Video: Intro to UIImageView
  4. Video: Laying out the Interface
  5. Video: OAuth 2.0
  6. Video: Accessing a web service API
  7. Video: JSON
  8. Video: Custom URL Schemes
  9. Video: NSAppTransport in iOS 9
  10. Video: Network Security Considerations
  11. Video: Getting data with NSURLSession
  12. Video: Calling and Parsing API JSON data
  13. Reading: Two Updates on the Instagram API
Graded: 02 Instagram Network API App
WEEK 3
Don't be so pushy!
In this week we will look at several aspects of push notifications. Those are those alerts that show up at the top of your iOS interface when an app wants to get your attention. There are several ways that they can be initiated. They can be initiated from an app on a local device, or they can be initiated by a remote server somewhere on the internet. Obtaining permission to post those notifications requires lots of steps, certificates, passwords etc. We'll walk you through it all. This week we start with a high-level overview of the iOS app lifecycle. Then we will do three code tutorials. The first will be the one that you will need to do the peer-review assessment. It's a basic countdown timer that sends a notification at a specific time. The second will show you how to make it all fancy with custom actions. The final one will be for remote notifications. Since remote notifications require an Apple developer account ($$$) we won't assess you on it, but if you have one you can try it out on your own and add it to your personal app toolbox.
11 videos1 reading
  1. Video: App Lifecycle
  2. Video: Push notifications: local Part 1
  3. Video: Push notifications: local Part 2
  4. Video: Push notifications: actions
  5. Reading: Remote Push Notification Has Changed
  6. Video: Push notifications: remote Part 01
  7. Video: Push notifications: remote Part 02
  8. Video: Push notifications: remote Part 03
  9. Video: Push notifications: remote Part 04
  10. Video: Push notifications: remote Part 05
  11. Video: Push notifications: remote Part 06
  12. Video: Intro to Peer Review Assignment 03
Graded: 03 Push Notification Alarm
WEEK 4
Storing Data
In this week we look at method of securely storing data on the iOS platform called Core Data.  
9 videos1 reading
  1. Video: Core Data: Introduction
  2. Video: Core Data: Setting Up Your Project
  3. Video: Core Data: Building the Model
  4. Video: Core Data: Wiring the UI to CoreData
  5. Reading: The Full Core Data Example
  6. Video: Enrichment: The Full Core Data Example 1
  7. Video: Enrichment: The Full Core Data Example 2
  8. Video: Peer Review 04 Instructions: Storing Data App
  9. Video: Deploying to the App Store
  10. Video: App Store Analytics
Graded: 04 Secure Data Storage App
Graded: Final Exam
How It Works
Coursework
Coursework
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from Your Peers
Help from Your Peers
Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
Certificates
Certificates
Earn official recognition for your work, and share your success with friends, colleagues, and employers.
Creators
University of California, Irvine
Since 1965, the University of California, Irvine has combined the strengths of a major research university with the bounty of an incomparable Southern California location. UCI’s unyielding commitment to rigorous academics, cutting-edge research, and leadership and character development makes the campus a driving force for innovation and discovery that serves our local, national and global communities in many ways.
Learn more about this course

Comments

Popular posts from this blog

Big Data Hadoop Certification Training

Big Data Hadoop training will make you an expert in HDFS, MapReduce, Hbase, Hive, Pig, Yarn, Oozie, Flume and Sqoop using real-time use cases on Retail, Social Media, Aviation, Tourism, Finance domain. You will get Hadoop certification at the end of the course

About the Training
This Hadoop training is designed to make you a certified Big Data practitioner by providing you rich hands-on training on Hadoop ecosystem and best practices about HDFS, MapReduce, HBase, Hive, Pig, Oozie, Sqoop. This course is stepping stone to your Big Data journey and you will get the opportunity to work on a Big data Analytics project after selecting a data-set of your choice. You will get Hadoop certification after the project completion.

Training Objectives
The hadoop training is designed to help you become a top Hadoop developer. During this course, our expert instructors will train you to: Master the concepts of HDFS and MapReduce frameworkUnderstand Hadoop 2.x ArchitectureSetup Hadoop Cluster and write Co…

Hands-on Text Mining and Analytics by Yonsei University

About this course: This course provides an unique opportunity for you to learn key components of text mining and analytics aided by the real world datasets and the text mining toolkit written in Java. Hands-on experience in core text mining techniques including text preprocessing, sentiment analysis, and topic modeling help learners be trained to be a competent data scientists. Empowered by bringing lecture notes together with lab sessions based on the y-TextMiner toolkit developed for the class, learners will be able to develop interesting text mining applications.



LevelIntermediateLanguage English, Subtitles: Chinese (Simplified) How To PassPass all graded assignments to complete the course.
Syllabus

Learn to Program and Analyze Data with Python

About This Specialization This Specialization builds on the success of the Python for Everybody course and will introduce fundamental programming concepts including data structures, networked application program interfaces, and databases, using the Python programming language. In the Capstone Project, you’ll use the technologies learned throughout the Specialization to design and create your own applications for data retrieval, processing, and visualization. Created by: 5 courses Follow the suggested order or choose your own. Projects Designed to help you practice and apply the skills you learn. Certificates Highlight your new skills on your resume or LinkedIn. Courses

Deep Learning Specialization

Master Deep Learning, and Break into AI
About This Specialization If you want to break into AI, this Specialization will help you do so. Deep Learning is one of the most highly sought after skills in tech. We will help you become good at Deep Learning. In five courses, you will learn the foundations of Deep Learning, understand how to build neural networks, and learn how to lead successful machine learning projects. You will learn about Convolutional networks, RNNs, LSTM, Adam, Dropout, BatchNorm, Xavier/He initialization, and more. You will work on case studies from healthcare, autonomous driving, sign language reading, music generation, and natural language processing. You will master not only the theory, but also see how it is applied in industry. You will practice all these ideas in Python and in TensorFlow, which we will teach. You will also hear from many top leaders in Deep Learning, who will share with you their personal stories and give you career advice. AI is transforming m…

Launch Your Career in Data Science

A nine-course introduction to data science, developed and taught by leading professors.
About This Specialization Ask the right questions, manipulate data sets, and create visualizations to communicate results. This Specialization covers the concepts and tools you'll need throughout the entire data science pipeline, from asking the right kinds of questions to making inferences and publishing results. In the final Capstone Project, you’ll apply the skills learned by building a data product using real-world data. At completion, students will have a portfolio demonstrating their mastery of the material. Created by: Industry Partners: 10 courses Follow the suggested order or choose your own. Projects Designed to help you practice and apply the skills you learn.

Master of Computer Science in Data Science

A flexible and affordable degree from one of the top Computer Science programs in the world, focused on one of the hottest fields of the new millennium

Enroll in the Master of Computer Science in Data Science (MCS-DS) and gain access to the computational and statistical knowledge needed to turn big data into meaningful insights. Build expertise in four core areas of computer science—data visualization, machine learning, data mining, and cloud computing—while learning key skills in statistics and information science. This completely online degree is an affordable gateway to one of the most lucrative and fastest growing careers of the new millennium. The MCS-DS is offered by CS @ ILLINOIS, a U.S. News & World Report top five CS graduate program, in collaboration with the University’s Statistics Department and top-ranked iSchool. Join our alumni network of entrepreneurs, educators, and technical visionaries, who have revolutionized the way people communicate, shop, conduct business,…

Machine Learning

Master machine learning fundamentals in four hands-on courses

About This Specialization This Specialization from leading researchers at the University of Washington introduces you to the exciting, high-demand field of Machine Learning. Through a series of practical case studies, you will gain applied experience in major areas of Machine Learning including Prediction, Classification, Clustering, and Information Retrieval. You will learn to analyze large and complex datasets, create systems that adapt and improve over time, and build intelligent applications that can make predictions from data. Created by: Industry Partners: 4 courses Follow the suggested order or choose your own. Projects Designed to help you practice and apply the skills you learn. Certificates Highlight your new skills on your resume or

An Introduction to Interactive Programming in Python (Part 1)

About this course: This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse. In part 1 of this course, we will introduce the basic elements of programming (such as expressions, conditionals, and functions) and then use these elements to create simple interactive applications such as a digital stopwatch. Part 1 of this class will culminate in building a version of the classic arcade game "Pong".
Who is this class for: Recommended Background - A knowledge o…

Программирование на Python

About this course: Python – простой, гибкий и невероятно популярный язык, который используется практически во всех областях современной разработки. С его помощью можно создавать веб-приложения, писать игры, заниматься анализом данных, автоматизировать задачи системного администрирования и многое другое. “Программирование на Python” читают разработчики, применяющие Python в проектах, которыми ежедневно пользуются миллионы людей. Курс покрывает все необходимые для ежедневной работы программиста темы, а также рассказывает про многие особенности языка, которые часто опускают при его изучении. В ходе курса вы изучите конструкции языка, типы и структуры данных, функции, научитесь применять объектно-ориентированное и функциональное программирование, узнаете про особенности реализации Python, научитесь писать асинхронный и многопоточный код. Помимо теории вас ждут практические задания, которые помогут проверить полученные знания и отточить навыки программирования на Python. После успешного о…

Front-End JavaScript Frameworks: Angular

About this course: This course concentrates mainly on Javascript based front-end frameworks, and in particular the Angular framework (Currently Ver. 4.x). This course will use Typescript for developing Angular application. Typescript features will be introduced in the context of Angular as part of the exercises. You will also get an introduction to the use of Angular Material and Angular Flex-Layout for responsive UI design. You will be introduced to various aspects of Angular including components, directives and services. You will learn about data binding, Angular router and its use for developing single-page applications. You will also learn about designing both template-driven forms and reactive forms. A quick introduction to Observables, reactive programming and RxJS in the context of Angular is included. You will then learn about Angular support for client-server communication and the use of REST API on the server side. You will use Restangular for communicating with a server sup…