Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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.

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 reading

This 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