Learn: in:
» back to Search Results

Course rating of 0 Vendor rating of 4


The 5-day course focuses on C# program structure, language syntax, and implementation details with .NET Framework 4.0. This course describes the new enhancements in the C# 4.0 language by using Visual Studio 2010.


 
Course Outline
Summary

The 5-day course focuses on C# program structure, language syntax, and implementation details with .NET Framework 4.0. This course describes the new enhancements in the C# 4.0 language by using Visual Studio 2010.


In this course, lower-intermediate level programmers gain the knowledge and skills they need to develop C# applications for the Microsoft .NET Framework 4.0. The course highlights the structure of C# 4.0 programs, language syntax, and implementation details. This course is not mapped to any exam.

Audience Profile

This course is intended for experienced developers who already have programming experience in C, C++, Visual Basic, or Java and understand the concepts of object-oriented programming.

This course is not designed for new programmers; it is targeted at professional developers with at least 12 months experience of programming in an object-oriented environment.

At Course Completion

After completing this course, students will be able to:

  • Explain the purpose of the .NET Framework, and understand how to use C#  and Visual Studio 2010 to build .NET Framework applications.
  • Understand the syntax of basic C# programming constructs.
  • Create and call methods in a C# application.
  • Catch, handle and throw exceptions.
  • Perform basic file IO operations in a C# application.
  • Create and use new types (enumerations, classes, and structures), and understand the differences between reference types and value types.
  • Control the visibility and lifetime of members in a type.
  • Use inheritance to create new reference types.
  • Manage the lifetime of objects and control the use of resources.
  • Define properties and indexers to encapsulate data, and define operators for this data.
  • Decouple an operation from the method that implements an operation, and use these decoupled operations to handle asynchronous events.
  • Use collections to aggregate data, and use Generics to implement type-safe collection classes, structures, interfaces, and methods.
  • Implement custom collection classes that support enumeration.
  • Query in-memory data by using LINQ.
  • Integrate code written by using a dynamic language such as Ruby and Python, or technologies such as COM, into a C# application
Course Outline

Module 1: Introducing C# and the .NET Framework

This module explains the .NET Framework, and using C# and Visual Studio 2010 for building .NET Framework applications.

Lessons
  • Introduction to the .NET Framework
  • Creating Projects Within Visual Studio 2010
  • Writing a C# Application
  • Building a Graphical Application
  • Documenting an Application
  • Running and Debugging Applications by Using Visual Studio 2010
Lab : Introducing C# and the .NET Framework
  • Building a Simple Console Application
  • Building a WPF Application
  • Verifying the Application
  • Generating Documentation for an Application
After completing this module, students will be able to:
  • Explain the purpose of the .NET Framework.
  • Create Microsoft Visual C# projects by using Visual Studio 2010.
  • Explain the structure of a C# application.
  • Use the WPF Application template to build a simple graphical application.
  • Use XML comments to document an application.
  • Use the debugger to step through a  program.
Module 2: Using C# Programming Constructs

This module explains the syntax of basic C# programming constructs.

Lessons
  • Declaring Variables and Assigning Values
  • Using Expressions and Operators
  • Creating and Using Arrays
  • Using Decision Statements
  • Using Iteration Statements
Lab : Using C# Programming Constructs
  • Calculating Square Roots with Improved Accuracy
  • Converting Integer Numeric Data to Binary
  • Multiplying Matrices
After completing this module, students will be able to:
  • Declare variables and assign values.
  • Create expressions by using operators.
  • Create and use arrays.
  • Use decision statements.
  • Use iteration statements.
Module 3: Declaring and Calling Methods

This module explains how to create and call methods.

Lessons
  • Defining and Invoking Methods
  • Specifying Optional Parameters and Output Parameters
Lab : Declaring and Calling Methods
  • Calculating the Greatest Common Divisor of Two Integers by Using Euclid's Algorithm
  • Calculating the GCD of Three, Four, or Five Integers
  • Comparing the Efficiency of Two Algorithms
  • Displaying Results Graphically
  • Solving Simultaneous Equations (optional)
