Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section
Column
width400px
Panel
titleBGColor#CFECEC
borderStylesolid
titleControlled Document

This is the DM C++ Coding Standard.  Changes to this document and its sub-documents are to be made only with the approval of the System Architect (ref:

Jira
showSummaryfalse
serverJIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId9da94fb6-5771-303d-a785-1b6c5ab0f2d2
keyRFC-24
).

Older revisions are available on the Trac/Wiki:

To request changes to these standards, please file an RFC (ref: Discussion and Decision Making Process).

Panel
titleBGColor#CFECEC
borderStylesolid
titlePreface

The communal nature of creating project software necessitates simplicity and elegance in the crafting of code. Since a piece of code may be a collaboration, as much as any paper, without readability and comprehensibility the result of the collaboration may not preserve integrity of design intent. Without simplicity, it might not be possible to make a judgment of that integrity.

Preserving integrity of design intent is important. The creation of a piece of software is an exercise in developing a consistent set of descriptions (requirements, design, code, tests, manuals) that preserve and manage the evolution of the intent of that software throughout its lifetime. This gains more importance as the key form of these descriptions is an operational (imperative) form, which will decide how a system will react to specified (an, in some cases, unexpected) external stimuli.

This document is strongly based on (verily, virtually identical to) the CARMA[9] C++ Coding Standards which, in turn, was strongly based on Geosoft[6] and ALMA[7] C++ Coding Standards. We have taken the CARMA HTML document and changed it in places to match LSST's needs. CARMA, Geosoft and ALMA retain their respective copyrights where appropriate.

Column
width250px
Panel
bgColor#F7FFFF
titleBGColor#CFECEC
borderStylesolid
titleContents

 

Table of Contents
maxLevel3
indent24px

...