Week 8 - Code Improvement
Learning Objectives:
In this week of the course, you will learn about
- Program Verification
- Bug Finders
- Code Smells
- Refactoring
Important Dates:
- HW3 Due Mar 5 by 10pm
- Project Plan Due Mar 12 by 10pm
- HW4 Due Mar 19 by 10pm
Lessons:
Resources
- Activity 8.1 (Boyland)
- Activity 8.2 (Boyland)
- In-class slides and notes from Prof Bell’s Section (Thursday): Slides PDF, Slides PPT, Slides Keynote. There’s a recording of Prof Bell walking through Covey.Town codebase in Canvas/Zoom on March 11 (can’t post link here).
- Project resources: Refactored Covey.Town code to support WASD, HJKL, Phaser Game Engine Tutorial, Twilio React App Starter Code
Additional Readings:
Articles
- Lessons from Building Static Analysis Tools at Google (CACM article from 2018)
- Technical Debt: From Metaphor to Theory and Practice (IEEE Software artice from 2012)
Books
Software Engineering at Google especially the following chapters