Nu blev det ytterligare en uppräkning om att HN är bra utan väldigt lite varför.
Har du inget likt HN och deklererar med "auto, let, var" så blir koden mycket svårare att läsa.
Ok, det är kan vara en fördel, men en av poängerna med auto är väl just att man kan slippa bry sig om exakt vad det är för typ på variabeln? Någonting kom från ett funktionsanrop och skall skickas vidare till ett annat funktionsanrop och då är det kanske inte så viktigt vad detta objekt har för typ. Är det vitalt att det är en uint64_t då kan man klämma dit det i deklarationen.
Om du inte väljer HN untyttjar man inte möjligheter att göra koden mer förståelig för utvecklare, exempelvis för domäner som är väldigt svåra. Där kan i princip inte utvecklare jobba med koden utan att gå någon kurs eller liknande för att lära sig vad olika namn är för något, även om de gör det blir det mycket svårt att jobba i koden.
Nu förstår jag inte varför domänen skulle bli lättare för att man dekorerar sina variabler med typprefix. Det kommer väl rimligen vara samma konstiga namn i den flexibla delen. Om det är en komplex domän är väl den i sig magnituder svårare än ha hålla koll på om en variabel är en pekare eller inte? Om inte programmeraren klarar det utan prefix är det nog kört för projektet ändå.
Se det jag räknade upp men givetvis är det också bra om alla utvecklare kan domänen, problemet är bara att samma sak kommer få så många olika namn så även om de kan domänen blir det slarvigare.
Varför skulle saker och ting få mer varierande namn om man inte kör HN? HN-användaren och icke-HN-användaren drabbas väl av exakt som problem när man skall sätta ett relevant namn på flex-delen av variabeln? Här vill man förmedla saker som användning, innehåll eller roll och namnsättning är svårt, men det är väl lika svårt oavsett om man kör HN eller inte? Varför drabbas inte HN-användaren av olikhet och slarv för flexdelarna av namnen?
Nu vet jag inte hur prefixet skulle se ut för lista av something, men jag måste ju erkänna att en variabel som p_list_something_first kommer vara mer lik p_list_something_last än variabeln first är lik last, så i någon mening får du säkert mer likformiga namn om du använder HN. Men å andra sidan, så drunknar, de i mina ögon mest relevanta delarna av namnen, first och last helt i prefixet. Blir det verkligen lättare att läsa och förstå? Vad har jag missat?