CONTACT US   |    |  SIGNIN
 
Call 858-622-1201
to speak to a Training Specialist
Tuesday, October 07, 2008
 
 
Upcoming Classes

There are currently no DL2 classes scheduled. Please call for the next scheduled class.

If you have a group of four or more students, we can schedule this class for you.

 
Course Info Minimize

DL2 - Delphi Advanced Topics

Categories Delphi Training, Programming Training, Database Training
Duration 3 days (21 hours)
Pre-requisites DL1 - Delphi Core Concepts or equivalent experience.
Courseware DL2-BS-01 (276 pages)
Price $1185
Notes

This Delphi training class is a continuation of the Delphi Core Concepts course, and is designed for programmers who need more in-depth coverage of common Windows and Object Pascal development issues. The course starts with an in-depth discussion of advanced Object Pascal, then covers specific application development issues commonly encountered in the Windows environment, such as interfacing with the Windows API, Graphics programming, DLLs, OLE and DDE, Building Components, Events and Messages, and Exception Handling.

"It's very worthwhile. [The instructor was] very good. Knowledgeable and friendly.." -- Eric P. from San Diego, CA

"Go Ahead - this Class is worth every penny, and will quickly give you pay-back. [The instructor] was very good - and as always - prepared.." -- Peter Tang T. from Norway

"The instructor communicated material well and was very helpful and available to answer all questions. Ted (Blue) definitely knows Delphi......" -- Teara Le B. from Santa Ana, CA

"To be honest, I learned the basis of how to program a windows application. By that I mean, How an application actually works. [The instructor is] obviously a master on the discussed topics.." -- Heath I. from San Diego, CA

"I solidified my understanding of the Object Pascal and gained an understanding of the event/message handling and graphics systems. I will definitely be putting this to use as soon as I get back to work. Excellent--Ted's knowledge level is obviously high, pace was good and he has a flare for explaining things concisely and in terms that everyone can understand. I recommend it highly.." -- Erik O. from San Diego, CA


Chapter 1 - Advanced Object Pascal
      Characters
      Strings
            ShortString
            PChar
            AnsiStrings
                  AnsiString Memory Allocation
                  AnsiString Routines
                  C-String Compatibility
            String Indexing
            Concatenating Strings
      Currency
      Variants
            Variant Operators
            Variant Type Functions
      Enumerated Types
            Storing Enumerated Values
      Sets
            Sets and Enumerations
            Include and Exclude
            The IN Operator
            Set Operators and Functions
            Working with Sets and Enums
      Bitwise Operations
      Arrays
            Declaring Arrays
            Array Ranges
            Multi-Dimensional Arrays
            Dynamic Arrays
            Variant Arrays
                  Checking for Variant Arrays
                  Locking and Unlocking Variant Arrays
            Open Array Construction
            Open Array Parameters
            Type-Safe Open Arrays
            Working with Array of Const
      Records
            Variant Records
      Pointers
            Declaring Pointer Variables
            Initializing Pointer Variables
            Accessing Pointer Variables
            Typed Pointers
            Generic (Untyped) Pointers
            Object References
      Procedural Types
            Global Procedure Pointers
                  Function Pointers
            Working with Procedural Types
      Method Pointers
            Working with Method Pointers
Chapter 2 - OOP in Delphi
      Runtime Type Information (RTTI)
            Determining Object Types
            Comparing Object References
            Typecasting Objects
            Typecasting and Exception Handling
      RTTI in TObject
      Objects
            Layout of a Record Instance
            Layout of an Object Instance
            Layout of an Object with Methods
            The Self Parameter
      Creating Objects
            Explicitly Created Objects
            Implicitly Created Objects
            Object References
                  Object References as Constant Parameters
            Object Scoping
            Object Lifetime
      Classes
            The Class Keyword
            TObject - A Common Ancestor
            Scoping Directives
            Unit Scope for Classes
            Forward Class Declarations
            Adding Variables to Classes
                  Naming Conventions for Object Variables
      Properties
            Access Methods
            Read Methods
            Write Methods
      Rescoping of Properties
      Overriding Properties
      Array Properties
      Default Array Properties
      Property Storage Directives
            The Stored Directive
      Form Properties
            Properties in Components
      Methods
      Class Methods
            Calling Class Methods
      Constructors and Destructors
            Constructors
            Calling the Inherited Constructor
            Destructors
      Message Handling Methods
      Virtual and Abstract Methods
      Events
            Event Properties
            Event Notification Types
            Creating an Event Notification Type
            Triggering Events
            Dispatch Methods
Chapter 3 - Memory Management
      Creating and Destroying Forms
            Release
      Creating and Destroying Objects
      Dynamic Memory Allocation
      Create, Destroy and Free
      New and Dispose
      GetMem and FreeMem
      16-bit Direct Memory Access
      16-bit Direct Port Access
      32-bit Direct Port and Memory Access
