-
Notifications
You must be signed in to change notification settings - Fork 0
Rules
TheOneAndOnlyAk edited this page Oct 11, 2019
·
2 revisions
- Be respectful and friendly
- Complete assignments on time and attend meetings consistently
- Communicate any questions and concerns with leads
- Have fun!
- Use project board for outstanding tasks. If a new assignment comes up, add it to the project board under the correct category. All assignments, along with a timeline and priority, should appear on the board.
- Use issues page in order to track progress. All problems currently being worked on should have their own thread.
- Releases and tags should be used effectively. All working completed builds should have their own release (Deployable to Robot/ Test-Team), as well as any builds after substantial progress has been made.
- Request code merge to the correct branch
- When merging, gain the approval of at least one other software member before doing so. The code will then be sent to the lead for review automatically.
- When pulling code, pull from tagged or released versions, as to not be working with a version behind the rest of the team.
- All header files should begin with the header guard
#pragma once - Short functions (< 5 lines) should be marked as inline
- Includes should have a newline between different sets of similar files
- The
namespace ohs623must be used around any LIBRARY CODE and thenamespace frc2020must be used around any code for THIS YEAR - Local variables must be declared and assigned in the same line
- All primitive types should be passed to functions by value, everything else should be passed by reference
- Use a struct only for passive objects that carry data; everything else should be made a class
- One pointer type is allowed to be declared per line
- Use
0for integers,0.0for reals,nullptrfor pointers, and'\0'for chars - Lower camel case is to be used when naming variables
- Upper camel case is to be used when naming classes, files, methods, and functions
- The class name should match with the file name
- Macros and const variables should be uppercase with underscores
- use
//for comments <= 2 lines in series and/*for anything longer - Indentation is only to be done with tabs with the exception of lining up numbers and such across multiple lines
- Opening curly brackets must be placed on the same line, with else and else if clauses on the same line as their curly brackets. However, starting and ending a pair of curly brackets on the same line is allowed as long as nothing is inside
- Member variables in classes should include the prefix m_ and always be private. This is not necessary while using structs
- In classes, a new visibility modifier (enter) is to be used to distinguish between methods and instance variables.
- Grouping of code will go as follows: Also the order of groupings of things inside classes will go as follows:
- Static variables (should be avoided)
- Static methods
- Public instance variables (should be not used in most cases (use getters and setters))
- Public methods
- Private methods
- Private instance variables
- Check with a lead if you are confused or need an example