Program (2mb PDF)

  Invited Speakers
  Research Papers
  Student Research Comp.
  Doctoral Symposium
  Educators' Symposium
  Wiki Symposium
  Dynamic Lang. Symp.
  Practitioner Reports
  Lightning Talks
  Instant Arts School Exp.
Other Events
Resort Map (364kb PDF)
Resort Map (JPG)



view, help

"STL Patterns: A Design Language of Generic Programming"




  > Tutorials > All Tutorials

 : Monday : Patterns and Pattern Languages : Programming Techniques : Monday Afternoon Tutorials (13:30 - 17:00)

STL Patterns: A Design Language of Generic Programming

Pacific Salon 5
Monday, 13:30, half day



Kevlin Henney, Curbralan Limited

Tutorial number: 31

Patterns offer an effective way of capturing idioms, allowing programmers a way of communicating and reasoning about their designs through a structured design vocabulary. However, many C++ programmers are trapped in a view of patterns that extends only as far as, or not much further than, the 23 eleven-year old Gang of Four patterns. Useful and seminal as these are, they do not provide the modern C++ developer with a sufficient vocabulary to communicate and reason about their designs.

This tutorial focuses on the generic programming concepts expressed in and around the Standard Template Library, communicating these as C++-specific patterns and connecting them together to form a language that describes the design and use of the STL, illustrating how generic programming is more than simply programming with templates.

Intermediate: This tutorial is targeted at C++ programmers with basic knowledge of patterns and some knowledge of the STL.

Kevlin Henney, Curbralan Limited:  Kevlin Henney is an independent consultant and trainer based in the UK. The focus of his work is in programming languages, OO, UML, agile development, patterns, and software architecture. At various times he has been a regular and irregular columnist for C/C++ Users Journal (online), Application Development Advisor (UK), JavaSpektrum (Germany), Java Report, and C++ Report. He is also on committees and advisory boards for various conferences, language standards, and other software-related organizations (always keeping in mind that "a committee is a cul-de-sac down which ideas are lured and then quietly strangled"...), and is a popular speaker at conferences in North America and Europe.