El desenvolupament basat en components és una tècnica de programació que permet crear aplicacions modulars i reutilitzables. En Delphi, aquesta tècnica és fonamental, ja que el seu entorn de desenvolupament visual està dissenyat per facilitar la creació i manipulació de components.

Objectius del Tema

  • Entendre què és el desenvolupament basat en components.
  • Aprendre a crear i utilitzar components personalitzats en Delphi.
  • Conèixer els avantatges de l'ús de components en el desenvolupament d'aplicacions.

Què és un Component?

Un component és una unitat de programari reutilitzable que encapsula una funcionalitat específica. En Delphi, els components són objectes que es poden col·locar en un formulari o en un altre component per proporcionar funcionalitats addicionals.

Característiques dels Components

  • Reutilitzables: Es poden utilitzar en múltiples aplicacions.
  • Encapsulats: La seva implementació interna està oculta, proporcionant una interfície clara i senzilla.
  • Configurables: Es poden personalitzar mitjançant propietats, esdeveniments i mètodes.

Creació de Components Personalitzats

Pas 1: Crear una Nova Unitat de Component

  1. Obre Delphi i crea un nou projecte.
  2. Afegeix una nova unitat al projecte: File -> New -> Unit.

Pas 2: Definir la Classe del Component

Defineix una nova classe que hereti de TComponent o d'un altre component existent.

unit MyComponentUnit;

interface

uses
  System.Classes, Vcl.Controls;

type
  TMyComponent = class(TComponent)
  private
    FMyProperty: String;
    procedure SetMyProperty(const Value: String);
  public
    constructor Create(AOwner: TComponent); override;
  published
    property MyProperty: String read FMyProperty write SetMyProperty;
  end;

procedure Register;

implementation

constructor TMyComponent.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  // Inicialització del component
end;

procedure TMyComponent.SetMyProperty(const Value: String);
begin
  if FMyProperty <> Value then
  begin
    FMyProperty := Value;
    // Accions a realitzar quan la propietat canvia
  end;
end;

procedure Register;
begin
  RegisterComponents('Samples', [TMyComponent]);
end;

end.

Pas 3: Registrar el Component

El procediment Register és necessari per registrar el component a la paleta de components de Delphi.

procedure Register;
begin
  RegisterComponents('Samples', [TMyComponent]);
end;

Pas 4: Instal·lar el Component

  1. Compila la unitat del component.
  2. Instal·la el component: Component -> Install Component -> Into New Package.
  3. Segueix les instruccions per instal·lar el component en un paquet nou o existent.

Ús de Components Personalitzats

Un cop instal·lat, el component apareixerà a la paleta de components de Delphi i es podrà utilitzar com qualsevol altre component.

Exemple Pràctic

  1. Arrossega el component personalitzat des de la paleta fins a un formulari.
  2. Configura les propietats del component a l'inspector d'objectes.
  3. Escriu codi per gestionar els esdeveniments del component.
procedure TForm1.Button1Click(Sender: TObject);
begin
  MyComponent1.MyProperty := 'Hello, World!';
  ShowMessage(MyComponent1.MyProperty);
end;

Avantatges del Desenvolupament Basat en Components

  • Modularitat: Facilita la divisió de l'aplicació en parts més petites i manejables.
  • Reutilització: Els components es poden reutilitzar en diferents projectes, estalviant temps i esforç.
  • Mantenibilitat: Els components encapsulen la seva funcionalitat, fent que el codi sigui més fàcil de mantenir i actualitzar.
  • Productivitat: L'ús de components predefinits accelera el procés de desenvolupament.

Exercicis Pràctics

Exercici 1: Crear un Component Personalitzat

  1. Crea un component personalitzat que mostri un missatge quan es fa clic en ell.
  2. Afegeix una propietat per configurar el missatge.

Solució

unit ClickComponentUnit;

interface

uses
  System.Classes, Vcl.Controls, Vcl.StdCtrls;

type
  TClickComponent = class(TButton)
  private
    FMessage: String;
    procedure SetMessage(const Value: String);
    procedure Click; override;
  published
    property Message: String read FMessage write SetMessage;
  end;

procedure Register;

implementation

procedure TClickComponent.Click;
begin
  inherited;
  ShowMessage(FMessage);
end;

procedure TClickComponent.SetMessage(const Value: String);
begin
  FMessage := Value;
end;

procedure Register;
begin
  RegisterComponents('Samples', [TClickComponent]);
end;

end.

Exercici 2: Utilitzar el Component Personalitzat

  1. Instal·la el component creat en l'exercici anterior.
  2. Afegeix el component a un formulari i configura la propietat Message.
procedure TForm1.FormCreate(Sender: TObject);
begin
  ClickComponent1.Message := 'Hello from ClickComponent!';
end;

Conclusió

El desenvolupament basat en components és una tècnica poderosa que permet crear aplicacions modulars, reutilitzables i fàcils de mantenir. En aquest tema, hem après a crear i utilitzar components personalitzats en Delphi, així com els avantatges que ofereixen en el desenvolupament d'aplicacions. Amb la pràctica, aquesta tècnica es convertirà en una part essencial del teu arsenal de desenvolupament en Delphi.

Curs de Programació Delphi/Object Pascal

Mòdul 1: Introducció a Delphi/Object Pascal

Mòdul 2: Estructures de Control i Procediments

Mòdul 3: Treballant amb Dades

Mòdul 4: Programació Orientada a Objectes

Mòdul 5: Funcions Avançades de Delphi

Mòdul 6: Desenvolupament d'Interfícies Gràfiques amb VCL i FMX

Mòdul 7: Desenvolupament Web i Mòbil

Mòdul 8: Millors Pràctiques i Patrons de Disseny

Mòdul 9: Projecte Final

© Copyright 2024. Tots els drets reservats