| |
objectives
- be able to write well-decoupled Object
Oriented (OO) C++ code
- know how to design C++ software that it is easy
to maintain and extend
- follow a clear development method geared towards
OO language development
- create C++ objects that are flexible enough
to belong in reusable libraries
overview
Most C++ courses teach you the features and syntax
of the language. This one tells you how to design
and develop realistic OO applications in C++. You
learn all the good techniques of OO programming;
as well as how to implement these objects in C++.
The course is extremely practical, developed
and taught by consultants with many years' experience
in OO design. When taught at your site, this modular
course can be adapted to your situation and requirements.
Included in the course are numerous examples and
exercises, and comes with a reference text. After
the course, we are able to offer reviews and mentoring
to guide you to make best use of the methods.
The course is suitable for anyone. For onsite training
of development teams with experience of OO design
and development in another language, such as Java,
the course can be slimmed down. The course
is presented by one of our senior consultants,
each of whom has at least ten years' experience
in object oriented software development, and at
least three years' experience as a trainer and
consultant in a diverse range of application areas.
Ideally this training should be followed up some
weeks later, by the course: advanced
C++.
content
|
1.
Introduction to C++
- origins of C++
- development of a sample program
- testing and debugging
- interactive and batch mode
2. Introduction to objects
- objects in the world and in software
- encapsulation
- pluggability and extensibility
- object analysis and design
3. C++ basics
- blocks and declarations
- variables and data types
- statements and expressions
- functions
- parameter types and passing
- arrays
and structs
- overloading
- I/O streams
4. Classes
- classes and member functions
- private and public parts
- constructors.
- overloading operators
5. Programming with objects
- objects, fields, and references
- encapsulation
- virtual functions and polymorphism
- class diagrams
- messages
- arrays and collections
- inheritance
- decoupling
|
6.
Models and code
- choosing classes and links
- use-cases
- detail and high-level
- basic design sequence
- business models, scenarios
- collaborations
- decoupling
- associations and visibilities
- using patterns
7. Pluggable design
- designing collaborations
- contracts
- defining interfaces and goals
- abstract frameworks
- generics and delegation
- observers
- modelling component interfaces
8. Memory management
- pointers
- dynamic storage allocation
9. User interface
- the user interface
- picture components
- events
and actions
- designing a user interface
- storyboards
- use cases
- control objects
10. The development process
- short cycle development
- low-risk paths
- basic design sequence
- re-engineering
- reuse and component-based design
- process patterns
- deliverables and pragmatics
|
|
Please
note, when taught at your site, this
course is customizable. Modules
can be adapted, removed, added from
other courses, or even created.
|
|
timings
Day 1
1. Introduction to C++
2. Introduction to objects
Day 2
3. C++ basics
4. Classes
Day 3
5. Programming with objects
6. Models and code
Day 4
7. Pluggable design
8. Memory management
Day 5
9. User interface
10. The development process
To book a public or onsite course, please
contact Clive Menhinick on +44 (0)161 225
3240, or email: clive@trireme.com.
Alternatively, use the booking form.
©
TriReme International Limited 2001-2006.
All rights reserved.
|