|
|
 |
|  |
|
|
|
More than 40 Chapters
More than 80 pages of review questions and exercises
|
Please Note
- This course is based on .NET Windows Forms development .
-
The course is approximately 5 days and is designed for people with little or no exposure to Delphi Prism
-
It can be scheduled as a 3 day course for experienced Delphi programmers
- If there are other topics you need covered don't hesitate to
ask
|
- What is Microsoft .NET
-
What is .NET
-
Why .NET
- .NET Framework Overall Design Goals
-
.NET and Java
-
What about existing software?
- Terminology
-
CLR: Common Language Runtime
-
CIL: Common Intermediate Language
-
CLS: Common Language Specification
-
CTS: Common Type System
-
Module
-
Assembly
-
Managed/unmanaged code
-
.NET Framework
- Delphi Prism in Visual Studio
- Compiling changes
- Background compile
- Variables
- What's new in VS2008
-
Overview of new features in Visual Studio 2008
- Visual Studio Overview
-
Visual Studio Editions
-
The language
-
The environment
-
Hints and Warnings
- Intellisense
- Code Snippets
- Visual Studio Configuration
-
Environment Options
-
Projects and Solutions
-
Editor Options
- Import/Export settings
- IDE Docking
- Win32 Delphi vs Delphi Prism
- Generics
- Strings
- ResourceString
- Procedure/Function keywords
- Constructors
- Destructors
- initialization/finalization
- Events
- Assignment operator
- Pointers and unsafe code
- Interface method renaming
- Member visibility
- Record initializers
- Miscellaneous
- Hello World
-
What is a project?
-
What is a project file?
-
An all in one project
-
Compiling
-
Better programming with classes and files
-
Working with classes and files
- Navigating open windows
- Delphi Prism Projects Settings
-
What a basic project contains
-
Identifying files to keep
-
Project options
- Forms, Controls and Properties
-
What is a form?
-
Components and controls
-
Placing controls on a form
- Smart tags
- Aligning controls on a form
-
Adding components to a form
-
Properties and events
- The Delphi Prism Language
About Delphi the Delphi Prism Language
-
Comments
-
Capitalization
-
Statements
-
Flow control and iteration statements
-
Operators and types
-
Enumerations
-
Boxing and unboxing
-
Type conversions
-
Namespace
- Compiler magic
- User interface elements
-
Application access features
-
Menus
-
Toolbars - Toolstrip
- Resources
-
Dialogs
- Classes, methods, parameters, variables
-
Class files
-
Methods
-
Value, reference, out and params parameters
-
Default Parameters
-
Static and instance methods
- Virtual, sealed, abstract, override
-
Static variables
-
Scope
-
Records
-
Type casting
- Class designer
- Object Oriented Programming
- Object Oriented Programming Principles
-
Abstraction
-
Encapsulation
-
Inheritance
-
Polymorphism
-
Classes and objects
-
Dephi Prism modifiers
- Delphi Prism Keywords
-
Constructors and destructors
-
Properties and Indexers
- Auto-implemented properties
- "using" statement
- Garbage collection
-
Garbage collection features
-
Other languages and garbage collection
-
Garbage collection and OS resources
-
Finalization queue
-
What causes Finalize to be called
- Implementing a dispose method
-
Garbage collection algorithm
-
Garbage collection commands
- Debugging Programs
-
Project Debug Options
-
Debugger Options
-
Debug Windows
- Edit and Continue
-
Debug shortcut keys
- Exception Handling
-
Protecting code from errors
-
Raising and re-raising exceptions
- Trapping exceptions
- Debug exception - edit and continue
-
Identifying classes of exception
-
Global exception handler
-
Resource protection
-
Defining your own exception classes
- Visual Inheritance
-
Form inheritance
-
Rules for base forms
- User interaction
-
Unexpected events
- Showing forms:
-
DialogResult
- Useful User Interface Controls
-
Tab Control
-
Property Grid
-
Picture Box
-
Month Calendar
- Web Browser
- XP Themes
- Core .NET Classes
-
StringBuilder vs String, StringCollection
-
CollectionBase
-
ArrayList
-
HashTable
-
SortedList
-
Queue and Stack Collection
-
Painting
-
XmlSerializer
- Generics
- Key utility classes
- Some Key Utility Classes
-
Path
-
Environment
-
Application
-
Screen
-
Other useful classes and namespaces
- Database access choices
-
Connection strings
-
The components
- Database access choices
-
ODBC, OleDB
-
OracleClient
-
SQLClient, SQLServerCe
- MS SQL Server with SQLClient
-
Establishing a connection
-
Retrieving data
- Enabling updates
- Creating a binding source
-
Filling a DataGridView
- Saving changes
- Putting it all together
-
Extracting specific fields
-
Building commands automatically
- Extending the DataGridView
-
Extending the DataGridView
-
Master-detail
-
Master-detail with parameterised queries
- Advanced database techniques
-
Data Binding – Formatting and Parsing
-
Navigating datasets
-
DataViews – Filtering and Sorting
-
Adding, Editing and Deleting rows
-
Executing a command
-
Executing queries
-
Transactions
- Binding non-DB data
- Simple data binding
- Generics data binding - List<>
- Generics data binding - BindingList<>
- Multi-threading
-
Threads
-
Multi-threaded applications
-
The Thread class
-
Creating threads
-
Thread priorities
-
Managing thread execution
-
Thread safety
- Dynamic component creation
-
Recap – what is a component
-
Why create them at run-time?
-
Creating run-time components
-
Linking to a click event
- Attributes
-
Introduction to attributes
-
Using attributes
-
Global attributes
-
Creating custom attributes
-
Retrieving attribute information
-
Conditional and Obsolete attributes
-
Developing components
- Fun Stuff
- Preprocessor directives
- $IFDEF / $ELSE / $ENDIF
- $DEFINE
- $UNDEF
- $IFNDEF
- $WARNING
- $ERROR
- $REGION
- $ENDREGION
- MDI Applications and splash screens
-
Defining the MDI container
-
Adding MDI Child forms
-
Closing child windows
-
MDI Window menu
-
Menu merging
-
Splash screens
- Blurring the boundaries
-
Calling unmanaged code from managed code
-
Calling managed code from unmanaged code
- Assemblies
-
An assembly is…
-
Creating assemblies
-
Assembly names
-
Assembly location
-
Single- and multi-file assemblies
-
Creating multi-file assemblies
-
Strongly named assemblies
-
Delayed assembly signing
-
The global assembly cache
-
Viewing assembly contents
- Adding help to an application
-
Help files
-
Help class
-
HelpNavigator enumeration
-
HelpProvider component
- Application Resources
-
Resources
-
Distribution alternatives
-
Using assemblies
-
Satellite assemblies
-
Resource fallback
-
Compiling satellite assemblies
-
Installing satellite assemblies in the GAC
-
Non-GAC satellite assemblies
-
Resources in the main assembly
-
Adding resources
-
Retrieving resources
- Singletons
- Why Singletons
- 1. A non-thread-safe example
- 2. A slow thread-safe example
- What’s the problem?
- 3. No locks – implicit instantiation
- 4. No locks and delayed instantiation
- What to use?
- Delegates
- What are delegates?
- A simple delegate
- Anonymous methods
- Event handler anonymous method
- Lambda Expressions
- Events
- Events – review
- Event type
- Event declaration
- Implicitly Typed Local Variables
- Introduction
- Examples
- LINQ Queries
- Partial Methods
- Definition
- Example
- Limitations
- Why?
|
|
|
 |
|  |
|
|
|
|