After completing this module, students will be able to:
  • Describe how to declare and call methods
  • Define and call methods that take optional parameters and output parameters
Module 4: Handling Exceptions

This module explains how to catch exceptions and handle them. Students will also learn how to throw exceptions.

Lessons
  • Handling Exceptions
  • Raising Exceptions
Lab : Handling Exceptions
  • Making a Method Fail-Safe
  • Detecting an Exceptional Condition
  • Checking for Numeric Overflow
After completing this module, students will be able to:
  • Describe how to catch and handle exceptions
  • Describe how to create and raise exceptions
Module 5: Reading and Writing Files

This module explains how to perform basic file I/O operations in a C# application.

Lessons
  • Accessing the File System
  • Reading and Writing Files by Using Streams
Lab : Reading and Writing Files
  • Building a Simple Editor
  • Making the Editor XML Aware
After completing this module, students will be able to:
  • Describe how to access the file system by using the classes that the .NET Framework provides.
  • Describe how to read and write files by using streams.
Module 6: Creating New Types

This module explains how to create and use new types (enumerations, classes, and structures)

Lessons
  • Creating and Using Enumerations
  • Creating and Using Classes
  • Creating and Using Structs
  • Comparing References to Values
Lab : Creating New Types
  • Using Enumerations to Specify Domains
  • Using a Struct to Model a Simple Type
  • Using a Class to Model a More Complex Type
  • Using a Nullable Struct
After completing this module, students will be able to:
  • Describe how to create and use enumerations.
  • Describe how to create and use classes.
  • Describe how to create and use structures.
  • Explain the differences between reference and value types.
Module 7: Encapsulating Data and Methods

This module explains how to control the visibility and lifetime of members in a type.

Lessons
  • Controlling Visibility of Type Members
  • Sharing Methods and Data
Lab : Encapsulating Data and Methods
  • Hiding Data Members
  • Using Static Members to Share Data
  • Implementing an Extension Method
After completing this module, students will be able to:
  • Describe how to control the visibility of type members.
  • Describe how to share methods and data.
Module 8: Inheriting From Classes and Implementing Interfaces

This module explains how to use inheritance to create new reference types

Lessons
  • Using Inheritance to Define New Reference Types
  • Defining and Implementing Interfaces
  • Defining Abstract Classes
Lab : Inheriting From Classes and Implementing Interfaces
  • Defining an Interface
  • Implementing an Interface
  • Creating an Abstract Class
After completing this module, students will be able to:
  • Use inheritance to define new reference types.
  • Define and implement interfaces.
  • Define abstract classes.
Module 9: Managing the Lifetime of Objects and Controlling Resources

This module explains how to manage the lifetime of objects and control the use of resources.

Lessons
  • Introduction to Garbage Collection
  • Managing Resources
Lab : Managing the Lifetime of Objects and Controlling Resources
  • Implementing the IDisposable Interface
  • Managing Resources Used By an Object
After completing this module, students will be able to:
  • Describe how garbage collection works in the .NET Framework.
  • Manage resources effectively in an application.
Module 10: Encapsulating Data and Defining Overloaded Operators

This module explains how to create properties and indexers to encapsulate data, and how to define operators for this data.

Lessons
  • Creating and Using Properties
  • Creating and Using Indexers
  • Overloading Operators
Lab : Creating and Using Properties
  • Defining Properties in an Interface
  • Implementing Properties in a Class
  • Using Properties Exposed By a Class
Lab : Creating and Using Indexers
  • Implementing an Indexer to Access Bits in a Control Register
  • Using an Indexer Exposed by a Class
Lab : Overloading Operators
  • Defining the Matrix and MatrixNotCompatible Types
  • Implementing Operators for the Matrix Type
  • Testing the Operators for the Matrix Type
