La tua conoscenza di programmazione diminuisce se non ti eserciti? [chiuso]

13

Sono un programmatore alle prime armi. Studio linguaggi come C, C ++, Python e Java (concentrandomi principalmente su C ++). Sono quello che chiameresti "giovane e inesperto" e lo ammetto perché non posso rivendicare il contrario.

Come studente, ho molti altri problemi oltre alla programmazione. Pratico la programmazione il più spesso possibile, e soprattutto perché il mio insegnante mi dà molti più esercizi rispetto al resto della classe (è un livello molto basso), quindi spesso trascorro settimane facendo qualcos'altro come progetti scolastici o sportivi, o viaggiare, qualsiasi cosa oltre alla programmazione.

Non fraintendermi però, adoro programmare. Mi piace creare un codice funzionale, osservare come un programma prende vita con la semplice pressione di un pulsante e imparare il più possibile. Il fatto è che semplicemente non ho molto tempo per farlo.

Dritto alla domanda, ora: la tua conoscenza di programmazione diminuisce col passare del tempo e non ti eserciti? Puoi chiedere "quanto tempo intendi?". Non intendo una quantità specifica di tempo, ma per riferimento potresti prendere un mese-due o addirittura un anno come esempio.

Per conoscenza intendo qualsiasi cosa, dalla sintassi alla funzionalità del linguaggio.

    
posta Bugster 01.04.2012 - 17:25
fonte

9 risposte

28

Ovviamente, la programmazione è qualcosa che impari a fare, non un insieme di fatti o informazioni. Detto questo, è più come andare in bicicletta o parlare una lingua. Ci sono anche teorie, ma si tratta di metterle in pratica.

Anche così, come qualsiasi cosa, se non la usi, il tuo cervello inizierà a perdere le informazioni. Il tuo cervello è come un muscolo in quel modo. Dopo un certo periodo di tempo, molto probabilmente ricorderai concetti ampi ma non specifiche sulla sintassi e sulle funzioni meno utilizzate. Ad esempio, potresti voler fare un ciclo for o scorrere su un elenco e sapere che è qualcosa come while List.hasNext() o for item in list o for index, item of list ma non lo scrive con molta confidenza.

La cosa buona è che saprai cosa vuoi fare. Hai solo bisogno di cercarlo. Quindi non sarei troppo preoccupato per questo. Tornerà da te. L'importante è imparare a risolvere i problemi con i programmi. Tutti i linguaggi di programmazione sono generalmente in grado di fare le stesse cose, ma il più delle volte in modi diversi. Potresti dimenticare che Ruby o Python hanno invece delle comprensioni e scrivono troppi cicli for , ma il lavoro sarà fatto.

Per quanto tu possa dimenticare o ricordare, penso che questo dipenda da quanto è attiva la tua mente e quanti anni hai. Non credo di aver sviluppato un cervello pienamente funzionale fino all'età di 19 anni. A quel punto memorizzare qualcosa per me è stato un gioco da ragazzi. Ognuno è diverso.

In sintesi: i dettagli svaniscono sempre, la frequenza che sbiadiscono dipende da te, tutte le lingue stanno cercando di semplificare la risoluzione degli stessi problemi, quindi forse è più importante imparare come risolvere i problemi. :)

    
risposta data 01.04.2012 - 17:44
fonte
10

Qualsiasi cosa non utilizzata finirà per distruggersi.

    
risposta data 01.04.2012 - 17:37
fonte
9

Sono il proprietario di una piccola impresa, ovvero I'm The Guy. Quindi, quando il sito web deve essere aggiornato, devo essere il guru di Zend / MVC. Quando ho bisogno di hacksaw dati o ritocco pagine Web, trovo che ho bisogno di utilizzare PHP. Quando sto combattendo con i Quickbooks, posso trovare me stesso usando le query del faux-QB, Visual Basic, php, mysql, linux e windows in un miasma del brodo tecnologico. Oh, giusto, e lavoro CAD quando un venditore ha bisogno di disegni, il che significa che devo essere un ingegnere / progettista meccanico e capire i formati di file e quello che serve per far conoscere alla gente ciò che è nella mia testa chiaramente. Abbiamo appena esaurito i cataloghi, quindi ho acquistato Adobe CS5 e preso il file InDesign per il vecchio catalogo e ottimizzato per il nuovo catalogo. Sono anche l'elettricista e il tecnico di rete che costruisce i cavi quando necessario.

