C# programming fundamentals
Your application requirements need to become clear, maintainable code. With C#, structure your development approach and connect technical decisions to expected functionality. Strengthen your ability to design, test and evolve applications independently.
- Duration
- 5 days 35 hours
- Code
- DEV-FC# Code
Presentation
C#, pronounced C sharp, is a highly flexible programming language for developing all kinds of applications. It is object-oriented and strongly typed. Similar to Java, it is easy to understand and learn.
Precompiled into Microsoft Intermediate Language (MSIL), it is generally interpreted on a virtual machine or compiled into native code at runtime. With garbage collection and Microsoft's .NET framework, it is a preferred language for developing Windows applications.
Our 5-day C# course introduces the foundations needed to program in C#. You will begin with syntax and object design in Visual Studio 19, then learn application development with .NET 5 through theory and practical exercises. Learning to code in C# helps you make the most of your investment in new skills.
Objectives
By the end of this C# fundamentals course, you will be able to:
- Explore and use the Visual Studio 2019 development environment.
- Understand C# syntax and its main features.
- Implement and call a method, and specify arguments.
- Understand C# concepts and basic structure types.
- Create classes and object models and integrate them into a C# structure.
- Develop and code your first C# program.
- Debug C# code with Visual Studio.
Program
Module 1: getting started with Visual Studio 2019 and C# syntax
- Introduction to Microsoft .NET Framework 4.5 and its components.
- Overview of the Visual Studio 2019 IDE and getting started.
- Using application templates and creating applications.
- Introduction to WinForms and XAML GUI frameworks.
- What is a universal application?
- Data types, operators and variables.
- Type conversions.
- Conditional statements, loops and arrays.
- Breakpoints and debugging.
Practical exercises:
- Develop calculation code for business applications.
Module 2: understanding and using C# methods
- Debugging: creation, calls, etc.
- Operator overloading: optional and reference parameters.
- Exception handling in C#.
- Diagnostic tools: tracing and profiling.
- Performance counters.
Practical exercises:
- Develop a business application incorporating exceptions and performance counters for statistical purposes.
Module 3: understanding C# structures and enumerations
- C# constructors and object initialisers.
- Adding properties and indexers.
- C# collections.
- Using lists and dictionaries.
- Managing and raising events.
- Using delegates to handle events.
- Code generation.
- Subscribing to events.
Practical exercises:
- Create a business class with the Factory Pattern.
- Create events in a parent class.
Module 4: C# class fundamentals
- Creating and using C# classes.
- Using constructors.
- Reference and value types.
- Static classes and static class members.
- Comparison interfaces: IComparable and IComparer.
- Generic C# classes.
- Lists and dictionaries of generic classes.
- Collections: ICollection<T>.
Practical exercises:
- Create a business object model from a class diagram.
Module 5: understanding the C# object model
- Inheritance and derived classes.
- Derived class extensions.
- Custom exceptions.
- Extension methods.
- Code refactoring.
Practical exercises:
- Refactor a business model by creating abstract classes and interfaces.
- Develop a WinForms graphical application from this object model.
Module 6: working with files in C#
- Using the File, Directory and Path classes.
- Basic serialisation and deserialisation.
- Binary, SOAP and JSON serialisation.
- Using streams to write binary and text data.
Practical exercises:
- Develop an application for restoring text data files and objects.
Audience
This course is intended for:
- IT professionals developing mobile, web, console or Windows applications.
Prerequisites
To attend this course in C# fundamentals, you should:
- Have basic knowledge of object-oriented programming, including its fundamental principles.
Teaching and assessment methods
- Initial skills assessment
- Training materials provided to participants
- Continuous assessment throughout the course
- End-of-course feedback questionnaire
- Combination of theory and practical application
- Attendance records
- Post-course follow-up evaluation
- Quiz / multiple-choice questions
- Practical exercises
Course highlights
Dates and sessions
Choose the date and delivery format that suit you.
No upcoming sessions are currently available.
Session alerts
Course content offered in partnership with Softeam Institute (in French).
fr
en