Sfondo: Quindi, mentre Javascript converte implicitamente vari tipi di dati e quindi può sembrare quasi senza caratteri (esiste una cosa del genere?) Ha tipi diversi.
La maggior parte dei miei colleghi sembra pensare diversamente. I colleghi pre-vendita e non di sviluppo non sono consapevoli di questo e altri sviluppatori (il 90% sono più anziani per me) sembrano pensare che non contano, perché gli utenti non gli interessano davvero.
Problema: Mentre implementa una nuova funzionalità in cui accettiamo un file di impostazione in forma di JSON, la specifica non specifica quali tipi sono i valori. In apparenza questo non è un grosso problema dato che è molto ovvio dedurne i tipi: lo spessore, la trasparenza, ecc. Sono ovviamente numeri, altri sono ovviamente stringhe. Ma dopo aver implementato la funzione, il collega ha affermato che dovrei prendere tutti i valori come prima stringa, quindi tentare di analizzarli per raddoppiare perché molti utenti non conoscono la differenza.
Ha ragione, nel senso che il suo metodo sembra più "difensivo" e la specifica non specifica esplicitamente il tipo di valori. Ma sono un po 'titubante perché penso che stiamo attivamente incoraggiando una cattiva pratica.
Quindi cosa dovrei fare? Chiedere al progettista di specificare esplicitamente i tipi sul foglio delle specifiche? Cambia la mia implementazione per prenderla come stringa? O lasciarlo così com'è e visualizzare l'errore quando viene dato un tipo errato per il valore?
UPDATE: Quello che è successo è che abbiamo deciso di usare una logica comune che accetta anche le stringhe. Ho detto al mio team manager che i tipi mancavano dalle specifiche e ha detto che parlerà con il designer.