image
  • Explain how to use Visual Studio to create and run an application.
  • Describe the features and syntax of the C# programming language.
  • Define the monitoring needs of large-scale applications
  • Create and call methods, capture and manage exceptions.
  • Understand the .NET development platform and libraries.
  • Understand the .NET framework classes.
  • Create well-structured and easily-maintainable C# code.
  • Define and implement interfaces.
  • Create a class hierarchy using inheritance.
  • Understand object-oriented programming concepts.
  • Implement the fundamental architecture and core components of a desktop application.
  • Acquire a working knowledge of how to build a graphical UI using XAML.
  • Use file I/O and streams, and serialize/deserialize data in various formats.
  • Understand web communications and protocols.
  • Create an entity data model for database access.
  • Use Language-Integrated Query (LINQ).
  • Use asynchronous operations to create performant applications.
  • Add dynamic components and unmanaged libraries to a C# program.
  • Understand the use of generics and generic collections.
  • Retrieve metadata from types using .NET reflection.
Virtual Instructor-Led Training 5 days / 40 hours

Who should attend 55339 Programming in C# Course

This course is intended for experienced developers who already have programming experience in C, C++, JavaScript, Objective-C, Microsoft Visual Basic, or Java, and understand the concepts of object-oriented programming. This course is not designed for students who are new to programming; it is targeted at professional developers with at least one month of experience programming in an object-oriented environment. Those new to programming should consider course 55337 - Introduction to Programming. The 55337 course uses C# as the language to facilitate an introduction to programming generally, whereas this course focuses on the C# language itself, making it an excellent follow-on course. If you want to learn to take full advantage of the C# language, then this is the course for you.


Prerequisites for 55339 Programming in C# Course

Some limited experience using C# to complete basic programming tasks.

55339 Programming in C# Course Outline

  • Writing Applications in C# and .NET
  • Types of Data and Expressions
  • C# Language Constructs
  • Methods
  • Method Overloading
  • Exception Handling
  • Monitoring
  • Structs
  • Enums
  • Built-in Collections
  • Events
  • Creating Classes
  • Interfaces
  • Understanding Generics in C#
  • Hierarchies of Classes
  • Polymorphism
  • Extending Classes
  • File I/O
  • Serialization and Deserialization
  • Streams
  • Entity Framework
  • LINQ
  • Web Services
  • REST and OData
  • ASP.NET Core MVC
  • Using UI Frameworks
  • Data binding
  • Styling the UI
  • Multitasking
  • Asynchronous Calls
  • Dealing with Conflicts
  • Dynamic Objects
  • Managing Resources
  • Metadata
  • Attributes
  • Generating Code
  • Assemblies

Resources

FAQs on 55339 Programming in C#

This course is designed for experienced developers who already know C, C++, JavaScript, Objective-C, Visual Basic, or Java, and understand object-oriented programming concepts. It is intended for professionals with at least one month of experience programming in an object-oriented environment, not beginners.

Students should have some limited experience using C# to complete basic programming tasks, along with a solid understanding of object-oriented programming concepts from prior experience in another language.

This course is not designed for programming beginners. Those new to programming should instead take course 55337 – Introduction to Programming, which uses C# to teach general programming concepts before moving on to this more advanced, language-focused course.

The course covers C# syntax, classes, inheritance, collections, exception handling, file I/O, database access with Entity Framework and LINQ, web services, GUI development with XAML, asynchronous programming, and code reuse techniques like generics and attributes.

You will be able to build well-structured, maintainable C# applications, create desktop and web-connected apps, implement data access and serialization, design graphical interfaces, and use asynchronous operations to improve application performance.