Components Code Quality Guides References - DevClusterAI/DOD-definition GitHub Wiki
Code Quality References and Resources
This document provides links to valuable external resources, best practices, and tools for improving code quality in software development projects.
General Code Quality Resources
Standards and Guidelines
- OWASP Secure Coding Practices - Quick reference guide for secure coding practices
- NIST Secure Software Development Framework - Fundamental practices for secure software development
- Google Engineering Practices Documentation - Google's engineering practices documentation
- Microsoft REST API Guidelines - Microsoft's guidelines for building REST APIs
Educational Resources
- Clean Code: A Handbook of Agile Software Craftsmanship - Classic book by Robert C. Martin
- Refactoring: Improving the Design of Existing Code - Essential book by Martin Fowler
- Code Complete - Comprehensive guide to software construction
- The Pragmatic Programmer - Tips, techniques, and practical advice
Language-Specific Resources
JavaScript & TypeScript
- JavaScript Code Quality Guide - A comprehensive guide to JavaScript code quality
- Airbnb JavaScript Style Guide - Popular JavaScript style guide
- Google JavaScript Style Guide - Google's JavaScript style guide
- TypeScript Deep Dive - Comprehensive TypeScript resource
- ESLint - Pluggable JavaScript linter
- Prettier - Opinionated code formatter
Python
- PEP 8 -- Style Guide for Python Code - Official Python style guide
- Google Python Style Guide - Google's Python style guide
- The Hitchhiker's Guide to Python - Best practices for Python development
- Pylint - Static code analyzer for Python
- Black - The uncompromising Python code formatter
Java
- Google Java Style Guide - Google's Java style guide
- Oracle's Java Code Conventions - Official Java code conventions
- Effective Java - Best practices for Java programming
- PMD - Extensible source code analyzer
- Checkstyle - Development tool to help programmers write Java code that adheres to a coding standard
C# and .NET
- C# Coding Conventions - Microsoft's C# coding conventions
- .NET Framework Design Guidelines - Design guidelines for .NET
- Roslyn Analyzers - Static analyzers for C# code quality
- StyleCop - Analyzes C# code for style and consistency
Web Development Best Practices
Frontend Development
- Frontend Development Best Practices - Comprehensive frontend checklist
- Web Fundamentals - Google's guide to modern web development
- Lighthouse - Tool for improving web app quality
- BrowserStack Code Quality - Guide to coding standards and best practices
- MDN Web Docs - Comprehensive web development documentation
Backend Development
- 12 Factor App - Methodology for building modern, scalable web applications
- RESTful API Design Best Practices - Best practices for API design
- Microservices Architecture - Resources for microservices architecture
- Platform OS Best Practices - Code quality and performance best practices
DevOps and CI/CD
- DevOps Tech: Continuous Integration - Google's guide to continuous integration
- GitHub Actions Documentation - Comprehensive guide to GitHub Actions
- Jenkins Best Practices - Best practices for Jenkins
- GitLab CI/CD - Comprehensive guide to GitLab CI/CD
Security and Performance
Security Resources
- OWASP Top Ten - Most critical web application security risks
- OWASP Cheat Sheet Series - Concise collection of high value information on specific security topics
- Snyk - Find and fix vulnerabilities in your dependencies
- SonarQube Security - Detect security vulnerabilities
Performance Resources
- Web Performance Optimization - Google's guide to web performance
- Performance Budgets - Introduction to performance budgets
- YSlow - Tool to identify web performance issues
- WebPageTest - Website performance testing tool
Testing Resources
Testing Frameworks and Methodologies
- Test Pyramid - Guide to different types of tests
- Jest - JavaScript testing framework
- Cypress - End-to-end testing framework
- JUnit - Testing framework for Java
- pytest - Testing framework for Python
Test-Driven Development
- Test-Driven Development By Example - Classic book by Kent Beck
- The Art of Unit Testing - Comprehensive guide to unit testing
- Growing Object-Oriented Software, Guided by Tests - Book on TDD in object-oriented systems
Code Review Resources
- Code Review Best Practices - Google's code review guidelines
- Code Review Checklist - Comprehensive code review checklist
- Effective Code Reviews - Atlassian's guide to code reviews
- CodeFlow - Microsoft's code review tool
Static Analysis Tools
Multi-Language Tools
- SonarQube - Continuous inspection of code quality
- CodeClimate - Automated code review for maintainability and test coverage
- DeepSource - Static analysis tool for multiple languages
- Codacy - Automated code reviews and monitoring
Language-Specific Tools
- ESLint - JavaScript linting
- Pylint - Python static code analysis
- RuboCop - Ruby static code analyzer and formatter
- Checkstyle - Java code style enforcement
- TSLint - TypeScript linter
- StyleCop - C# code style enforcement
Code Documentation Tools
- JSDoc - API documentation generator for JavaScript
- Sphinx - Documentation generator for Python
- Javadoc - API documentation generator for Java
- Doxygen - Documentation generator for multiple languages
- Swagger - API documentation and design tools
Communities and Forums
- Stack Overflow - Q&A for programmers
- Dev.to - Community of software developers
- Reddit r/programming - Programming subreddit
- Code Review Stack Exchange - Peer code review forum
- GitHub Discussions - Collaborative communication forum