In breve, il modo migliore per imparare è generalmente quello di uscire con qualcuno che si può imparare da . Se ritieni che le tue abilità non siano all'altezza, uscire con persone migliori di te è il meglio che puoi fare. Certamente molto meglio che ritirarsi e isolarsi ulteriormente.
Tuttavia, penso che tu stia dipingendo un'immagine molto semplificata e fuorviante. Lontano da tutti i programmatori "insegnati professionalmente" sono davvero buoni. Solo perché fanno qualcosa non significa necessariamente che sia la cosa giusta da fare.
E molto (ma non tutto) di quello che stai dicendo sembra davvero che tu sia quello che potrebbe insegnare loro un trucco o due.
Mi appoggio al lato funzionale più di OO, ma vedo l'uso di OO quando qualcosa avrebbe più senso come entità astratta.
Mi sembra fantastico. I migliori programmatori sono quelli che usano lo strumento giusto per il lavoro. Sceglierei sempre qualcuno che conosca entrambi i paradigmi e li usi ciascuno laddove ha senso su qualcuno che utilizza religiosamente un solo paradigma.
Poi vado anche sulla strada semplice quando faccio qualcosa. Al contrario, a volte sembra che il codice che vedo dai programmatori professionisti sia complicato per il gusto di farlo!
Ancora una volta, la semplicità è buona . Non rendere complesso il tuo codice fino a quando non deve essere complesso. Alcune persone non tendono a fare le cose fuori complesso di un'idea sbagliata di eleganza, o perché "Avremo bisogno di questa funzionalità in un secondo momento". In generale, è meglio fare la cosa più semplice che risolva il problema.
Uso molte chiusure. Buono. Ecco perché sono lì. Spaventano alcune persone che sono rimaste bloccate negli anni '90 e il modello quasi-OOP fuori moda di Java, ma in realtà, questo è il loro problema.
E, infine, non sono il miglior commentatore.
Cosa dovrebbe essere commentato e come è altamente soggettivo. Non esiste un vero "giusto" o "sbagliato" lì, ma quando si lavora in un team, è importante scrivere codice che l'intero team, e non solo l'autore del codice, possa capire. E a volte, i compromessi devono essere fatti per conformarsi allo stile di codifica del team. Ciò non significa necessariamente che dovresti scrivere più commenti, significa semplicemente che è qualcosa su cui tu e il tuo team dovrete concordare.
Sento programmatori addestrati professionalmente andare avanti e avanti su cose come i test unitari. Qualcosa che non avevo mai usato prima, quindi non ho nemmeno la più pallida idea di cosa siano o come funzionano.
Bene, chiediglielo. :) Il test del codice è essenziale e i test unitari sono uno strumento popolare e utile per questo.
Un sacco di caratteri di sottolineatura "_", che non sono proprio i miei gusti.
Come per i commenti, è soggettivo e dipende dalla lingua. In C e C ++, lowercase_with_underscores
è una convenzione di denominazione abbastanza comune. In molte altre lingue, non vedresti mai un carattere di sottolineatura. Ma alla fine, non è davvero importante. Se una funzione viene chiamata write_to_log
o WriteToLog
non farà effettivamente la differenza. Qualcuno dovrà semplicemente succhiarlo e conformarsi a ciò che la squadra ha concordato lì.
Non so nulla di MVC, ne ho sentito parlare molto con cose come backbone.js. Penso che sia un modo per organizzare un'applicazione. Mi confonde però perché ormai ho creato le mie strutture organizzative.
Come per i test unitari, non smettere mai di imparare. Lavori insieme a persone che sanno cose che non conosci e che provengono da un contesto diverso da quello che sai fare. Impara gli uni dagli altri. Ci sono chiaramente cose che puoi insegnare loro, ma ci sono anche cose che non sai, o di cui non hai mai sentito parlare, che possono insegnarti. Ciò non significa che tu (o loro) sia un cattivo programmatore. Significa che un buon programmatore è colui che si sforza di migliorare e di imparare dagli altri.
La completa programmazione OO lascia davvero un cattivo gusto in bocca
Lo stesso qui, e io sono ciò che chiamereste "addestrato professionalmente" (un diploma di laurea specialistica). Le persone a cui è stata insegnata la programmazione differiscono tanto quanto le persone che sono autodidatta. Sembra che tu stia lavorando con alcuni che hanno davvero bisogno di imparare alcuni nuovi trucchi.
In realtà sono piuttosto spaventato dal fatto che le persone alla fine controlleranno il mio codice. È solo qualcosa di normale che passa ogni programmatore o dovrei davvero cercare di cambiare le mie tecniche?
Tutti e due. Ovviamente è spaventoso vedere gli altri guardare (e giudicare) ciò che hai fatto. Ma è anche molto istruttivo. Possono dirti cosa avrebbero fatto altrimenti, o perché avrebbero fatto diversamente. Possono aiutarti a migliorare e potrebbero anche imparare qualcosa da soli. Mostra loro il codice che risolve un problema meglio di quanto avrebbe fatto la loro soluzione "preferita", e speriamo che vadano "oh, è pulito. Come hai fatto a saperlo? Come si chiama questo? Dovrei usare questa tecnica da solo "