Devo prendere l'aiuto di Internet e di altri programmatori o dovrei fare tutta la programmazione da solo? [chiuso]

6

Sono uno sviluppatore in una buona compagnia. Mi è stato affidato un compito dalla mia azienda entro una settimana, ma ho finito lo stesso in 4 giorni, il mio capo, il cliente e gli altri membri del team sono tutti contenti del mio lavoro; anche io ero! Comunque improvvisamente ho avuto un pensiero nella mia mente: "Per il mio lavoro ho preso un po 'di codice da internet e l'ho mixato con la mia programmazione e ho dato il risultato più velocemente però, la mia preoccupazione è che avrei dovuto fare il mio compito in modo tale che Avrei una migliore comprensione di questo (anche quello che è stato preso da internet) ".

Qualcuno può dirmi se sto rovinando la mia carriera di programmatore in questo modo (voglio dire usando il codice degli altri)?

    
posta Raj 14.08.2012 - 20:26
fonte

4 risposte

26

Probabilmente no. Ottenere parti di soluzioni online non è così raro. Se non capisci cosa stai copiando e incollando da internet, finirai per finire nei guai. Se impieghi un po 'di tempo e sforzi per conoscere il codice che trovi e come adattarlo meglio alle tue circostanze, va bene!

    
risposta data 14.08.2012 - 20:40
fonte
8

Ci sono due lati di questo problema a cui devi prestare attenzione. Da un lato, non reinventare la ruota. D'altra parte, evitare le trappole di licenza.

Internet è una grande risorsa per far sì che il codice faccia le cose rapidamente. Ci sono tutti i tipi di librerie utili e altre utilità che semplificano la vita. Il problema della conoscenza degli sviluppatori è certamente importante e non si vuole essere in grado di sopportare una revisione del codice perché il codice è pieno di qualcun altro. Come ha detto una volta Brian Kergihan: "Il debugging è due volte più difficile della scrittura del codice, quindi, se si scrive il codice nel modo più intelligente possibile, per definizione non si è abbastanza intelligenti da eseguirne il debug." L'uso del codice di persone più intelligenti di te potrebbe (e probabilmente lo sarà) causare l'incapacità di eseguire il debug di detto codice in modo efficiente o efficace.

Questo mi porta al secondo punto. Quasi tutto il codice su Internet è concesso in licenza. O esplicitamente o implicitamente da copyright o simili. Alcune licenze sono molto permissive su ciò che puoi fare con il codice, altre molto meno. La GNU GPL è famosa per il rendering di qualsiasi codice che tocchi open source per impostazione predefinita. Anche una sola funzione potrebbe potenzialmente renderti obbligato a rilasciare il tuo codebase come software open source. Anche StackOverflow e il resto di Stack Exchange è licenza .

Quindi, usando il codice di altre persone, volenti o nolenti, corri il rischio di shibolleths tecnici e legali, simili a quelli di che potresti non capire.

    
risposta data 14.08.2012 - 20:45
fonte
3

A parte i problemi di licenza, non penso che ci sia una vera risposta alla tua domanda.
Se hai un sacco di tempo e pensi che scrivere una parte di codice da solo ti sarà utile in futuro, fallo. Altrimenti, non farlo. O forse puoi copiare qualche pezzo di codice, ma prenditi ancora il tempo per capirlo. Questa potrebbe essere la cosa migliore da fare, o potrebbe non essere la cosa migliore da fare. Dipende dalla situazione, e non puoi dirlo con certezza fino a quando non è finita.
Tutto si riduce a dare giudizi. Non puoi dare sempre i giudizi giusti, ma puoi evitare di fare le cose dogmaticamente, senza guardare la situazione specifica in cui ti trovi ... Anche se il pensiero eccessivo può essere un altro trabocchetto.

    
risposta data 14.08.2012 - 21:01
fonte
1

Cerco sempre di evitare copia-pasta da Internet, a meno che il codice sia esattamente ciò che è necessario, sia uno standard / best practice del settore ed è privo di qualsiasi problema di licenza.

Il codice di copia della pasta di solito è:

  • non aggiornato
  • gonfio
  • aggiunge ulteriori dipendenze
  • ha bug sconosciuti

È meglio capire l'idea. Quindi scrivi la tua soluzione con lo stile del codice che corrisponde al progetto, non aggiunge dipendenze extra, è più semplice, più moderna e più conosciuta.

Inoltre, a volte le idee possono essere ingombre di brevetti, quindi dovresti esserne consapevole.

    
risposta data 14.08.2012 - 22:55
fonte

Leggi altre domande sui tag