Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Pluralsight

Advanced Defensive Programming Techniques

via Pluralsight

Overview

Learn how to defend against unpredictable problems by means of design. Become knowledge about defensive programming and design today!

How often do you have to defend from nulls, zeros, surprising cases hitting switch instruction, impossible else branches, and so on? Is your life a struggle with issues caused by unexpected data or invalid system state? In this course, Advanced Defensive Programming Techniques, you'll learn how to defend by means of design, so that almost all explicit defensive code can be happily removed. First, you'll discover how to build validation. Next, you'll explore how exactly to design a public interface. Finally, you'll cover how to unify error flows, so nothing unpredictable can take you by surprise. By the end of this course, you'll have the necessary knowledge to efficiently develop your own defensive design practice.

Syllabus

  • Course Overview 1min
  • Understanding Limitations of Traditional Defensive Code 40mins
  • Removing Corruption by Only Creating Consistent Objects 31mins
  • Removing Corruption by Only Making Valid State Transitions 40mins
  • Dismissing Defensive Code by Avoiding Primitive Types 45mins
  • Defining Function Domains as the Primary Line of Defense 44mins
  • Building Defensive Design Instead of Writing Defensive Code 42mins
  • The Principle of Working with Objects, Not with Nulls 46mins
  • Building Rich Domain Model as an Effective Defense by Design 43mins
  • Designing Alternative Workflows Instead of Defending from Errors 46mins

Taught by

Zoran Horvat

Reviews

4.9 rating at Pluralsight based on 224 ratings

Start your review of Advanced Defensive Programming Techniques

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.