Considerando tutta questa esperienza negli ultimi 10 anni, ho scoperto che dimentico le cose entro circa un mese. MA una volta immerso nuovamente in esso, il cervello scintilla i ricordi che mi mandano a php.net o a scavare attraverso il vecchio / legacy / codice antico che ho scritto. Lo stesso per il lavoro CAD; c'è un grande progetto in cui sono entrato e uscito da oltre un anno. Quando accendo il computer, ci vuole un giorno prima che tutti gli aggiornamenti siano completati e le licenze da ordinare e poi da due a cinque giorni in più per arrivare dove ero quando mi sono interrotto.

Sto trovando il più difficile da riprovare ogni volta è la programmazione qodbc Quickbooks. : P Ho ripetuto MySql e PostgreSQL nel corso degli anni e con i miei file di testo cheats in cui salvo query particolarmente utili, posso riprenderlo rapidamente.

Riepilogo: mantieni il tuo lavoro per sempre, giocaci ogni 6-12 mesi, quando hai bisogno di rivisitare quel codice, probabilmente non sarai regredito troppo e aspettati di essere a piena velocità entro una settimana.

    
risposta data 02.04.2012 - 05:03
fonte
2

Le conoscenze di programmazione generale o le abilità di risoluzione dei problemi programmatiche non invecchiano realmente, ma le conoscenze specifiche della lingua o della struttura diventano obsolete dopo un po '.

    
risposta data 02.04.2012 - 13:33
fonte
2

Metodologie e simili non diminuiscono se non si pratica, ma sicuramente ricordare la sintassi e le librerie corrette.

Uso principalmente Java, C ++ e C #. Ma negli ultimi due anni, ho usato Java solo occasionalmente (se un bug deve essere corretto in un sistema legacy). Quindi spesso faccio fatica a ricordare quale sia la sintassi corretta o quale libreria ho bisogno ora.

    
risposta data 02.04.2012 - 08:47
fonte
1

does your programming knowledge decrease as time passes and you don't practice?

Conoscenza, no (almeno non i concetti del quadro generale). Abilità, si.

    
risposta data 02.04.2012 - 17:58
fonte
0

La conoscenza diminuisce un po ', potresti ritrovarti a dimenticare parte della sintassi o gli aspetti più complessi di una certa lingua. All'inizio, potrebbe anche essere difficile strutturare il codice se non ti eserciti, ma dopo un po 'di tempo tornerà.

    
risposta data 10.04.2012 - 18:50
fonte
0

Imparare a programmare è imparare come risolvere i problemi più di qualsiasi altra cosa. Sono stato nella situazione in cui non avevo programmato per oltre 10 anni. Sì, i dettagli sulla sintassi che ho avuto e devo cercare regolarmente ma l'abilità di risoluzione dei problemi era ancora lì.

    
risposta data 23.04.2012 - 00:39
fonte
0

Come per tutte le attività cerebrali, la conoscenza inizia a svanire dopo letteralmente secondi. Che continua per secondi e minuti (a breve termine). Alcuni vengono trasferiti dall'ippocampo alla memoria a lungo termine, dove il processo di dissolvenza è molto più lento.

Un'analogia che mi piace più del muscolo è "la spugna". Imparare e usare è come aggiungere acqua che rende la spugna bella, carnosa e "pesante". Smetti di aggiungere acqua e inizierà a seccarsi e perdere peso. I neurologi possono apprezzare questa analogia;)

Alcune cose che possono contrastare:

  • La ripetizione. Esegui qualsiasi attività abbastanza volte e te ne ricorderai.

  • Nemonics. Sia visivo, uditivo o qualunque cosa possa essere davvero utile.

  • Flessibilità. Piuttosto che la conoscenza stessa, la capacità di intraprendere nuovi compiti è fondamentale ed è aiutata dal fare spesso attività completamente nuove.

  • Esercizio. Ben noto per aiutare il cervello e con la memoria.

  • Prendere appunti. Non (tanto) per riferimento futuro, ma perché il processo effettivo di renderli aiuta a bloccare le conoscenze nella propria mente.

risposta data 23.04.2012 - 01:33
fonte