Learn how to write high-quality code. Discover how to reduce complexity, hotspots and churn, duplication, and more with a variety of platform-agnostic tools.
Overview
Syllabus
Introduction
- Why code quality is important
- What you should know
- What is code quality?
- How do we end up with poor quality code?
- Review of code quality metrics and tools
- What is complexity?
- Exploring complexity with Code Climate
- Enabling cyclomatic complexity
- Adjust thresholds
- What are hotspots and churn?
- Hotspots and churn with CodeScene
- Customizing analysis with CodeScene
- What is code coverage?
- Windows setup
- Collecting code coverage with dotCover
- Visualizing code coverage with NDepend
- macOS X setup
- Collecting code coverage with SimpleCov
- Visualizing code coverage with Code Climate
- What is duplication?
- Setting up copy/paste detectors (CPD)
- Finding duplication with CPD
- Visualizing duplication with SonarQube
- Why secure dependencies?
- Setting up Snyk
- Securing your dependencies with Snyk CLI
- Securing your dependencies with Snyk web
- Why consistent coding style?
- Setting up Flask
- Detect style violations with Flake8
- Automated code style review with Hound CI
- Next steps
Taught by
M. Scott Ford