After completing this module, students will be able to:
  • Explain how properties work and use them to encapsulate data.
  • Describe how to use indexers to access data through an array-like syntax.
  • Describe how to use operator overloading to define operators for your own types.
Module 11: Decoupling Methods and Handling Events

This module explains how to decouple an operation from the method that implements an operation, and how to use these decoupled methods to handle asynchronous events.

Lessons
  • Declaring and Using Delegates
  • Using Lambda Expressions
  • Handling Events
Lab : Decoupling Methods and Handling Events
  • Raising and Handling Events
  • Using Lambda Expressions to Specify Code
After completing this module, students will be able to:
  • Describe the purpose of delegates, and explain how to use a delegate to decouple an operation from the implementing method.
  • Explain the purpose of lambda expressions, and describe how to use a lambda expression to define an anonymous method.
  • Explain the purpose of events, and describe how to use events to report that something significant has happened in a type that other parts of the application need to be aware of.
Module 12: Using Collections and Building Generic Types

This module introduces collections, and describes how to use Generics to implement type-safe collection classes, structures, interfaces, and methods.

Lessons
  • Using Collections
  • Creating and Using Generic Types
  • Defining Generic Interfaces and Understanding Variance
  • Using Generic Methods and Delegates
Lab : Using Collections
  • Optimizing a Method by Caching Data
Lab : Building Generic Types
  • Defining a Generic Interface
  • Implementing a Generic Interface
  • Implementing a Test Harness for the BinaryTree Project
  • Implementing a Generic Method
After completing this module, students will be able to:
  • Use collection classes.
  • Define and use generic types.
  • Define generic interfaces and explain the concepts of covariance and contravariance.
  • Define and use generic methods and delegates.
Module 13: Building and Enumerating Custom Collection Classes

This module explains how to implement custom collection classes that support enumeration.

Lessons
  • Implementing a Custom Collection Class
  • Adding an Enumerator to a Custom Collection Class
Lab : Building and Enumerating Custom Collection Classes
  • Implementing the IList TItem Interface
  • Implementing an Enumerator by Writing Code
  • Implementing an Enumerator by Using an Iterator
After completing this module, students will be able to:
  • Implement a custom collection class.
  • Define an enumerator for a custom collection class.
Module 14: Using LINQ to Query Data

This module explains how to query in-memory data by using LINQ.

Lessons
  • Using the LINQ Extension Methods and Query Operators
  • Building Dynamic LINQ Queries and Expressions
Lab : Using LINQ to Query Data
  • Using the LINQ Query Operators
  • Building Dynamic LINQ Queries
After completing this module, students will be able to:
  • Describe how to use the LINQ extension methods and query operators.
  • Describe how to build dynamic LINQ queries and expressions.
Module 15: Integrating Visual C# Code with Dynamic Languages and COM Components

This module explains how to integrate code written by using a dynamic language such as Ruby and Python, and technologies such as COM, into a C# application

Lessons
  • Integrating C# Code with Ruby and Python
  • Accessing COM Components from C#
Lab : Integrating C# Code with Dynamic Languages and COM Components
  • Integrating Code Written by Using a Dynamic Language into a C# Application
  • Using a COM Component from Visual C# Application
After completing this module, students will be able to:
  • Integrate Ruby and Python code into a Visual C# application.
  • Invoke COM components and services from a C# application.

Prerequisites & Certificates
Pre-Requisites

Before attending this course, students must have: - At least 12 months experience working with an Object Oriented language - Have C++ or Java knowledge: - Creating Classes - Inheritance and Abstraction - Polymorphism - Interfaces - Exceptions - Knowledge of the Visual Studio IDE

Certificates offered

Certificate of Completion


