Home > Store > Programming > C/C++

Professional C Programming LiveLessons, (Video Training) Part I: Writing Robust, Secure, Reliable Code

Add To My Wish List

  • Copyright 2013
  • Edition: 1st
  • Downloadable Video
  • ISBN-10: 0-13-312335-9
  • ISBN-13: 978-0-13-312335-7

Register your product to gain access to bonus material or receive a coupon.

  • Description
  • Downloads

15 Hours of Video Instruction

 

Professional C Programming LiveLessons, Part I: Writing Robust, Secure, and Reliable Code provides an in depth explanation of how to use common C language features to produce robust, secure, and reliable code.

 

Author, instructor and programmer, Robert C. Seacord created this video for developers who have previous experience in C language programming. In six lessons, Professional C Programming, Part I shows developers how to perform common C language programming tasks correctly while avoiding programming errors that are not always detected or reported by the compiler.

 

Robert C. Seacord leads the Secure Coding Initiative at CERT, located in Carnegie Mellon University’s Software Engineering Institute (SEI) in Pittsburgh, PA. Seacord is an adjunct professor in both the School of Computer Science and the Information Networking Institute at Carnegie Mellon University.   He is also the author of The CERT C Secure Coding Standard and Secure Coding in C and C++ as well as other books on computer security, legacy system modernization, and component-based software engineering.

 

Table of Contents:

Introduction

 

Lesson 1:  Integer Types
   Learning objectives 

   Introduction to integer types
   Unsigned integers  
   Signed integers 
   Character types 
   size_t, ptrdiff_t, intmax_t and uintmax_t 
   Summary

 

Lesson 2: Integer Conversions
   Learning objectives 

   Conversion rank, promotions, and the usual arithmetic conversions
   Conversions to unsigned types
   Conversions to signed types
   Summary

 

Lesson 3: Integer Operations
   Learning objectives

   Assignment 
   Addition and subtraction 
   Multiplication and upcasting 
   Division/remainder 
   Shifting 
   Summary

 

Lesson 4: Characters, Arrays, and Strings 
   Learning objectives 

   Sizing arrays 
   String literals and their use as array initializers 
   Character types and what they are used for
   Summary

 

Lesson 5: String Handling
   Learning objectives  

   Caller allocates, caller frees
   Bounds-checking interfaces
   Callee allocates, caller frees (POSIX)
   Summary

 

Lesson 6: Optimization 
   Learning objectives

   Undefined behaviors and the “as if” rule
   Constant folding
   Algebraic simplification and pointer arithmetic
   Hoisting of loop-invariant computations
   Dead-code removal
   Aliasing 

   Summary

 

Summary

DRM-Free Video Downloads. Purchase and immediately download individual lessons from this video. Make your lesson selections below and click on the Buy button.

Videos can be viewed on: Windows 8, Windows XP, Vista, 7, and all versions of Macintosh OS X including the iPad, and other platforms that support the industry standard h.264 video codec.

Lesson 1

Lesson 1: Integer Types, Downloadable Version

In Integer Types you learn about the representation, ranges, behavior, and uses of essential integer types in the C programming language including: unsigned integers, signed integers, character types, size_t, ptrdiff_t, intmax_t, and uintmax_t.

Duration: 01:12:44  File Size: 223MB

View exampleView example
$34.99

Lesson 2

Lesson 2: Integer Conversions, Downloadable Version

In Integer Conversions you learn the rules governing integer conversions in the C programming language and how the C language converts integers to unsigned and signed types.  Topics include; conversion rank, promotions, and the usual arithmetic conversions; conversions to unsigned types; and conversions to signed types.

Duration: 00:32:30  File Size: 95MB

View exampleView example
$19.99

Lesson 3

Lesson 3: Integer Operations, Downloadable Video

In Integer Operations you learn the behaviors of common integer operators, how to avoid undefined behaviors, and how to program safely and securely in the presence of implementation-defined behaviors.  Topics include: assignment, addition and subtraction, multiplication and upcasting, division and remainder, and shifting.

Duration: 00:57:02  File Size: 173MB

View exampleView example
$24.99

Lesson 4

Lesson 4: Characters, Arrays, and Strings, Downloadable Version

In Characters, Arrays, and Strings you learn about how strings are represented as null terminated character arrays in the C programming language.  You learn about properties of arrays, as understanding their behavior is critical to understanding C language strings.  You also learn about string literals and their use and idiosyncrasies in initializing arrays.  You also learn about the underlying (and undocumented) philosophy underlying the use of the character types in the C language.

Duration: 00:21:57  File Size: 68MB

View exampleView example
$15.99

Lesson 5

Lesson 5: String Handling, Downloadable Version

In String Handling, you learn about the memory models available to C language programming as well as the advantages of bounds-checking interfaces over the standard C string handling functions defined in <string.h>.   Topics include: caller allocates, caller frees; bounds-checking interfaces; callee allocates and caller frees (POSIX).

Duration: 00:35:54  File Size: 120MB

View exampleView example
$19.99

Lesson 6

Lesson 6: Optimization, Downloadable Version

In Optimization you learn what undefined behavior is, how the C standard identifies undefined behaviors in the language, and the latitude it grants to compilers in dealing with undefined behaviors.  You also learn about common compiler optimizations and how these optimizations can produce unexpected behaviors.   Topics include: undefined behaviors and the “as if” rule; constant folding; algebraic simplification and pointer arithmetic; hoisting of loop-invariant computations; dead-code removal; and aliasing.

Duration: 01:25:58  File Size: 247MB

View exampleView example
$34.99

Actual product comes full screen and in high resolution.

Actual product comes full screen and in high resolution.

Actual product comes full screen and in high resolution.

Actual product comes full screen and in high resolution.

Actual product comes full screen and in high resolution.

Actual product comes full screen and in high resolution.

 
Buy

Downloadable Video  $149.99  $119.99

About this video

Accessible from your Account page after purchase. Requires the free QuickTime Player software.

Videos can be viewed on: Windows 8, Windows XP, Vista, 7, and all versions of Macintosh OS X including the iPad, and other platforms that support the industry standard h.264 video codec.

Purchase Reward: One Month Free Subscription
By completing any purchase on InformIT, you become eligible for an unlimited access one-month subscription to Safari Books Online.

Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.

Save 35% on Video LiveLessons with coupon VIDEO35