Difference between revisions of "Code Quality"
From Apache OpenOffice Wiki
B michaelsen (talk | contribs) (added Writer Code Conventions) |
B michaelsen (talk | contribs) |
||
Line 47: | Line 47: | ||
− | [[Category: | + | [[Category:Coding Standards]] |
Latest revision as of 12:09, 28 March 2010
This wiki page contains resources to support high quality coding (design and implementation) for OpenOffice.org. It shall support "preventive quality assurance": Coding such that as few as possible defects are introduced, instead of finding them later.
References
Resources that can be used as references.
Coding Standards
- C++ Coding Standards - the commonly agreed on standards when coding for OpenOffice.org in C++
- Writer Code Conventions - additional conventions agreed upon by the Writer Team. It might service as a basis for other Teams (or be added to the general C++ Coding Standards, if that makes sense).
- Perl Coding Standards
Refactoring Guidelines
Education
Resources for learning.
Books
Programming in C++
- Herb Sutter, Andrei Alexandrescu - "C++ Coding Standards"
- A very useful definitive book about high quality C++. Summarizes the professional experience of the most recent years (in 2005). Includes much content of the following books in a tightened form.
- Scott Meyers - "Effective C++" and "More Effective C++"
- Famous classic about all that C++ rules necessary, but often not in the tutorials.
- Herb Sutter - "Exceptional C++", "More Exceptional C++" and "Exceptional C++ Style"
- Gathers articles (in the form of little exercises with solutions and comments) to various issues in C++ programming, including for example exception safety, inheritance, generic programming pitfalls and "what is wrong about std::string?".
Code Improvement
- Martin Fowler - "Refactoring"
- Shows many typical error prone patterns/phenomena in source code. Provides technically exact ways to improve them without changing the semantics of the code.
The examples are in Java but easily transferable to similar programming languages.
Links
Object Oriented Methods and Languages
- Cetus Links
Huge collection of links about all major programming languages and object orientation. A standard resource!
Research
Various resources that may give ideas for further exploration.
Defect Prevention
Code Reviews
OpenOffice.org Code Exploration
Analysis of OOo's existing code base.
- The Source Code Inventory project tries to statically analyze OpenOffice.org code to evaluate its overall quality, find dead and duplicate code and remove unnecessary or circular dependencies
- OpenOffice++ is a project that has done static source code analysis on several versions of OpenOffice.org. There exists a general report and detailed data may be available here.
Links to Related Topics
Related topics not exactly in the scope of this page.
- Child Workspaces: CWS Policies
- Specifications: Template for writing specifications
- Using UNO: Developers Guide