Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gjbex/defensive_programming_and_debugging
This is material to complement the FutureLearn MOOC on "Defensive programming and debugging", as well as for training purposes.
https://github.com/gjbex/defensive_programming_and_debugging
bash best-practices c cpp debugging fortran mpi openmp parallel-programming python training unit-testing
Last synced: 2 months ago
JSON representation
This is material to complement the FutureLearn MOOC on "Defensive programming and debugging", as well as for training purposes.
- Host: GitHub
- URL: https://github.com/gjbex/defensive_programming_and_debugging
- Owner: gjbex
- License: cc-by-4.0
- Created: 2018-12-26T10:29:03.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-02T14:24:36.000Z (9 months ago)
- Last Synced: 2024-05-03T16:20:15.453Z (9 months ago)
- Topics: bash, best-practices, c, cpp, debugging, fortran, mpi, openmp, parallel-programming, python, training, unit-testing
- Language: Fortran
- Homepage: https://gjbex.github.io/Defensive_programming_and_debugging/
- Size: 9.07 MB
- Stars: 5
- Watchers: 4
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Defensive programming and debugging.
The text can be conveniently read on the
[Github pages site](https://gjbex.github.io/DPD-online-book/)
for this repository. The material complements that of the FutureLearn MOOC
on ["Defensive programming and debugging"](https://www.futurelearn.com/courses/defensive-programming-and-debugging).This is an online resource for defensive programming and debugging. You will
find material on
* coding best practices
* error handling
* defensive programming
* documenting your code
* unit and functional testing
* debuggers (gdb, valgrind)
* taxonomy of bugs
* references and further readingThis is mainly aimed at scientific and high performance computing, so examples
are given for C, C++ and Fortran. However, the principles are very similar for
other programming languages.## Source code
Source code illustrating various kinds of bugs and the use of tools can be found in
the [source code directory](source_code/).## Contributions
This is work in progress, and you are welcome to [contribute](CONTRIBUTING.md). The material is
release under the [CC BY 4.0 license](LICENSE).## Acknowledgments
Parts of this material was developed for a MOOC (Massive Open Online Course)
developed for PRACE, the European supercomputing organization.## Authors
* Geert Jan Bex ([email protected])
* Mag Selwa
* Ingrid Barcena Roig## Contributors
* Damien Francois: fixing typos