Description
This training course teaches developers the programming skills that are required for developers to create Windows applications using the Visual C# language. During their five days in the classroom, students review the basics of Visual C# program structure, language syntax, and implementation details, then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework 4.7.
Addressed to
- 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 object-oriented programming concepts. This course is not designed for students who are new to programming; It is intended for professional developers with at least one month of programming experience in an object-oriented environment.
Duration
35 hours
Modalities
- Face-to-face
- Virtual live through digital platforms
- on site
Related Courses
It includes
- 35 hours of training
- Trained instructors
- Participant manual in digital format
- Proof of participation

Temary
Lesson 1: Visual C# Syntax Review
- Write Application Overview Using Visual C#
- Data types, operators and expressions
- Constructs of the Visual C# programming language
Lab : Implementing Editing Functionality for the Student List
- Implementing insert functionality for student list
- Implementation of delete functionality for student list
- Viewing the age of a student
Lesson 2: Method Creation, Exception Handling, and Monitoring Applications
- Create and invoke methods
- Creating overloaded methods and using optional and output parameters
- exception handling
- monitoring applications
Laboratory: Extending the functionality of the class registration application
- Enrollment code refactoring
- Validation of student information
- Save changes to class list
Lesson 3: Visual C# Basic Types and Constructs
- Implementation of structures and enums
- Organization of data in collections
- event handling
Laboratory: Writing the code for the application of the prototype of qualifications
- Add Navigation Logic to the Grading Prototype App
- Creating data types to store user and grade information
- Viewing user information and rating
Lesson 4: Creating Classes and Implementing Type-Safe Collections
- creating classes
- Definition and implementation of interfaces
- Implementation of type-safe collections
Lab : Adding Data Validation and Type Safety to Your Application
- Implement teacher, student, and grade structures as classes
- Add data validation to the rating class
- Viewing students in name order
- Allow teachers to modify class data and grades
Lesson 5: Creating a Class Hierarchy Using Inheritance
- Create class hierarchies
- Extending .NET Framework classes
Lab : Refactoring Common Functionality in the User Class
- Refactoring common functionality in the user class
- Implementing password complexity using an abstract method
- Creating the custom exception ClassFullException
Lesson 6: Reading and writing local data
- Read and write files
- Serialize and deserialize data
- Performing I/O Using Streams
Lab: Grade Report Generation
- Serialize data for grade report as XML
- Grade Report Preview
- Keeping serialized grade data in a file
Lesson 7: Accessing a Database
- Creating and using entity data models
- Query data using LINQ
Lab: Grade Data Retrieval and Modification
- Creation of an entity data model from the database of the School of Fine Arts
- Updating student data and grades using the Entity Framework
- Extending the entity data model to validate data
Lesson 8: Remote Data Access
- Access data on the web
- Access data using OData connected services
Lab: Retrieving and Modifying Grade Data Remotely
- Creating a WCF data service for the SchoolGrades database
- Integration of the data service in the application
- Retrieval of student photographs via the web (time permitting)
Lesson 9: User Interface Design for a Graphical Application
- Use XAML to design a user interface
- Binding controls to data
Lab: Customizing Student Photos and App Design
- Customizing the Appearance of Student Photos
- Styling the login view
- StudentPhoto control animation (time permitting)
Lesson 10: Improving Application Performance and Responsiveness
- Multitasking Implementation
- Performing operations asynchronously
- Synchronize concurrent data access
Lab : Improving Responsiveness and Application Performance
- Ensuring the UI remains responsive when retrieving teacher data
- Provide visual feedback during long duration operations
Lesson 11: Integration with unmanaged code
- Creating and using dynamic objects
- Manage the lifetime of objects and control unmanaged resources
Lab : Grade Report Update
- Generation of the report of qualifications by means of Word
- Control the lifetime of Word objects by implementing the Dispose pattern
Lesson 12: Creating Reusable Types and Assemblies
- Examine object metadata
- Creating and using custom attributes
- Generating managed code
- Assembly versioning, signing, and deployment
Lab: Specifying the data to include in the report card
- Create and apply the IncludeInReport attribute
- Report Update
- Store the Grades.Utilities assembly centrally (time permitting)
Lesson 13: Data Encryption and Decryption
- Symmetric encryption implementation
- Asymmetric encryption implementation
Lab: Grade Report Encryption and Decryption
- Encrypt report card
- Encrypt report card