Coder Social home page Coder Social logo

coding-standards's Introduction

You are responsible to:

  • honor and respect these standards
  • help your team members honor and respect these standards
  • modify the standard over time

Coding Standards - Level 100

  • No duplication (including tests)
  • Ticket # in commit message
  • No commented out code
  • Methods have 10 or fewer lines - Including test methods
  • Methods have 3 or fewer parameters
  • Classes have 7 or fewer public members (Single Responsibility)
  • No method calls or logic in constructors
  • No checked exceptions (Java)
  • Classes are named using a noun or noun phrase
  • Methods are named using a verb or verb phrase
  • Variable and field names are pronounceable
  • Only 1 level of inheritance

Unit Test Standards - Level 100

  • No assertNotNull()
  • No @Ignore tests
  • 3 or fewer assertions per test method
  • No mocked static methods

Coding Standards - Level 200

  • Only inherit from abstract or interfaces
  • No name decorations (FooImpl.java)
  • No getter/setters on Interfaces
  • No constant interfaces
  • No public constants
  • Query methods don't throw exceptions
  • Query methods don't change state
  • Command methods change state
  • Command methods throw expections when state is unable to be changed
  • Factory methods over constructors

Unit Test Standards - Level 200

  • Arrange, Act, Assert
  • No uncovered lines
  • Prefer state based testing: Prefer stubs over mocks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.