Cancellation Policy
10 business day cancellation policy. if the course is confirmed and the student cancels within 10 days of the course, then they get charged and apply a credit for future courses. If they cancel outside of 10 business days, then there are no charges at all.
Map & Reviews
CTE Solutions
[ View Provider's Profile ]

Reviews
 

This course has not yet been rated by one of our members.

If you have taken a course through this vendor please log into your account and leave feedback for this vendor. You will be helping ensure our members get directed to the best training facilities.

Here are some reviews of the training vendor.
I realize that we are constantly dealing with technology, but I still think for a registration fee of almost $3,000, that a hardcover book should be included. I know that the option to print the book on a one-time basis exists.
Reviewed by 2016
no
Reviewed by 2016
The instructor was very knowledgeable and answered all questions. Jarod did an excellent job presenting.
Reviewed by 2015
The room was cold. I had to sit next to the space heater. It would be good to tell future patrons to dress warmly AHEAD of time. No suprises.
Reviewed by 2015
He was great and offered his contact info for further questions.
Reviewed by 2015
Howard was a fantastic instructor and the course was exactly what I required.
Reviewed by 2014
The trainer was excellent - the course exceeded my expectations.
Reviewed by 2014
This course provides an excellent overview and a bit of practice on the various functions of SharePoint 2013. I was disappointed at the number of exceedingly long breaks given after each module. I would have preferred less break time and more content to the course. Having never taken a SharePoint course with another provider, I don't know if this is the norm with all providers of just this one in particular.
Reviewed by 2014
I ranked the "Use of Technology" low because for Users who were remote the VM's that were setup were a little wonky. Could be very slow at times and then sometimes they needed to be refreshed to work properly with the lab. In some instances we couldn't follow along as replication would not occur fast enough and we would have our lab cut short (for us remote Users).
Reviewed by 2014
The instructor was good at remembering to acknowledge the online students even though he was facing a classroom of students also.
Reviewed by 2014
Insructor was not so good with the live examples. Also the handouts was not so useful
Reviewed by 2013
The trainer was excellent, very knowledgeable and had a lot of valuable experience to share. The problem was that there were way too many workshops that took too long and interfered with getting the maximum benefit from the instructor and the course.
Reviewed by 2013
This was quite informative. It was a great opportunity to have ‘real life’ discussions with certified PMs. The instructor had excellent examples and was able to share his PM experiences with us with concrete examples. In addition, this was a great opportunity to network with private sector/public sector PMs and develop a better appreciation of PM on both sides of the fence. Cheers, CL
Reviewed by 2013
no
Reviewed by 2013
I did not like the video format
Reviewed by 2013
As a remote attendee, it appeared the instructor paid attention to the "Attendee" and "Chat" windows only a few times throughout the day, so I was not confident that he would see if I sent a message or raised my hand during the course.
Reviewed by 2013
The chairs were not very comfortable and the material contained spelling and grammatical error (a few but still)as well as repetition of words.
Reviewed by 2013
Was a bit slow the last 1/2 day. Of course, for some, this was the last of a 4 day course (not just 2 days).
Reviewed by 2013
I really enjoyed the course and I learned a lot. The pace was excellent.
Reviewed by 2013
good!
Reviewed by 2013
The room was excellent on its own - less distraction and no noise around you. There was no direction to the room when I walked in and therefore was not sure if I was heading in the right direction. We were not provided with the direction that there was coffee and fridge on the 3rd floor, and the bathroom floor was dirty.
Reviewed by 2012
This course was great, very informative, had Lionel as instructor and he was also very good.
Reviewed by 2012
Instructor was eager to assist but lacked subject matter expertise. Course time management was very poor. Content provided could have been delivered effectively in a one day course.
Reviewed by 2012
Good Course, good trainer. All questions addressed equally and in a timely professional manner.
Reviewed by 2011
The course content was interesting; however, the instructor didn't have enough knowledge about Microsoft Sharepoint 2010 Development and wasn't able to answer questions without google search. In the future CTE needs to make sure the instructors have real on-hands experience and are highly trained in the technologies they are supposed be teaching.
Reviewed by 2011
need-to-train-a-group-banner

This course currently does not have any dates scheduled. Please call 1-877-313-8881 to enquire about future dates or scheduling a private, in house course for your team.

This page has been viewed 4972 times.