O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

iOS and Mac Network Programming LiveLessons (Video Training)

Video Description

iOS and Mac Network Programming LiveLessons provides Objective-C developers with a practical introduction to writing high performance, robust networking code on the Mac and iOS platforms. When viewers have completed these lessons, they will understand how to successfully write Objective-C code that connects their applications to hosts on the Internet using a variety of protocols and techniques.

Author and developer Jiva DeVoe has more than 20 years experience in the software industry and is the author of Objective-C Programming Fundamentals LiveLessons and Objective-C Advanced Programming LiveLessons. In this training course, DeVoe starts by explaining technologies fundamental to network programming, including packets, protocols, TCP, UDP, REST, and JSON. The video then dives in to more specific iOS and Mac OS network programming topics, including how to work with NSURLRequest, NSURLConnection, NSURLSessionTask, and dealing with networking frameworks and security.

What You Will Learn:

  • Fundamental networking concepts as related to the iOS and OS X platforms, including packets and protocols, addresses and ports, TCP, UDP, HTTP and HTTPS.
  • How to use tools such as Cocoa Packet Analyzer that let you see networking traffic.
  • How to work with iOS and OS X specific networking technologies, such as NSURLRequest and NSURLSessionTask.
  • How to implement Web services and servers
  • How to work with low level sockets
  • How to embed Webkit and work with Bonjour

Who Should Take This Course:

  • Objective-C developers who want to learn more about networking and network programming.
  • Developers who viewed the author’s previous training videos, Objective-C Fundamentals LiveLessons Video Training and Objective-C Advanced Programming LiveLessons Video Training, who want to go deeper into using Objective-C for network programming.

Requirements:

  • Some familiarity with Objective-C programming

Table of Contents

  1. Introduction
    1. Introduction to iOS and Mac Network Programming LiveLessons 00:05:17
  2. Lesson 1: Network Fundamentals
    1. Learning objectives 00:01:26
    2. 1.1 Understand how the Internet works 00:02:34
    3. 1.2 Understand addresses and ports 00:03:29
    4. 1.3 Understand packets 00:02:51
    5. 1.4 Understand protocols 00:01:36
    6. 1.5 Understand the Internet Protocol 00:02:17
    7. 1.6 Understand TCP 00:01:53
    8. 1.7 Understand UDP 00:02:13
    9. 1.8 Understand UDP 00:15:05
  3. Lesson 2: Exploring Data Protocols
    1. Learning objectives 00:01:11
    2. 2.1 Explore tools that let you see networking traffic 00:19:50
    3. 2.2 Understand network layers 00:02:54
    4. 2.3 Understand REST 00:08:34
    5. 2.4 Understand JSON 00:05:33
  4. Lesson 3: Networking Technologies on iOS and Mac OS
    1. Learning objectives 00:02:34
    2. 3.1 Understand NSURLRequest and NSURLConnection 00:03:39
    3. 3.2 Understand NSURLSession and NSURLSessionTask 00:05:52
    4. 3.3 Understand Core Foundation networking 00:05:09
    5. 3.4 Understand where to use threads with your networking code 00:06:14
    6. 3.5 Use blocks to simplify your networking code 00:09:57
    7. 3.6 Understand how the technologies relate to each other 00:02:29
  5. Lesson 4: Web Services
    1. Learning objectives 00:02:20
    2. 4.1 Download files 00:17:56
    3. 4.2 Post form data 00:17:39
    4. 4.3 Upload files 00:10:25
    5. 4.4 Access REST services 00:14:54
    6. 4.5 Parse JSON data 00:10:03
    7. 4.6 Display data transfer progress 00:05:15
    8. 4.7 Use background downloads 00:20:18
  6. Lesson 5: Implementing Servers
    1. Learning objectives 00:01:01
    2. 5.1 Listen for connections 00:19:35
    3. 5.2 Handle clients 00:17:39
    4. 5.3 Understand potential performance bottlenecks 00:02:43
  7. Lesson 6: Low Level Sockets
    1. Learning objectives 00:01:00
    2. 6.1 Resolve host names 00:17:01
    3. 6.2 Connect to servers 00:19:42
    4. 6.3 Transfer data 00:14:09
  8. Lesson 7: High Level Networking Frameworks and Security
    1. Learning objectives 00:01:31
    2. 7.1 Send mail 00:07:35
    3. 7.2 Embed Webkit 00:06:55
    4. 7.3 Advertise your service using Bonjour 00:06:57
    5. 7.4 Browse Bonjour services 00:06:28
    6. 7.5 Understand common exploits 00:03:03
  9. Summary
    1. Summary of iOS and Mac Network Programming LiveLessons 00:01:48