Programming in C# Outline
This course will cover the following content:
Module 1: Review of C# Syntax
-
Overview of Writing Applications using C#
-
Datatypes, Operators, and Expressions
-
C# Programming Language Constructs
-
Lab: Developing the Class Enrolment Application
Module 2: Creating Methods, Handling Exceptions, and Monitoring Applications
-
Creating and Invoking Methods
-
Creating Overloaded Methods and Using Optional and Output Parameters
-
Handling Exceptions
-
Monitoring Applications
-
Lab : Extending the Class Enrolment Application Functionality
Module 3: Developing the Code for a Graphical Application
-
Implementing Structs and Enums
-
Organizing Data into Collections
-
Handling Events
-
Lab : Writing the Code for the Grades Prototype Application
Module 4: Creating Classes and Implementing Type-safe Collections
-
Creating Classes
-
Defining and Implementing Interfaces
-
Implementing Type-safe Collections
-
Lab: Adding Data Validation and Type-safety to the Grades Application
Module 5: Creating a Class Hierarchy by Using Inheritance
-
Creating Class Hierarchies
-
Extending .NET Framework Classes
-
Creating Generic Types
-
Lab: Refactoring Common Functionality into the User Class
Module 6: Reading and Writing Local Data
-
Reading and Writing Files
-
Serializing and Deserializing Data
-
Performing I/O Using Streams
-
Lab: Generating the Grades Report
Module 7: Accessing a Database
-
Querying Data by Using LINQ
-
Updating Data by Using LINQ
-
Lab: Retrieving and Modifying Grade Data
Module 8: Accessing Remote Data
-
Accessing Data Across the Web
-
Accessing Data in the Cloud
-
Lab: Retrieving and Modifying Grade Data in the Cloud
Module 9: Designing the User Interface for a Graphical Application
Module 10: Improving Application Performance and Responsiveness
-
Performing Operations Asynchronously
-
Synchronizing Concurrent Access to Data
-
Lab: Improving the Responsiveness and Performance of the Application
Module 11: Integrating with Unmanaged Code
-
Creating and Using Dynamic Objects
-
Managing the Lifetime of Objects and Controlling Unmanaged Resources
-
Lab: Upgrading the Grades Report
Module 12: Creating Reusable Types and Assemblies
-
Examining Object Metadata
-
Creating and Using Custom Attributes
-
Generating Managed Code
-
Versioning, Signing and Deploying Assemblies
-
Lab: Specifying the Data to Include in the Grades Report
Module 13: Encrypting and Decrypting Data
-
Implementing Symmetric Encryption
-
Implementing Asymmetric Encryption
-
Lab: Encrypting and Decrypting Grades Reports