Advanced C++ Programming for Unix and Linux
Course
Online
Price on request
Description
-
Type
Course
-
Methodology
Online
This course covers the mechanics of building complex Unix / Linux based applications in C++. It is a collection of examples and case studies that are important, yet do not seem to be dealt with elsewhere.
Reviews
Have you taken this course?
Subjects
- IT
- C++
- Unix
- Linux
- Programming
Course programme
An overview of C++ - the language, patterns and idioms
- Inheritance, Polymorphism and all that
- Function Objects
- Templates and the Standard Template Library
- Mixed C and C++ programming
- Key patterns - Singleton, Observer, Visitor, Composite
- Templates and the Standard Template Library
- Namespaces and scope
- The POSIX API and its variants
- Inter-process communication under Unix/Linux
- The Berkeley Sockets API
- POSIX Threads (p-threads)
- The Unix file system
- X windows
- Operating system resources as objects
- The create a resource, get a handle, manipulate the resource via system and library calls that take a handle as an argument API model
- Creating classes corresponding to operating system resources - that contain the handle as a member variable, and methods for manipulating the resource that invoke the underlying system and library calls
- Wrapping up Motif Widgets in C++ - a case study
- Managing a collection of child processes
- Devising two way communication with objects that contain a pair of pipes
- Creating shared memory objects with built in critical sections
- Implementing a Model-View-Controller pattern using Motif Widgets
- Designing and implementing a p-thread class
- Devising and implementing a thread local storage scheme
- Managing a pool of worker threads
- Inter-task communication mechanisms for use with p-threads
- Commonly occurring widgets - buttons, menus, dialogs, list boxes ...
- Layout managers
- Overview of Qt+
- Overview of Gtk+
- Deriving new widget classes
- Overview of CORBA
- MICO - Corba implementation
- ORBACUS - Corba implementation
- Implementing Client / Server applications in C++ and CORBA
- Serialisation - simple and complex
- Serialisation libraries
- Use of Smart pointers
- Persistence using relational databases
- Persistence using object relational databases
- Persistence using object oriented databases
- Object oriented perspective on TCP/IP
- Wrapping up the Sockets API in C++
- Building application services derived from a Socket class
- Network management with SNMP
- An overview of SNMP++
Advanced C++ Programming for Unix and Linux
Price on request