Quanto è comune questo nel settore del software?
Molto comune. Più o meno allo stesso modo in cui un idraulico distrugge i tuoi impianti idraulici, un falegname consegna spazzatura o un sarto a buon mercato che fa un abito inadatto. Cioè, è tutto umano.
C'è una buona ragione per cui questo accade: le persone che non sono veramente allenate (o non entusiaste) devono implementare qualcosa sotto pressione.
Questo non è un problema di queste persone, principalmente, ma di solito delle strutture che circondano lo sviluppo del software in quella società. Ad esempio, un'azienda potrebbe avere un sacco di stagisti a sviluppare il proprio software interno; anche se quegli stagisti sono brillanti e ben informati, saranno lì solo per alcune settimane o mesi e la proprietà cambierà frequentemente.
O qualcuno che è fantastico nel dominio, ma non un programmatore, potrebbe hackerare insieme alcune applicazioni VBA ecc. Perché all'inizio sembra essere abbastanza facile.
Oppure un'applicazione ben fatta finisce nella fase di manutenzione, tutti i buoni sviluppatori passano avanti, e quindi continua a essere sviluppato da poche persone (nel peggiore dei casi: uno) che ne sanno poco, che non hanno documentazione, ecc.
Come posso assicurarmi di rimanere aggiornato su OOP e sui principi correlati? Mi alleno nel mio tempo libero e sento che ho davvero bisogno di lavorare con uno sviluppatore più esperto per migliorare in OOP.
Ci sono due possibili risposte:
- O: discutilo con il tuo capo e assicurati di entrare in progetti puliti. Se non è possibile, trova un nuovo capo.
- Oppure: assumiti la responsabilità di questo da solo. Ciò significa farlo da soli - nel tempo libero, o se puoi, in compagnia, ma guidato da te stesso (improbabile).
Se la seconda risposta sembra troppo cinica per te, allora lascia che ti assicuri che non lo è. Un falegname che ha un negozio di falegnameria a casa sarà più certamente un falegname meglio di uno che non lo fa.
Ad esempio, è assolutamente possibile e molto divertente per alcune persone, ad esempio, scavare in una nuova lingua come Ruby, apprendere non solo la sintassi, ma anche approfondire aspetti OO speciali di quella lingua e immergersi davvero in profondità. Tutto nel tuo tempo libero, senza alcun collegamento con il tuo lavoro. Sarà solo un hobby, ma essendo il professionista qualificato che sei, può essere efficace (o più) come sedersi accanto a qualche sviluppatore principale e cercare di seguire quello che stanno facendo. Questo sarà quindi strettamente per il tuo sviluppo personale e il tuo divertimento. Se non ti diverti a farlo, o se scopri che semplicemente non riesci a raggiungere alcuna comprensione, allora grattalo e torna alla prima risposta.
Quel capo sviluppatore che si sta allenando è abbastanza probabile imparato che roba esattamente in questo modo ...