Una cosa che mi ha insegnato a lavorare in Haskell e F # è che qualcuno in un'università più intelligente di me probabilmente ha già trovato un'astrazione per quello che sto facendo. Allo stesso modo in C # e nella programmazione orientata agli oggetti, c'è probabilmente una libreria per "it", qualunque cosa stia facendo.
C'è così tanta enfasi sul riutilizzo delle astrazioni nella programmazione che spesso sento un dilemma tra: 1) semplicemente codificare qualcosa di breve e sporco o 2) passare lo stesso tempo a trovare la libreria / soluzione più solida di qualcun altro e solo a usarla.
Come di recente uno dei programmatori qui ha scritto un (de) serializzatore per file CSV, e non potrei fare a meno di pensare che qualcosa del genere è probabilmente molto facile da trovare online, se non è già dotato dello standard .NET API.
Non lo biasimo però, più volte lavorando in .NET ho messo insieme una soluzione basata su ciò che so, solo per rendermi conto che c'era una chiamata al metodo o un oggetto o qualcosa , spesso nella stessa libreria, che faceva quello Volevo e semplicemente non lo sapevo.
Questo è solo un segno di inesperienza o c'è sempre un elemento di compromesso tra scrivere nuovo e riutilizzare il vecchio? Quello che odio di più è quando mi imbatto in una soluzione che già conoscevo e dimenticavo. Mi sento come se una persona non fosse in grado di digerire le enormi quantità di codice che viene preconfezionato con la maggior parte delle lingue al giorno d'oggi.