Labs ICT
โญ Pro Login

Coding Standards & Style Guides

Writing consistent, readable, maintainable code.

Coding Standards & Style Guides

Coding standards are conventions and guidelines for writing code. They ensure consistency across a codebase, making it easier for teams to read, understand, and maintain code.

Why Coding Standards Matter


  WITHOUT CODING STANDARDS:
  =========================

  function getData() { ... }
  function fetch_data() { ... }
  function getdata() { ... }

  // Three names for the same concept!
  // Which one do you use? What if different
  // developers use different ones?

  WITH CODING STANDARDS:
  ======================

  function getData() { ... }

  // Everyone uses the same convention.
  // Consistent, predictable, readable.

Naming Conventions


  NAMING CONVENTIONS
  ==================

  Variables & Functions: camelCase
  const userName = "Alice";
  function getUserData() { ... }

  Classes: PascalCase
  class UserService { ... }

  Constants: UPPER_SNAKE_CASE
  const MAX_RETRY_COUNT = 3;

  Private Members: prefix with _
  class User {
    _password = "secret";
  }

  Boolean: is/has/can prefix
  const isActive = true;
  const hasPermission = false;
  const canEdit = true;

Code Formatting


  FORMATTING RULES
  ================

  Indentation: 2 or 4 spaces (pick one and stick to it)

  Line Length: Max 80-100 characters

  Spacing:
  if (condition) {    // Space after keywords
    doSomething();    // Space after commas
  }

  Braces: Opening brace on same line
  function foo() {    // Same line (K&R style)
    ...
  }

  Blank Lines: Separate logical sections
  function first() { ... }

  function second() { ... }

Popular Style Guides

  • Airbnb JavaScript Style Guide: Comprehensive JS conventions
  • Google Style Guides: Languages-specific guides from Google
  • PEP 8: Python's official style guide
  • Sun/Oracle Java Conventions: Java coding standards

Automated Enforcement


  TOOLS THAT ENFORCE STANDARDS
  ============================

  JavaScript: ESLint, Prettier
  Python:     flake8, black, pylint
  Java:       Checkstyle, SpotBugs
  C#:         StyleCop, Roslyn Analyzers

  # Example ESLint config
  {
    "rules": {
      "no-unused-vars": "error",
      "semi": ["error", "always"],
      "quotes": ["error", "single"]
    }
  }

Key Takeaways

  • Coding standards ensure consistency across teams
  • Follow established naming conventions for clarity
  • Use automated tools to enforce standards
  • Choose a style guide and stick to it

๐Ÿงช Quick Quiz

What is the DRY principle?