Defensive Coding Fundamentals for C#

Developers seeking an introductory guide to developing efficient, secure, applications that are defendable against a variety of issues.

Prerequisite
none

Expected Duration
125 minutes

Description
Defensive Programming is a methodology for writing code that is not prone to present or future errors potentially caused by unexpected user inputs/actions. In this course you will explore the fundamentals of defensive programming including inspections, testing, input validation, error handling, planning, methods, variables, assertions, and iterative design.

Objective

Introduction to Defensive Programming

  • start the course
  • describe the potential risks faced by software applications
  • identify the key reasons why risks are a recurring issue
  • recognize the key features of defensive coding
  • list some key approaches to preventing problems during the planning stage

Defensive Programming Techniques

  • recognize what clean code is
  • identify the key features of iterative design
  • use pseudocode to develop programming solutions
  • use assertions in your programming code
  • apply pre and post conditions to C#

Inspections and Testing

  • identify how to perform low level design inspections
  • describe the benefits of testing your code
  • recognize how to write testable code in C#
  • recognize how to perform unit tests using Visual Studio for C#

Defendable Code

  • create examples of defensible methods in C#
  • identify the techniques for applying defensive techniques for method parameters and return values in C# methods
  • recognize how to implement variable declarations for defendable code
  • identify how to use null values in creating defendable code
  • identify how to use if and switch statements in creating defendable code

Working with Errors

  • identify error handling techniques to promote defensive coding
  • demonstrate how to use exceptions to handle errors
  • create a C# application that incorporates error codes and messages into its error handling
  • recognize how to use error processing and global objects
  • identify how to handle errors locally in C# code
  • recognize how to anticipate potential errors in C# code

Practice: Creating Defensible Code

  • write clean, testable code

MONTHLY SUBSCRIPTION

$129/month
 

ANNUAL SUBSCRIPTION

$1295/year

Multi-license discounts available for Annual and Monthly subscriptions.