|
|
Delphi - Object Oriented Programming
|
Course Overview
Delegates will learn the correct way to apply object oriented programming principles to the development of Delphi applications. Delegates learn how to develop generic forms, objects and components, which they can reuse in multiple applications, saving development time, increasing program reliability, and improving maintainability. Delegates will be more productive after completing this class. They will learn how to develop Delphi applications in less time, and which are more reliable, consistent, and maintainable. Although the class targets Delphi, the general principles taught here are equally applicable to other object oriented languages.
What will I learn?
Upon course completion, delegates will be able to:
Create Delphi classes and components which you can reuse in multiple applications. Real classes - such as database maintenance forms and query builders - the backbone of database applications
Design class hierarchies which are stable, robust, and extensible
Create components from scratch and also extend existing components which come with Delphi
Learn from design decisions made in the VCL
Create real business objects - such as customers and invoices
Place class wrappers around database tables to minimize the impact of database structure and business logic changes
Course Style
This course is hands-on with practical exercises throughout. We provide you with individual PC’s so that you are able to work alone. Class sizes are kept small so that you will receive personal attention. You will take away extensive printed course material, which will be of on going use to you in your work.
Course Contents
Principles of Object Oriented Programming
Classes and Objects defined
Why OOP is better than structured/procedural programming
Rules on what makes a good OOP design
What makes a good class?
Telling a good class design from a bad one
Interface vs. implementation
UML Basics
What is UML and why use it?
How to read a UML class drawing (classes, methods, properties, events, scoping, inheritance/encapsulation)
Delphi Syntax
Using predefined classes
Objects and Classes - what's the difference?
Declaring objects
Using Try/Finally to prevent memory leaks
Instantiating classes
Using properties and methods
TStringList in detail
TInifile and TRegistry
Hooking events in code
Defining your own classes
Class design basics
Classes are types
Using properties
Declaring and implementing methods
Method and instance variable scope
Constructors and destructors
Using OOP to solve common development problems
User security
Recovering from database errors
Loading forms
Printing or previewing reports
Restoring forms when application starts
Using Visual Form Inheritance
Understanding the Delphi generated code
Using the repository
Removing duplicate code from forms
Building reusable form hierarchies
Automating database maintenance forms
Building More Advanced Objects
Inheritance
Encapsulation
Polymorphism
Virtual, Dynamic, Override, Abstract
Composite classes
Friend classes
Copying objects
Component Writing
Tour of the VCL
Writing Classses which work within the IDE
Using Delphi 5 frames to visually build composite components
Wrappers around dialog boxes
Extending VCL components
Data aware components
Implementing custom events
Creating Business Objects
Using class wrappers around database classes
Create data aware business objects
Implementing business logic as custom events
Prerequisites
Delegates must have approximately 6 months of Delphi development experience.
Recommended Follow-On Courses
Delphi - Database Development
Delphi - Multi Tier
Delphi - COM
Delphi - Web Development
Delphi - ADO
Delphi - Components
Duration
5 days
Next Dates
Please call for dates
Cost
£1,500 plus VAT