====== Les Bonnes pratiques en Pascal Object ====== ===== Événements ===== ==== OnXXX doit etre géré par DoXXX ==== Prendre soin de toujours accompagner un événement (OnXXXX) par sa procédure d'appel (DoXXXX).\\ Par exemple l'evenement OnChange doit etre géré dans la procedure DoChange.\\ La Procédure DoXXX doit etre dans la section ''protected'' et déclarée comme ''virtual'' pour permettre aux descendants de l'ignorer et d'intercepter les appels en la surchargeant. ==== Property Published de Type Object doivent être assignées ==== Concerne la création de component :\\ Quand une ''Property Published'' est un objet.\\ On doit l'assigner avec un ''SetXXX'' et ''OBJECT.Assign''.\\ Sinon il ne sera pas initialiser pas le système lors de la création du component. published property Margin: TMarginObject read FMargin write SetMargin; // BIEN ! property Margin: TMarginObject read FMargin write FMargin; // PAS BIEN ! // Avec: procedure TMonObjet.SetMargin(AValue: TMarginObject); begin FMargin.Assign(AValue); end; ===== Calculs ===== ==== Division ==== Si le diviseur est une variable, toujours vérifier si le diviseur n'est pas ZERO avant d'effectuer la division. ===== Ressources ===== * [[https://edn.embarcadero.com/article/10280|Object Pascal Style Guide @Embarcadero]] * [[https://www.riff.org/node/11897|Notation Hongroise]] * [[https://www.developpez.net/forums/blogs/360691-retwas/b2050/bonnes-pratiques-delphi/]]