C++ .NET Programming

Duration : 12 Weeks

Tutor : Dr Aras BSc, PhD

Price : £590


Course structure

INTRODUCTION TO .NET
The .NET architecture
· Common Language Runtime (CLR)
· The .NET Intermediate Language (IL)
· Managed and unmanaged C++
Visual Studio .NET
· Development environment features
· Debugging tools and strategies

C++ LANGUAGE EXTENSIONS
The managed environment
· Managed heap and garbage collection
· Reference types vs. value types
· .NET types and namespaces
Developing managed classes
· Defining __gc classes
· Implementing constructors
· Destructor and finalizer issues
· Overloading methods
· Providing data access via properties
Types, events and exceptions
· Managed pointer concepts
· Boxing and unboxing value types
· Event handling using delegates
· Responding to managed exceptions

APPLYING ADVANCED CLASS FEATURES
Managed class relationships
· .NET-compatible inheritance
· Class composition in managed C++
· Abstract and sealed classes
Interfaces and polymorphism
· Defining interfaces with __interface
· Exploiting dynamic behavior
Managed operator overloading
· Overloading__gc and value types
· Conversion operators

INCORPORATING THE .NET CLASS LIBRARIES
Employing utility classes
· Class library namespaces
· Manipulating text with StringBuilder
Working with collections
· System::Collections namespace
· Sorting and enumerating collections

CREATING WINDOWS FORMS
Establishing a user interface
· WinForms vs. MFC
· Designing forms with Visual Studio .NET
· Manipulating form properties
Working with controls
· Populating forms with controls
· Creating text and selection controls
· Organizing menus and menu items
· Responding to events
· ListBox
· StatusBar
· PictureBox
Implementing dialogs
· Built-in dialogs
· Custom dialogs and data exchange

INTEGRATING LEGACY C++ CODE
Mixing managed and unmanaged code
· Native types and classes
· Applying /clr and "It Just Works" (IJW)
· Supporting standard C++ features
· Pinning managed pointers with __pin
COM/ActiveX interoperability
· Accessing COM components
· Integrating ActiveX controls

DEVELOPING .NET COMPONENTS
Administering component assemblies
· Identifying assembly structures
· Building assemblies
· Shared vs. private assemblies
· Generating strong assembly names with digital signatures
· Deploying components in the global assembly cache (GAC)
Revealing component composition
· Predefined and custom attributes
· Accessing metadata using reflection
· Combining reflection and attributes

ACCESSING DATA WITH XML AND ADO.NET
XML data manipulation
· .NET facilities for XML processing
· Reading, writing and modifying XML
Processing relational data
· The ADO.NET object model
· Connecting to a database
· Creating and executing commands
· DataSets and DataAdapters

Course Duration

This course is taught for 75 hours on weekdays, weekend and evenings. The 40% of the time will be spent on theory classes and the rest 60% will be on the practical session.

Course Delivery Method

The course is delivered through instructor led theory classes and followed by practical sessions.