Put It in Action

  • Use assertions to do the following:

    • Both document and automatically validate your assumptions

    • Ensure that your software, although robust in production, is fragile during debugging

  • Create a debug build that

    • Is compiled with debug-friendly compiler options

    • Allows key subsystems to be replaced by debugging equivalents

    • Builds in control that will prove useful during diagnosis

  • Detect systemic problems, such as resource leaks and exception handling issues, preemptively.

Footnotes

[35]

If assertions are enabled, which we’ll get to soon.

[36]

See the Hypertext Transfer Protocol Hypertext Transfer Protocol -- HTTP/1.1 [FGMF99] specification for further details.

[37]

Of course, you wouldn’t write this code yourself given ...

Get Debug It! now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.