2024-2025 Undergraduate Catalog 
    
    Jun 01, 2024  
2024-2025 Undergraduate Catalog
Add to Portfolio (opens a new window)

CISC 333 - Defensive Programming


(3 semester hours)
Prerequisites: C or higher in CISC 233  
Description: This course will look at principles, methodologies, tools, and best practices in defensive programming, or programming with the goal of minimizing errors and creating reliable and secure software. The student will understand when and where to apply defensive programming principles, as well as learning how to determine if defensive programming is unnecessary. Software engineering principles which are designed to communicate design goals or software requirements (such as design by contract) are emphasized as a methodology of minimizing bugs and miscommunication. Programming constructs, such as exceptions and exception handling, as well as object-oriented design principles are re-examined within the context of how they can eliminate confusion and make software debugging easier. Testing principles and approaches will be explored as means to squash bugs before software is released. These concepts are situated such that they are designed to be immediately practical to the student in a real-world development setting. Offered Spring semester, annually.



Add to Portfolio (opens a new window)