-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Coding style new appendix #151
Draft
fschledorn
wants to merge
3
commits into
new_features_2025
Choose a base branch
from
coding_style_new_appendix
base: new_features_2025
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Added file fizzbuzz.cpp for the clean code appendix, purposefully written without clean code conventions. Additionally added fizzbuzz_pretty.cpp; Same program, but with indents, code conventions, comments etc.
Updated coding_style paragraph about indenting and tabs; updated fizzbuzz_pretty to include some more examples of coding practices described in coding_style
fschledorn
commented
Nov 25, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Xeldlie @Plebysnacc @calvalre
I have a few advanced suggestions what we could add:
- Add a section on file structure: Discuss how to organize code within files, including
#include
statements, function prototypes, andusing namespace std;
. - DRY: Don’t repeat yourself and how to properly use encapsulation in that context
- Introduce the concept of header files and header guards: Explain their purpose and how to use them correctly.
- Discuss
const
correctness: Explain the importance ofconst
for writing safe and reliable code. - Introduce linters and formatters: Explain how tools like
clang-format
can help enforce coding style and improve consistency. - Add "good vs. bad" code examples: Provide concrete examples to illustrate the benefits of good coding style.
- Create refactoring exercises: Give students hands-on practice in improving code style.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
@nick75g Thanks for the updates to the coding style appendix! I have a few comments:
new_features_2025
) directly. Could you use a PR for this? It's important for code review and helps keep our commit history clean and understandable. Plus, using PRs makes our compile workflow action run more smoothly!rebase
before making any more changes or merging the PR (see Fix compile workflow #155)..cpp
files into thefiles
directory where all.cpp
files are centrally managed and adjustcoding_style.tex
accordingly