This course provides an intensive architectural overview of the Microsoft .NET Development environment and the Common Language Runtime (CLR) using C# as the language of choice. It focuses on understanding how to develop applications and reusable classes that take advantage of the features exposed through the CLR. Specifically it will introduce you to the object model of .NET and more generally to the .NET Framework including ADO.NET, and Windows Forms Programming. We can use either Visual Studio .NET 2008, or Visual Studio 2010.
Topics Covered In This Course
Introduction to .NET: Terms and Definitions (from a programmer???s viewpoint)
- Application Domain
- Assemblies
- Digital Signing
- Global Assembly Cache
- Namespaces and Modules
- User Defined Types: enums, structs, classes, interfaces and delegates
- Components of all types
Introduction to Types (Value Types vs Reference Types)
- Static vs Instance
- Constants, Fields and Methods (and nested types)
- Exploring Enums
- Structures vs Classes
- Special Methods
- Constructors
- Static Constructors
- Destructors
- Properties
- Indexers
- Operators (and Operator Overloading)
- Converters (as a special form of operator overloading)
- Managing Memory
- Static Region
- Stack
- Managed Heap
- Garbage Collection
- Controlling Program Execution
- Conditional constructs
- Looping constructs
- Debugging and Tracing constructs
- Working with Types
- Object
- Assignment
- Parameters
- Nullable Types
- Dynamic Types
Implementing Classes and Polymorphic Behavior in C#
- Virtual Functions
- Overriding vs Overloading
- Abstract Classes
- Sealed and New functions
- Casting and determining type
- Interfaces
- Explicit Implementation
System.Collections as an Example
- IEnumerable
- IEnumerator
- ICollection
- IList and IDictionary
- ArrayList and Hashtable
- Generics and the 2008 Collection Classes for Type Safe Collections
Delegates and Events
- Definition of Delegates
- Examples and Case Study
- Definition of Events
- Procedure for exposing Events
- Windows Forms as a case study of Events
- Events vs Virtual Functions
- Anonymous Methods and Lambda Functions
Debugging and Exception Processing
- Errors vs Exceptions
- Throwing Exceptions
- Catching Exceptions
- Finally clauses
- Interacting with the debugger
System.IO
- The stream class
- System.Text.Encoders and Decoders
- Readers and Writers
- BinaryReader/Writer
- TextReader/Writer
- System.File and System.Directory
- System.FileWatcher
Database (ADO.NET)
- Connected Model
- IDbConnection
- IDBCommand
- IDataRecord
- IDataReader
- Disconnected Model
- DataSet
- DataAdaptors
- Typed DataSets
- Using LINQ (Lambda Functions Revisited)
- Entity Framework (.Net 4.0)
Windows Forms
- Introduction and Basic control usage
- Visual Inheritance
- Creating Controls
- Data Binding
Deployment
- Private Assemblies
- Signing Assemblies
- Installing Assemblies into the GAC
- Versioning Assemblies
Security
- Code Access Security Demo
What You Can Expect
At the end of this course, the attendee will be able to:
- Describe Terms and Technologies in .NET including:
- Application Domains
- Assemblies
- Digital Signatures
- Global Assembly Cache
- Namespaces and Modules
- Types ??? Enumerations, Structures, Classes, Interfaces, and Delegates
- Meta Data and Attributes
- Describe basic features of C# like:
- Variables
- Managed Objects
- Flow Control Constructs
- Create efficient and reusable types in .NET using techniques such as:
- Static and Instance
- Constant and Read-only
- Fields and Properties
- Constructors and Finalizers
- Operators and Operator Overloading
- Implicit and Explicit Converters
- Indexers
- Ordinary, Virtual and Sealed Methods
- Effectively Manage resources using CLR features like:
- Garbage Collection
- Polymorphism and Casting
- Explicit Interfaces
- Describe usage patterns for basic .NET Framework namespaces and features:
- System.Collections
- System.IO
- System.Data (ADO.NET)
- System.Windows.Forms(Windows Forms)
Who Should Take This Course
The primary audience for this course is the Professional Developer who is trying to learn the Microsoft .NET programming environment. Secondary Audiences would include Testing, Support, and Help desk personnel who need a broad understanding of these technologies. Additional Audiences might include the Management of teams of such individuals.
Recommended Prerequisites
Attendees of this course should have familiarity with basic programming constructs and knowledge of a programming language such as COBOL, FORTRAN, Assembler, C, C++, Java, BASIC or similar work experience.
Attendees will have the best experience when all attendees are at a similar experience level and have a similar programming background. When a class is composed of differing levels of expertise, remedial instruction may be required both in class and in additional sessions before or after the regular sessions.
« Hide The Details
Every student attending a Verhoef Training class will receive
a certificate good for $100 toward their next public class taken
within a year.
You can also buy "Verhoef Vouchers" to get a discounted rate for a
single student in any of our public or web-based classes.
Contact your account manager or our sales office for details.