SOLID Designs in C++

Geared for experienced Java developers, SOLID Design in C++ is a lab-intensive hands-on Java programming course that dives into the aspects of software engineering that produce both great and failed software. Students will start off by exploring for design, the common smells, process and the SOLID principles. Best practices are emphasized throughout the course.

Retail Price: $2,195.00

Next Date: Request Date

Course Days: 3


Request a Date

Request Custom Course


Course Objectives

This “skills-centric” course is about 50% hands-on lab and 50% lecture, designed to train attendees in advanced development skills, coupling the most current, effective techniques with the soundest industry practices. Students will leave this course armed with the required skills to improve their C++ applications using sound coding techniques and best practices. 

Using C++ to demonstrate with extensive hands-on labs, this course teaches:

  • Design Goals - What are we trying to accomplish?
  • Design Smells - How to identify and objectively articulate bad design choices.
  • Test Driven Development and minimalistic design and implementation - Avoid overdesign and facilitate design changes.
  • Process - What are the best ways to proceed with software development and measure progress.
  • Single Responsibility Principle - Only one reason to change
  • Open/Close Principle - Open for business, closed for modification
  • Liskov's Substitution Principle - a subtype can do more and require less
  • Interface Segregation Principle - interfaces are for clients
  • Dependency Inversion Principle - don't call us, we'll call you!

Course Prerequisites

This is an intermediate level C++ development course for experienced C++ programmers.

Our Skills Academy Developer Tracks include a wide variety of follow-on courses and learning paths for leveraging C++ for next-level development, testing, security and more. Please see our C++ Developer Training Suite & Learning Paths list of courses, or inquire for recommendations based on your specific role and goals.


Course Agenda

 

Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most.

Introduction

  • Design
  • Design Goals
  • Process - Good, Bad, Ugly
  • Design Smells
  • Minimalistic Design and Test Driven Development
  • The Company Class
  • The Employee Class

Let's Get S.O.L.I.D.

  • Single Responsibility Principle
  • SRP Lab
  • Open/Close Principle
  • OCP Lab
  • OCP Lab - Refactoring Employee
  • OCP - Refactoring Company
  • Liskov's Substitution Principle
  • LSP Lab
  • Interface Segregation Principle
  • Interface Segregation Lab
  • Dependency Inversion Principle
  • DIP Lab


Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com


Request a Date