When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

pluralsight logo

Advanced Defensive Programming Techniques

This course will lead you step by step through the process of developing defensive design practices, which can substitute common defensive coding, for the better of software design and implementation.

     
  • 5
  •  |
  • Reviews ( 222 )
Free

This Course Includes

  • iconpluralsight
  • icon5 (222 reviews )
  • icon6 hour 22 minutes
  • iconenglish
  • iconOnline - Self Paced
  • iconcore courses
  • iconpluralsight

About Advanced Defensive Programming Techniques

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.

What You Will Learn?

  • 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.