architectural changes in orion
TRANSCRIPT
Smaller and reusable blocks
● easier to understand
● easier to maintain
● increased reusability
● easier to test
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
SOLID Principles
● Single responsibility principle
● Open/closed principle
● Liskov substitution principle
● Interface segregation principle
● Dependency inversion principle
Unit testing
“A unit test is used to verify a single minimal unit of source code. The purpose of unit testing is
to isolate the smallest testable parts of an API and verify that they function properly in isolation.
“
API Design for C++, p295; Martin Reddy
Unit testing - Advantages
● Finds problems early
● Forces the programmer to think
● Safety net for refactoring
● Documentation of the system
● Less bugs
Unit testing - Common Myths
● It slows down the development process
● It’s a waste of time
● It is waste when once the project is finished
● But it’s such simple code, why write a test?