Defensive Coding Fundamentals for C#
Overview/Description
Target Audience
Prerequisites
Expected Duration
Lesson Objectives
Course Number
Expertise Level
Overview/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.
Target Audience
Developers seeking an introductory guide to developing efficient, secure, applications that are defendable against a variety of issues.
Prerequisites
none
Expected Duration (hours)
2.1
Lesson Objectives Defensive Coding Fundamentals for C#
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
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#
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#
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
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
write clean, testable code
Course Number: sd_dpcs_a01_it_enus
Expertise Level
Intermediate