L'Integer è usato troppo come tipo di dati?
https://softwareengineering.stackexchange.com/questions/95863
-
02-11-2019 - |
Domanda
La maggior parte degli sviluppatori di applicazioni utilizza numeri interi firmati in luoghi in cui intendono davvero utilizzare numeri interi senza segno? Lo faccio sempre, anche i miei colleghi. Non ho visto molte altre vaste basi di codice (oltre a Delphi VCL) ed esempi su Internet di solito usano i numeri interi. Mentre gli sviluppatori VCL usano i propri tipi di dati (che sarebbe il modo più non lascito per dichiarare variabili).
Qualcosa sembra un po 'terribile sul codice come questo
TStuffRec = record
recordID : Integer;
thingID : Integer;
otherThingID : Integer;
end;
Quando potrebbe essere scritto come
TStuffRec = record
recordID : Cardinal;
thingID : Cardinal;
otherThingID : Cardinal;
end;
Funzionalmente, questi record funzionano quasi sempre allo stesso modo (e si spera che continueranno a funzionare allo stesso modo anche in Delphi a 64 bit). Ma numeri molto grandi avranno problemi di conversione.
Ma ci sono anche svantaggi nell'uso di INT non firmati. Matrastici derivante da quanto sia fastidioso mescolare i due.
La vera domanda è: è una cosa a cui viene effettivamente pensato o incluso nelle migliori pratiche? Di solito è solo allo sviluppatore?
Nessuna soluzione corretta