The IEEE Boston Section Techsite

The On-line Boston Section IEEE Information Source

Course:  

C++ Classes and Templates

Lecturer:

Jeffrey Goldberg, Qualware Instructional Services

Date:

Tuesdays,  6:15 PM - 9:15 PM, May 8, 22, 29

Location:

Holiday Inn Select, 15 Middlesex Canal Park Road, Woburn, MA

TEXT:

Object-Oriented Programming in C++ (4th Edition) by Robert Lafore

Prerequisite:

“Introduction to C++” sister course or prior programming knowledge, ideally in C or Java, and exposure to some object programming would be helpful.

Class Description: 

By the use of lectures and demonstrations, this mini course will introduce you to what still remains as one of hottest languages around, the C++ programming language. Unlike C, this is a modern-featured, strongly-typed, object-oriented, events-driven, error-handling, language, that remains platform independent and capable of running efficiently in many diverse environments, thus directly challenging other languages, such as Java, in the marketplace.

Attendees will then learn the syntax and use of the C++ programming language, how to design and use data structures, classes, objects, overloaded operators and functions, inheritance, polymorphism and templates. The course introduces the modern day concepts of object oriented, event driven programming in an easy to understand way, comparing constructs in C++ with other programming languages when beneficial. Whenever possible, the instructor will illustrate the practical benefits and gotcha’s of using C++ for coding projects. Optional homework programming assignments will be available to those wishing to further their understanding by practice.

Targeted for:

Those programmers with some understanding of C, C++ or Java and Object Oriented Programming exposure wishing to enhance their level of understanding.  Attending the “Introduction to C++” sister course is recommended for those wishing to learn C++ from the ground up. Although the class will proceed at a fast pace, individuals who keep up with the reading assignments, or have some programming experience, will have no problem keeping up with the class.

The material in this course is appropriate for individuals wishing to learn how to write command line and console C++ applications. Although this course does not go into writing windows applications, the fundamental concepts covered in this course should make transitioning to a windows base application relatively straight forward.  The class is structured to be as interactive as possible by making use of live demonstrations that review and emphasize the concepts taught in the class and optional homework projects.

PRELIMINARY DETAILED AGENDA:

Class 1 - Object-Oriented Programming and Inheritance

Review C Classes, class member visibility, constructors, destructors;

Properties and methods, inheritance, extending classes, overloaded constructors and methods;

Passing Objects by value, by using references and pointers, static methods (functions), static data member, introduction to derived classes.

Class 2- Virtual, Abstract, Streams, Files, I/O and Dynamic Memory Allocation

Derived classes, references to base and derived class objects.

Constructors in base and derived classes, more on scope resolution operator. Virtual functions, Overriding functions, pure virtual (abstract) functions. Streams and Input/Output, file operations, formatting. 

Talk about security and protection model, dangers of pointers.

Dynamic memory allocation, new and delete operator, linked lists.

Class 3- Advanced Topics, Requests and Wrap-up

Review of base and derived classes, virtual functions and object casting.

Brief talk about friend classes and functions.

Event Handling and Exception Processing, including try and catch.

Using Templates, and time permitting, examples of using the Standard Template Library.

Handouts:

Copies of the course outline slides will be provided along with relevant handouts when appropriate.

Lecturer’s biography:

An honor graduate of Tufts University, Jeffrey M. Goldberg has served the  engineering and academic community in various roles from principle design engineer / project leader to senior consultant and educator at companies such as Hewlett Packard, Siemens, Picturetel, 3Com, IBM, NMS, and EMC. Mr. Goldberg is a long-time innovative user of UNIX and networked services. He currently provides IT solution consulting and delivers public seminars and on-site professional training classes, flexibly scheduled to avoid project disruption, in cutting-edge technologies and programming languages. Specialties include Perl and Shell Scripting, Linux/Solaris/UNIX System Administration, TCP/IP Networking, Web Technologies such as Visual Basic, Delphi, JavaScript, PHP Apache, C/C++, Java/JSP and SQL Database Access, Computer and Network Security. For more information, please visit http://www.qualware.com/training or contact Jeff Goldberg at 781-229-1530 x2.

copywrite 2006 Qualware Instructional Services and Jeff Goldberg.

Register for this course as well as the Introduction to C++ course and receive a discount. Call 781-245-5405 or email sec.boston@ieee.org the office for details.

Decision/Cancel Date for this course is Friday, April 27, 2007

Course Fee Schedule:

REGISTRATION RECEIVED BY
April 24, 2007

REGISTRATION RECEIVED AFTER
April 24, 2007

IEEE MEMBERS $350

IEEE MEMBERS $395

NON-MEMBERS $395

NON-MEMBERS $435

On-line Registration and Payment

This course is closed to online registration. Call the office, (781) 245-5405, if you are interested in registering.

Copyright © 2008 IEEE Boston Section. All rights reserved.
Maintained by R M Stelting

Updated Thursday August 16, 2007