Delphi
Delphi est un RAD (Développement rapide d’applications) très puissant. Il s’appuie sur le langage Pascal orienté objet. Le point fort des premières versions de Delphi par rapport à ses concurrents a été l’intégration efficace des bases de données, avec support du langage SQL, rendant l’utilisation de bases de données d’une déconcertante facilité, tout en laissant des possibilités d’accès directs à la base par SQL.
Le caractère RAD est aussi très appréciable. Très convivial et facile à utiliser, il permet de faire en quelques minutes des applications simples, munies d’une interface particulièrement jolie, et qui vous aurait pris des heures à faire, ainsi que plusieurs mèches de cheveux si vous aviez voulu utiliser l’API standard de Windows.
Enfin, la puissance du langage Pascal conviendra largement à toutes vos applications. Et pour finir, une très bonne nouvelle en ce qui concerne la portabilité, puisque Inprise (anciennement Borland) a annoncé la sortie prochaine d’une version de Delphi pour Linux.
Trucs et astuces
Pour l’instant, uniquement un tout petit truc, pour les bidouilleurs programmant sous Delphi, et souhaitant avoir un accès complêt au matériel. Sous Windows, l’accès direct aux ports est plus que mal venu. Il n’existe d’ailleurs pas de fonctions à cet effet. Pourtant, par exemple lorsque l’on veut avoir accès au port parallèle, pour un petit montage électrique par exemple, cela peut être très utile. Sous windows 95&98, vous avez la possibilité de vous contenter d’écrire en Delphi les deux fonctions d’accès au port qui suivent.
Procedure SetPort(address,value:Word);
var bvalue:byte;
begin
bvalue:=trunc(value and 255);
asm
mov dx,address
mov AL,bvalue
out DX,AL
end;
end;
Function GetPort(address:Word):Word;
var bvalue:byte;
begin
asm
mov dx,address
in aL,dx
mov bvalue,aL
end;
result:=bvalue;
end;
Pour les versions NT des Windows (NT 4, 2000), ces programmes se verront refuser l’accès direct au port, il faudra pour cela passer par un .vxd installé par l’administrateur qui s’acquitera pour vous de cette tache. Je suis actuellement en cours d’écriture d’un tel vxd, mais vous pouvez en trouver sur Internet (hélas, pour l’instant je n’ai vu que des versions sharewares…).