Gå til innhold

C#: Feedback på passordhåndteringsprogram


Anbefalte innlegg

Videoannonse
Annonse

Programmet feiler første gang man starter det. Det er også ganske uforståelig hvordan det brukes (alt er uansett Disabled hos meg. Hva er de 9 checkboxene til?). Hva er poenget med "Start" knappen, annet enn å forsinke bruken av programmet?

Du burde også avngi alle komponenter, slik at det er mulig å forstå hva knappene er til uten å måtte gå igjennom all koden.

 

Flott at du bruker Dispose de fleste steder du trenger dem. For å gjøre dette enklere, kan du benytte using:

using(var sr = new StreamReader(File.OpenRead(path)))
{
	    sr.BaseStream.Position = posisjon;
	    textBox2.Text = sr.ReadLine();
	    object s = textBox2.Text;
}
Clipboard.SetText(s.ToString());

 

 

Fordelen med using fremfor å kalle Dispose, er at using garanterer at Dispose blir kalt selvom du får en exception. Dette ettersom using oversettes til dette:

 

var sr = new StreamReader(var sr = new StreamReader(File.OpenRead(path))
try
{
 sr.BaseStream.Position = posisjon;
 textBox2.Text = sr.ReadLine();
 object s = textBox2.Text;
}
finally
{
 sr.Dispose();
}
Clipboard.SetText(s.ToString());

Den s variabelen er forøvrig unødvendig i den funksjonen. Du kan benytte TextBox2.Text istedet.

 

Det er ganske viktig i et program å alltid benytte den best matchende datatypen, og det er sjeldent object eller string, selv om sjokkerende mange (også profesjonelle) ser ut til å foretrekke sistnevnte som en "alt-mulig" datatype.

 

Du sjekker om teksten til knappen er lik "Neste" og bruker generelt GUI som et datasett. Generelt er ikke dette noen god idé. Du burde skille forretningslogikk ifra brukergrensesnittet.

 

Ellers ser det ut som du har fått et greit utgangspunkt på C# programmering, men dette programmet krever en del mer kjærlighet.

 

Jeg ser du bruker Norsk språk i navn. Mange ser på litt ublide øyne med dette, men egentlig har jeg ikke noe imot det (jeg gjør det ikke selv personlig dog), så lenge du også bruker Norske bokstaver, og lagrer fila som UTF-8, noe du har gjort. Du kan være mer konsekvent med navngivning dog, og navngi alle komponenter som brukes i koden.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...