Mindmap
Software Development Practices
Inhalt der Mindmap
Software Development Practices
Test-Driven Development
- Write tests before the code and insure all code has a corresponding test
- Make your code fail tests, make it work as simply as possible, refactor it
- Benefits include: Imposing discipline, provide incremental specification, avoids regression errors, and facilitates confident changes
- In Dynamic Verification we try to exercise the system to make it fail. ie unit testing and system testing
- In Static Verification we use tools to examine the code without executing it
- Refactoring is a key component and it helps prevent code smells by encouraging good desings
- Identifies code smells
Code Smells
- A code smell is a surface indication that usually corresponds to a deeper issue in the code and comes from technical debt (the amount of work you create when trying to save time upfront)
- Types
- Bloaters are clasified by their large classes, long methods, data clumps, and long parameter lists
- OO Abusers are classified by their complex switch/if statements and their refused bequest
- Change Preventers are classiified by their shotgun surgery (every time you make a small modificatin you have to make a change to many classes), and their divergent change (many changes to a single class)
- Dispensables are classified by their duplicate code, lazy classes, and data classes
- Couplers are classified by their feature envy, innapropriate intimacy, and middle man
Refactoring
- Improving code without changing its functionality by keeping the code readable, understandable, and maintainable
- Reasons for refactoring incldude: changing requirements, improving design, and reducing technical debt
- Techniques include: renaming, extract method, extract clas, collapse heirarchy, consolidate conditional, and decompose conditional
- Refactor when adding new features, fixing bugs or during code reviews not when the code is broken or the deadline is close
- Addresses code smells
Informationen
- Beschreibung
- Undergrad CS2340 Mindmap am Software Development Practices, erstellt von Brandon Shoemaker am 01/08/2024.
- Erstellt von
- Brandon Shoemaker
- Aufrufe
- 0
- Bewertung