TTCN2155 - Intermediate C# and .Net Core - Patterns, Generics, Threading, Database, Entity Framework, UI & More

Developing Application in C# is a lab-intensive, hands-on exploration of core skills and techniques used for advanced level C# application development. Working in a hands-on programming environment urse is designed to take C# programmers to the next level with in-depth coverage of C# and .Net features for application development. In this course, the student will learn about robust programming concepts necessary to write and maintain quality applications. In addition, the student will be introduced to UI options as well as database connectivity using ADO.Net as well as and introduction to Entity Framework.

Working in a hands-on learning environment, guided by our expert team, attendees will learn to:

Design and implement classes that adhere to SOLID design principles
Understand common design patterns
Implement robust classes with properties, methods, delegates & events
Understand, use, and implement generics
Explore generics in the .Net Framework
Understand and use Language integrated Query (LiNQ)
Understand and use Lambda expressions
Build dynamic applications using reflection
Use internationalization to build world friendly applications
Build multithreaded applications
Understand the basics of database access

Student Testimonials

Instructor did a great job, from experience this subject can be a bit dry to teach but he was able to keep it very engaging and made it much easier to focus. Student
Excellent presentation skills, subject matter knowledge, and command of the environment. Student
Instructor was outstanding. Knowledgeable, presented well, and class timing was perfect. Student

Click here to print this page »


This is an intermediate level .Net / C# developer course, designed for experienced C# developers who work with .net currently to a foundation or basic level.
Take Before: Students should have development skills at least equivalent to the following course(s) or should have attended as a pre-requisite:
TTCN2100 C# .Net Programming Fundamentals – Level 1 or
TT20483 Programming in C# | Creating Apps in C# and .Net Core
Take After: Our core application development courses provide students with a solid foundation for continued learning based on role, goals, or their areas of specialty. Our object oriented, .Net developer learning paths offer a wide variety of follow-on courses such as:
TT8325N Secure Web Application Development in C# .Net
Next Level .Net Security / Secure Coding training
Agile, TDD / Test Driven Development in .Net training
.Net Web Services, REST & SOA training

Detailed Class Syllabus


Quick Review of C# Essentials
Review of C# Basic

Design Guidelines

Class Design guidelines
Exception Design guidelines
Common Design Patterns

Robust Classes



Generic Classes
Generic Functions
Survey of Generics in the .Net Library

Lambda Expressions & LINQ

Using lambdas to generate a delegate
Introduction to Language Integrated Query (LINQ) (Optional)

Reflection & Metadata

Reflections basics

Resources & Globalization

Resources & Globalization

Basics of Threading

Creating Threads
Coordinating threads
Overview of the task parallel library

Basics of Database connectivity

Connecting with ADO.Net
Executing basic SQL commands
RecordSet overview
Introduction to Entity Framework
Basic data context
Simple class/table mapping

Overview of User interfaces

Survey of options
Windows Forms
Windows Presentation Foundation(WPF)
Creating a simple XAML based user interface