section_text

DT offers a core set of courses aimed at covering the Application Lifecycle, from requirements gathering, analysis and design to development, testing, process and project management.

section_grafx
  

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