ALICE O 2 C coding conventions Adriana Telesca
- Slides: 27
ALICE O 2 C++ coding conventions Adriana Telesca on behalf of the CWG 2 March, 21 st 2014
CWG 2 Tools, guidelines and procedures ▶ Propose common guidelines, policies and procedures ▶ Conduct surveys for tools that cover the activities of most of the other working groups (aka Support tools) ▶ Coordinate other surveys ▶ Act as a central point where we keep track of who is evaluating what ▶ Ensure that resources are optimized and communication among the working groups is facilitated A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 2
CWG 2 Members Adriana: DAQ, AMORE software development Alina: Offline, Offline software cycle organization Barth: DAQ, AMORE software development Ivana: Offline, Ali. Root and Geant 4 Matthias: HLT, Vc (SIMD types), Qt/KDE background, C++ committee work ▶ Vasco: DAQ, front-end applications and control software development ▶ ▶ ▶ A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 3
ALICE O 2 C++ coding conventions: why? ▶ O 2 as a fresh start ▶ However, contributions from many coders used to different conventions ▶ Need to ensure uniformity ▶ Need to adopt common conventions A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 4
ALICE O 2 C++ coding conventions: decision ▶ ▶ Google C++ coding guidelines as starting point Widely used conventions taken into account Herb Sutter and Stroustrup’s guidelines considered C++11 features ▶ Big effort invested The result is different from both Google and Ali. Root A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 5
ALICE O 2 C++ coding conventions The documents Two documents: ▶ Coding style https: //atelesca. web. cern. ch/atelesca/naming_formatting/cppguide. xml Git: https: //git. cern. ch/web/alice-o 2 -cwg 2. git/shortlog/refs/heads/naming_formatting ▶ Naming ▶ Formatting ▶ Comments ▶ Coding guidelines https: //atelesca. web. cern. ch/atelesca/coding_guidelines/cppguide. xml Git: https: //git. cern. ch/web/alice-o 2 -cwg 2. git/shortlog/refs/heads/coding_guidelines A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 6
Coding style Goal A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 7
Coding style Naming and formatting A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 8
Coding style Highlights ▶ Naming ▶ Files ▶ Variables ▶ Functions ▶ Formatting ▶ Line length ▶ Classes A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 9
Code style Naming: General A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 10
Code style Naming: Files A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 11
Code style Naming: Variables A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 12
Code style Naming: Functions A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 13
Coding style Formatting: Line length and classes A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 14
Coding guidelines Goal A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 15
Coding guidelines A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 16
Coding guidelines Highlights ▶ Namespaces: ▶ General and std ▶ Scoping: ▶ Variables and Brace initialization ▶ Global variables ▶ Classes: ▶ Initialization ▶ Others: ▶ Exceptions A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 17
Coding guidelines Namespaces: general and std A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 18
Coding guidelines Namespaces: using declarations and directives A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 19
Coding guidelines Scoping A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 20
Coding guidelines A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 21
Coding guidelines Classes: Initialization A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 22
Coding guidelines A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 23
Coding guidelines Others A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 24
Feedback ▶ Received feedback/questions about: ▶ ▶ ▶ Templates STL usage Exceptions Threads Dependencies A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 25
Conclusion ▶ Lots of work and dedication ▶ This guide can be adapted following the usage of the C++ language that best suits the needs of the O 2 software. ▶ Your feedback will be considered for the next iterations of the document. A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 26
Questions ? A. Telesca | CWG 2 Tools, guidelines and procedures | 21/03/2014 27
- Adriana telesca
- Adriana telesca
- Contoh open coding axial coding selective coding
- Apa itu selective coding
- Meissnerjeva telesca
- Axial coding vs open coding
- Coding dna and non coding dna
- Dea rizky adriana
- Adriana yoshida
- Adriana davidescu
- Dnevnik književna vrsta
- Adriana pez
- Adriana aceves
- Usenet message adriana
- Adriana daniel
- Adriana linnebur
- Adriana korczak
- Adriana spassova
- Adriana botta
- Eksperyment lalka bobo
- Adriana bazgan
- Leucoeritroblastico
- Adriana elizabeth guaman
- Adriana linnebur
- Adriana bancila
- Adriana peterova
- Direito de preempção
- Caterina valcu