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

Objective-C Programming Fundamentals and Advanced LiveLessons (Video Training)

Video Description

In the Fundamentals section Jiva Devoe helps the viewer understand the key concepts and fundamentals of the Objective-C language. This video covers basic objective-c syntax, objects, memory management, protocols, the foundation framework and errors. The newest features in Objective-C such as ARC, blocks, and properties are included. After watching this video, viewers should be able to build and run basic Objective-c programs.

In the Advanced section viewers will learn how to use blocks, use categories to extend the capabilities of existing classes, use keyvalue coding and keyvalue observing, use threading to harness the power of multiprocessor and multicore machines, understand design patterns e commonly used in Objective-C, and how to serialize and deserialize objects to property lists and to JSON strings. Finally, the video covers best practices for programming clean code in Objective-C. When viewers have completed these lessons, they will have an understanding of the necessary aspects of Objective-C that are needed to begin writing applications using cocoa and cocoa touch.

About the Author:

Jiva DeVoe is the founder of Random Ideas, LLC, a software company specializing in iPhone and Mac OS X applications. He’s an author, blogger and software developer with nearly 20 years of experience in the software industry. Today, Jiva works primarily with Objective-C, Cocoa and Cocoa Touch, developing applications for the iPhone and Mac OS X. Jiva has written several award winning apps and is the author of Objective-C Developer Reference and Cocoa Touch for iPhone OS 3 Developer Reference. Contact Jiva through his blog at www.random-ideas.net

Table of Contents

  1. 1.1 Understand blocks 00:05:30
  2. 1.1 Write an Objective-C program 00:09:17
  3. 1.2.a Understand the basic Objective-C types 00:25:32
  4. 1.2.b Understand the basic Objective-C types 00:22:37
  5. 1.2 Declare blocks 00:02:43
  6. 1.3 Declare and use functions 00:23:04
  7. 1.3 Use blocks 00:04:40
  8. 1.4 Understand block scope 00:05:57
  9. 1.4 Control program flow 00:34:16
  10. 1.5 Avoid problems with blocks 00:05:24
  11. 1.5 Use the preprocessor 00:10:37
  12. 1.6 Know when to use blocks 00:01:49
  13. 2.1 Understand classes and objects in Objective-C 00:05:49
  14. 2.1 Declare categories 00:05:17
  15. 2.2 Implement category methods 00:02:42
  16. 2.2 Create Objects 00:15:30
  17. 2.3 Declare classes 00:52:58
  18. 2.3 Understand category design patterns 00:05:11
  19. 2.4 Implement protocols with categories 00:04:09
  20. 2.5 Use anonymous categories 00:02:14
  21. 2.6 Avoid category gotchas 00:02:11
  22. 3.1 Declare KVC compliant properties 00:05:31
  23. 3.1 Do traditional Objective-C manual memory management 00:06:56
  24. 3.2 Use autorelease pools 00:08:13
  25. 3.2 Access properties using key value coding 00:07:49
  26. 3.3 Use Automatic Reference Counting 00:09:04
  27. 3.3 Observe changes on objects using key value observing 00:08:30
  28. 3.4 Implement manual KVO notifications 00:05:30
  29. 3.5 Avoid KVO gotchas 00:01:42
  30. 4.1 Understand the Protocol design pattern 00:04:39
  31. 4.1 Understand threads 00:02:12
  32. 4.2 Understand Grand Central Dispatch 00:04:42
  33. 4.2 Use Protocols with your classes 00:02:19
  34. 4.3 Use the low level GCD interface 00:14:54
  35. 4.3 Implement your own protocols 00:10:32
  36. 4.4 Understand informal protocols 00:02:15
  37. 4.4 Use NSOperation and NSOperationQueue 00:08:36
  38. 4.5 Synchronize threads 00:03:27
  39. 4.6 Understand atomic accessors 00:01:14
  40. 5.1 Understand design patterns 00:01:50
  41. 5.1 Use strings 00:16:02
  42. 5.2 Understand design patterns in Objective-C 00:02:54
  43. 5.2 Work with NSArray 00:10:16
  44. 5.3 Use NSDictionary 00:06:47
  45. 5.3 Create singletons 00:05:29
  46. 5.4 Delegate responsibility 00:09:05
  47. 5.4 Work with other collections 00:01:47
  48. 5.5 Notify objects of changes 00:08:06
  49. 5.5 Box Scalar Values 00:07:12
  50. 5.6 Use Other Frameworks In Your Projects 00:04:30
  51. 6.1 Understand error classification 00:02:51
  52. 6.1 Use NSCoder 00:11:36
  53. 6.2 Use property lists 00:02:27
  54. 6.2 Use return codes 00:02:37
  55. 6.3 Understand when and how to use exceptions 00:13:04
  56. 6.3 Use JSON serialization 00:04:47
  57. 6.4 Use NSError 00:07:21
  58. 7.1 Understand Modern Objective-C 00:02:50
  59. 7.2 Practice appropriate data encapsulation 00:03:03
  60. 7.3 Use properties appropriately 00:03:26
  61. 7.4 Use dot notation appropriately 00:02:30
  62. 7.5 Prevent non-ARC code from using your ARC code 00:01:51
  63. Summary of Objective-C Fundamentals and Advanced Programming LiveLessons 00:01:59
  64. Introduction to Objective-C Programming Fundamentals LiveLessons 00:03:23
  65. Learning objectives 00:01:12
  66. Learning objectives 00:01:03
  67. Learning objectives 00:01:01
  68. Learning objectives 00:01:06
  69. Learning objectives 00:01:09
  70. Learning objectives 00:00:50
  71. Introduction to Objective-C Advanced Programming LiveLessons 00:04:12
  72. Learning Objectives 00:01:43
  73. Learning objectives 00:01:51
  74. Learning objectives 00:01:33
  75. Learning objectives 00:02:04
  76. Learning objectives 00:02:26
  77. Learning objectives 00:01:40
  78. Learning objectives 00:03:27