Synesis Software Training Courses

FastFormat, Beginner's (part 1 of 2)

FastFormat is the world's fastest, most robust and most flexible C++ formatting library. Incorporating it into your software systems will increase their reliability, and, depending on the application area, has the potential to significantly improve their performance.

This course is an example-based guide to getting started with FastFormat.

Level

Intermediate. Assumes prior experience of C++.

Style

Presentation, with tutorial activities.

Duration

1 day: lecture + tutorial work

Material Covered

  • Why C++ is hard: Robustness and performance
  • Hello, Fast World!
  • Formatting APIs
    • Replacement-based APIs
      • Streams (printf()-family)
      • Boost.Format
      • FastFormat.Format
    • Concatenation-based APIs
      • IOStreams
      • Loki.SafeFormat
      • FastFormat.Write
  • FastFormat Design Features
  • Using FastFormat
    • Downloading
    • Installing
    • Building
  • Arguments
    • Implicit
      • C-style strings
      • String classes
      • Exception classes
      • Integers
      • Floating-points
      • bool
      • Characters
      • Pointers
      • Extended types:
        • ACE types
        • ATL types
        • COM types
        • MFC types
        • UNIX types
        • Windows types
        • struct tm
        • struct in_addr
        • ... and more ...
    • Explicit (via inserters)
      • Integers
      • Floating-points
  • Sinks
    • std::string
    • other string types:
      • ACE's ACE_CString
      • ATL's CComBSTR
      • MFC's CString
    • std::ostream
    • FILE*
    • C-style strings
    • fixed character buffers
    • STLSoft's auto_buffer
    • speech
    • Windows' MessageBox
    • Windows' OutputDebugString
  • Bundles
    • .properties files
    • Windows resources
  • Controlling width:
    • left-alignment
    • right-alignment
    • centre-alignment
  • Testing approaches
  • Performance
  • Real-world examples
  • Tutorial exercises