Chapter 4 - Exception Handling
      try..except
      Exception Nesting
      Scope of Exception Handling
      Raising Exceptions
      Exception Objects
            Handling Multiple Exception Types
            Handling Unhandled Exception Types
      Exception Classes
            Handling RTL Exceptions
            Handling Component Exceptions
      Creating Silent Exceptions
      Defining Custom Exceptions
            Declaring an Exception Type
            Raising a Custom Exception
      Tracing Exceptions with the Debugger
      Resource Protection
            Protecting File I/O Operations
            Protecting Print Jobs
            Protecting Allocated Memory
            Resetting State
Chapter 5 - StringLists
      TStringList and TStrings
            TStrings Methods
      Storing Objects in StringLists
            Working with Objects in StringLists
      The Names and Values Properties
            Working with StringLists
      Lists of Objects
Chapter 6 - Input and Output
      Input/Output Systems in Delphi
      File Layouts
            Files and Devices
      I/O Routines
      File Types
            Text Files
            Typed Files
            Untyped Files
      File I/O Errors and IOResult
      Writing to the Printer
            Draft Mode Printing
      Streams
            THandleStream
            TFileStream
            TMemoryStream
            TResourceStream
            TBlobStream
Chapter 7 - Events and Messages
      Events
            Event Properties and Event Handlers
            Event Notification Types
      Messages
            Message Records
            Message Constant Identifiers
      Message Handling
            Delphi Message Records
            Message Handlers
            Working with Message Handlers
      Message Contracts
      Application Messages
      Sending Messages
            The Perform Method
            SendMessage and PostMessage
      Other Message Types
            Notification Messages
            VCL Messages
            User Defined Messages
      Other Ways to Send Messages
            Sending Messages Between Applications
            Broadcasting Messages
Chapter 8 - Graphics
      The Graphical Coordinate System
            Client vs. Screen Coordinates
      The TShape Component
      Device Contexts
      The TCanvas Component
            Working with TCanvas
      Drawing Lines
      RGB Color Manipulation
            Working with RGB Colors
      The Pixels Array
      The OnPaint Event
            Working with the OnPaint Event
      Summary
Chapter 9 - MDI and SDI Applications
      MDI Applications
      MDI Operations
      Creating an MDI Application
            Closing MDI Child Windows
            Managing MDI Child Windows
      Merging Menus
            Working with Menu Merging
      Non-Child Windows
      SDI Applications
            Managing SDI Member Windows
Chapter 10 - Drag and Drop
      Drag and Drop Phases
            Starting a Drag Operation
            Dragging Items
            Dropping Items
            Ending the Drag Operation
            Implementing Drag and Drop
      Drag and Drop Between Applications
            Dragging Files from the Windows Explorer
Chapter 11 - Dynamic Link Libraries
      The
            Export Suitability
            Export Declarations
            Modifying the Project File
            Using a DLL Function
      Creating a DLL
      Interface Units
      Forms in DLLs
      DLL Compatibility
      Loading a DLL at Runtime
      What's In a DLL?
Chapter 12 - Multi-Threaded Applications
      Threads in Win32
            Preemptive Multitasking
            Multi-processing
            Thread Priorities
      The Purpose of Threaded Applications
            Avoiding Bottlenecks
            Controlling Program Flow
            Utilizing Multiple Processors
      Creating Thread Objects
            Creating a Thread Object
            Executing Threads
            Initializing Threads
            Accessing VCL Properties and Methods
      Working with Threads
      Using Threads
            Non-threaded Applications
      Using Threads
            Starting and Stopping Threads
                  Creating a Suspended Thread
                  Suspending and Resuming a Thread
                  Terminating Threads
            Working with Thread Functions
      Thread Priorities
            Working with Thread Priorities
      Thread Synchronization
            Local vs. Global Variables
            Thread-local Variables
      VCL Thread Synchronization
            Accessing VCL Methods
            Accessing VCL Properties
            Thread-Safe VCL Components
      Non-VCL Thread Synchronization
            When to Synchronize
            Locking
            WaitFor
            Critical Sections
                  Making a Class Thread-Safe
            TMultiReadExclusiveWriteSynchronizer
      Using Critical Sections
      Inter-Process Synchronization
            Signaling
            Mutexes
            Semaphores
            Events
      Debugging Threaded Applications
      Limitations of Threaded Applications
            Creating Threads with BeginThread
Appendix A - Delphi Resources
Appendix B - File Extensions
Appendix C - Delphi IDE Shortcuts

Print  
 
Affiliations

  

Blue Star is an Adobe Authorized Training Center

Blue Star is an Altova Authorized Training Partner

Blue Star is certified by the Bureau of Private Postsecondary and Vocational Education

 Click to verify BBB accreditation and to see a BBB report.

Blue Star is a certified General Services Administration contractor

Blue Star Learning is a proud Microsoft Certified Partner