San Francisco, California
London, United Kingdom
In this FREE introductory session, we will survey problems associated with very large scale C++ development, and the cohesive techniques we have found to address those problems culminating in a proven component-based methodology, refined through practical experience at Bloomberg. The real-world application of this methodology – including three levels of aggregation, acyclic dependencies, nominal cohesion, fine-grained factoring, class categories, narrow contracts, and thorough component-level testing – will be demonstrated using the recently released open-source distribution of Bloomberg’s foundation libraries. After completing this session, attendees will be in an excellent position to selectively delve deeper into the various separate aspects of this comprehensive development methodology.
Additional topics we’ll touch on include:
- Hierarchical Reuse
- Sound Physical Design
- Components, Packages, and Package Groups
- Logical/Physical Synergy
- Value Semantics
- (Unique) Vocabulary Types
- Design by Contract (DbC)
- Defensive Programming
- Component-Level Test Drivers
- Peer Review
- Static Analysis Tools
- (Customizable) Defensive Checks
- Fully Factored Solutions
- Some familiarity with developing fairly large software systems.
- A good (but not necessarily expert) understand the C/C++ family of programming languages.
John Lakos – author of "Large Scale C++ Software Design" – serves at Bloomberg LP in New York City as a senior architect and mentor for C++ Software Development world-wide. He is also an active voting member of the C++ Standards Committee, Library Working Group. Previously, Dr. Lakos directed the design and development of infrastructure libraries for proprietary analytic financial applications at Bear Stearns. For 12 years prior, Dr. Lakos developed large frameworks and advanced ICCAD applications at Mentor Graphics, for which he holds multiple software patents. His academic credentials include a Ph.D. in Computer Science ('97) and a Sc.D. in Electrical Engineering ('89) from Columbia University. Dr. Lakos received his undergraduate degrees from MIT in Mathematics ('82) and Computer Science ('81). His next book, entitled "Large-Scale C++, Volume I: Process and Architecture", is anticipated in 2014.
Seating is limited to the first forty respondents.
This event will be videotaped. Attendees MUST sign a release in order to participate. If you would like to see a copy of the release before the event, contact the event organizer.