Difference between revisions of "Cpp Coding Standards"

From Apache OpenOffice Wiki
Jump to: navigation, search
m (Checkable Rules)
m (Topics in Alphabetical Order)
Line 64: Line 64:
 
* [[/Topics/HIERARCHY | HIERARCHY]] - Hierarchies of Virtual Classes
 
* [[/Topics/HIERARCHY | HIERARCHY]] - Hierarchies of Virtual Classes
 
* [[/Topics/IFC | IFC]] - Interfaces
 
* [[/Topics/IFC | IFC]] - Interfaces
 +
* [[/Topics/META | META]] - Meta Rules
 
* [[/Topics/OBSOLETE | OBSOLETE]] - Obsolete Habits
 
* [[/Topics/OBSOLETE | OBSOLETE]] - Obsolete Habits
 +
* [[/Topics/PROCESS | PROCESS]] - Development Process
 
* [[/Topics/SECURITY | SECURITY]] - Security
 
* [[/Topics/SECURITY | SECURITY]] - Security
 
* [[/Topics/STL | STL]] - The C++ Standard Template Library
 
* [[/Topics/STL | STL]] - The C++ Standard Template Library
 
* [[/Topics/TYPE | TYPE]] - Type Safety
 
* [[/Topics/TYPE | TYPE]] - Type Safety
 
==== Additional Advice ====
 
* [[/Topics/META | META]] - Meta Rules
 
* [[/Topics/PROCESS | PROCESS]] - Development Process
 
 
----
 
----
 
[[Category:Coding Standards]]
 
[[Category:Coding Standards]]

Revision as of 17:36, 27 November 2006

Purpose

Coding standards are a part of defect prevention. They gather rules, advice and best practices for developing software, especially the code writing part. Here are listed some ideas what such standards could be for developing with C++ and within the OpenOffice.org project.

Identifying Rules

To make it easier to talk about the rules, each one gets an identifier. Because items can be added or sorted out, such ids are not just cardinal numbers, but strings with some semantic content. Each rule belongs to a topic with an id, and has an id itself.

Example: FDESIGN:OneTask is the rule with the id "OneTask" which belongs to the topic function design with the id "FDESIGN".


Topics by Problem Domain

Topics may appear at multiple domains.

Middle- and Lowlevel Design

Classes

Functions and Implementation Generally

Preferred vs. Discarded Types and Habits

Files, Formatting, Documentation

Meta Rules and Development Process


Topics in Alphabetical Order

Checkable Rules


Personal tools