• Online, Self-Paced
Course Description

Maintaining code after you have a working application is an important phase for the longevity of your program, and can assist in speedy development of future projects. This course will teach you how to optimize existing code through refactoring, as well as how to perform code inspections to locate defects. In addition, you'll learn how to test and debug your existing code to eliminate potential errors not yet discovered.

Learning Objectives

Refactoring Fundamentals

  • start the course
  • describe what refactoring is and recognize the benefits of performing code refactoring
  • identify code conditions that can benefit from refactoring
  • list the steps involved when performing refactoring on source code
  • identify best practices for refactoring

Refactoring Categories

  • describe how refactoring can be implemented to improve methods in your source code
  • recognize techniques for refactoring program functionality when working with objects
  • describe refactoring techniques to simplify how your program works with data
  • describe how conditional statements in your source code can be optimized with refactoring
  • recognize how refactoring can help optimize calls to methods in your source code
  • describe how to improve generalization in object-oriented programming through refactoring

Practice: Refactoring Code

  • list the benefits and categories of refactoring code

Code Maintenance

  • identify the benefits of performing maintenance on source code
  • identify the types of peer reviews and describe the benefits of performing inspections on your source code
  • list the roles and responsibilities of the participants involved in peer review inspections
  • list the stages of a software inspection and describe the function of each

Code Errors

  • describe the sources and effects of errors within your software application
  • list and describe the most common types of errors caused by poor programming
  • identify the sources of errors introduced by code improvements and how best to minimize these errors
  • describe how functionality errors occur and how to minimize them

Testing and Debugging

  • list the various methods for testing your programs
  • describe the purpose and principles of unit testing
  • describe the techniques for detecting bugs when testing your programs
  • list the steps involved when debugging your source code

Practice: Maintaining Source Code

  • identify the benefits of maintaining, testing, and debugging source code

Framework Connections

The materials within this course focus on the Knowledge Skills and Abilities (KSAs) identified within the Specialty Areas listed below. Click to view Specialty Area details within the interactive National Cybersecurity Workforce Framework.