Man lever så länge man lär

Lära ut med korrekt kod

Jag blir faktiskt en smula irriterad här, inte bara å nybörjarnas vägnar utan även p.g.a. något jag uppfattar som bristande respekt för programmeringen/språket. Ska du lära folk att programmera Java bör du nog inte skriva kodexempel i ett program som med automatik gör om första bokstaven på varje rad till versal. Åtminstone inte utan att gå tillbaka och korrigera i efterhand. Koden blir trasig.

Public static void double(double x) { Double result = x*x; return result; }

Ovanstående kod kompilerar inte. Det heter public, med inledande gemen.

Nu är i och för sig Double result korrekt, rent formellt, men troligen inte riktigt det man egentligen vill visa. Att i sin kod inte göra skillnad på double och Double är fel, då de faktiskt är olika saker. Det ena är ett s.k. primitivt värde, medan det andra är ett objekt (som iofs innehåller ett primitivt värde, av typen double, men det är ändå ett objekt). Eftersom metoden är specificerad så att den returnerar en double kommer programmet att returnera just en double, d.v.s. den primitiva typen, vilket innebär att resultatet som är en Double kommer att omvandlas per automatik, i onödan. Det man menade här var säkert att skriva double result.

Nybörjaren, som ännu inte fått lära sig vad klasser är, borde inte luras att tro att Double och double är samma sak genom att man på det här sättet slarvar med representationen. Dessutom är det ju heller inte riktigt så enkelt att man alltid kan byta ut den inledande bokstaven för att växla typ från den primitiva typen till motsvarande klass – ett typiskt exempel där är int som mappar mot Integer.

Det är inte okej, i min bok, att visa slarvigt skriven kod för dem som ska lära sig.

Sedan är det visserligen strikt formellt korrekt, så tillvida att det kompilerar, att ange metod- och variabelnamn som börjar med en versal, men det bryter mot sedvanlig praxis och följer heller inte allmänt vedertagen kodstil för Java. Namn på variabler och metoder bör inledas med en gemen (bör, därför att det alltid finns undantag). Allt annat ser ut som Visual Basic i mina ögon. Fult, fult, fult!

Jag är bestämt övertygad om att man som lärare ska föregå med gott exempel.

Jag hoppas att jag hittar något vänligt sätt att påtala sådana här saker, sedan i slutet, eller efter att kursen är slut. Kanske vänta tills efter att jag fått mitt betyg? Betyg: ”G Godkänd”, ”UX Otillräckligt, komplettering krävs” eller ”U Underkänd”.

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s

Etikettmoln

%d bloggare gillar detta: