|
The Graphics NetworkTraining and Development for Windows and the Web01285 713297 ♦ info@tgn.co.uk |
| Home | About | Training | Software | Website Design | Contact Us |
Developing Windows applications using C# for C++ programmers
This 4 day course covers the C# language and its use for Windows applications assuming prior experience of the C++ language. This outline covers C# and its use for Windows desktop applications using Windows Forms, but we offer alternative courses for web and WPF applications and several optional modules can be added to match your particular requirements.
The 4 day course costs £2360 in total for up to 6 students, plus VAT and the instructor's reasonable expenses. Each student beyond 6 would cost £25 for the additional course materials. If you are interested in this course, please contact us by email at enquiries@tgn.co.uk or by phone on +44 (0)1285 713297.
Course Outline:
Introducing C# and .Net | Layout and white space. Blocks, braces and semicolons. Classes, methods and the use of '.'. The Main method. Basic input and output. Compiling and running programs. |
Object Oriented Programming | Data types and nullable types. Value and reference types. Implicit types. Classes, objects and the use of 'new'. Encapsulation. The heap and the stack. Strings and StringBuilders. Collections, generics and concurrency. Arrays, jagged arrays and Indexers. Namespaces, 'using' and assemblies. Attributes. |
Inheritance | Inheritance and the use of 'virtual' and 'override'. Benefits of inheritance. Hiding and the other use of 'new'. Abstract classes. Constructors and initialization. Casting, 'as' and 'is'. |
Interfaces | The benefits of interfaces. Interfaces vs classes. Defining and implementing an interface. Common interfaces. Sorting and finding. |
Exception Handling | How exception handling works. try...catch and throw. Handling multiple exception types. try...finally. Deriving exception classes. |
Files, Streams and Networking | The. Net Stream architecture. Streams, Readers and Writers. Serialization and SOAP. The Socket and Tcp classes. Basic network communication. Clients and multithreaded servers. |
Windows Presentation Foundation | XAML and code-behind. Properties and event handling. Preview and bubbling events. Panels and layouts. Attached properties. Styles and scrolling. Menus, lists and selection. Complex content. Using mouse events. Data binding. Shapes and drawing. 2D vs 3D. |
Silverlight | What Silverlight is (and what it isn't). Silverlight site architecture. XAML. Containers, shapes and controls. Designing the user experience. Storyboards and animation. Rendering and transforms. Interaction and code-behind. Images, effects and projections. Exposing Silverlight to JavaScript. Binding. |
Databases and ADO.Net | Connections, commands and readers. DataSets and adapters. Typed DataSets. DataSource controls. Data-aware controls and grids. Stored procedures and transactions. Designing and implementing multi-tier applications. |
LINQ and Entity Framework | How LINQ works. Implicitly-typed variables and Lambda expressions. The LINQ syntax. Using LINQ with collections, databases and XML. The ADO.Net Entity Framework. Using LINQ with entities. Parallel LINQ (PLINQ). |
Advanced Language Features | Optional and named parameters. Delegates. Anonymous methods and lambda expressions. Memory management and the workings of the garbage collector. Calling legacy and unmanaged code. Using unsafe code. The Marshal and IntPtr types. Operator overloading and indexers. |
The Dynamic Language Runtime | Supporting dynamic languages. The dynamic keyword. Comparing dynamic and object. ExpandoObject. DynamicObject. Office support. |
Multitasking | Parallel execution. Parallel For and ForEach. Tasks, threads and the thread pool. Controlling and synchronizing tasks and threads. .Net 4 synchronization mechanisms. Monitors. Delegates and asynchronous method calls. Asynchronous methods in .Net. Using callbacks. Cross-thread calls and the user interface. |
XML | Introducing XML. XmlTextReader. Using the Document Object Model (DOM) and XMLDocument. XMLDataDocuments. Creating XML using XmlWriter. LINQ and the 'X' classes. |