Le tue conoscenze di programmazione diminuiscono se non ti alleni? [chiuso]


13

Sono un programmatore alle prime armi. Studio linguaggi come C, C ++, Python e Java (concentrandosi principalmente sul C ++). Sono quello che chiameresti "giovane e inesperto" e lo ammetto perché non posso affermare diversamente.

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 fraintendetemi, adoro programmare. Adoro creare codice funzionale, guardare come un programma prende vita premendo un pulsante e imparare il più possibile. Il fatto è che semplicemente non ho molto tempo per farlo.

Direttamente alla domanda, ora: la tua conoscenza della programmazione diminuisce col passare del tempo e non ti alleni? Potresti chiedere "quanto tempo vuoi dire?". Non intendo un determinato periodo di tempo, ma come riferimento potresti prendere un mese due o anche un anno come esempio.

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


3
"per riferimento potresti prendere un mese due o anche un anno" . Non praticare un mese o due è sicuro al 99,9999%. Non esercitarsi per un anno non è nemmeno un grosso problema - supponendo qui la solida conoscenza pratica, al contrario ad esempio delle cose che uno ha rapidamente riempito per superare l'esame
moscerino

1
@gnat Beh, le cose stipate per un esame non sono nemmeno sicure per una settimana nella mia esperienza, figuriamoci un mese o un anno.
Izkata,

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 più di metterle in pratica.

Anche così, come qualsiasi altra cosa, se non lo usi il tuo cervello inizierà a rilasciare le informazioni. Il tuo cervello è come un muscolo in quel modo. Dopo un certo periodo di tempo ricorderai molto probabilmente concetti generali ma non specifici sulla sintassi e sulle funzioni meno utilizzate. Ad esempio, potresti voler fare un forciclo o scorrere su un elenco e sapere che è qualcosa come while List.hasNext()o for item in listo for index, item of listnon scriverlo con molta fiducia.

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 delle comprensioni e scrivono invece troppi forloop, ma otterrai il lavoro.

Quanto a quanto dimenticherai o ricorderai, penso che quel tipo di dipenda da quanto è attiva la tua mente e da quanti anni hai. Non credo di aver sviluppato un cervello completamente funzionale fino a quando non avessi compiuto 19 anni. A quel punto, memorizzare qualcosa per me è stato un gioco da ragazzi. Ognuno è diverso.

In breve: i dettagli sbiadiscono sempre, il tasso che sbiadiscono dipende da te, tutte le lingue stanno cercando di semplificare la risoluzione degli stessi problemi, quindi forse è più importante imparare a risolverli. :)



9

Sono il proprietario di una piccola impresa, il che significa che sono The Guy. Quindi, quando il sito Web deve essere aggiornato, devo essere un guru Zend / MVC. Quando ho bisogno di hackerare dati o modificare pagine web, trovo che devo usare php. Quando sto lottando con Quickbooks, riesco a trovarmi usando query faux-QB, Visual Basic, php, mysql, linux e windows in un miasma di tecnologia. Oh giusto, e lavoro CAD quando un venditore ha bisogno di disegni, il che significa che devo essere un ingegnere meccanico / progettista e capire i formati di file e ciò che serve per ottenere chiaramente le persone che sono nella mia testa. Abbiamo appena esaurito i cataloghi, quindi ho acquistato Adobe CS5 e preso il file InDesign per il vecchio catalogo e l'ho modificato per il nuovo catalogo. Sono anche l'elettricista e il ragazzo della rete che costruisce i cavi quando necessario.

Data tutta quell'esperienza negli ultimi 10 anni, ho scoperto che dimentico le cose entro circa un mese. MA quando immerso di nuovo in esso, il cervello scatenerà ricordi che mi invieranno a php.net o scavando attraverso il codice vecchio / legacy / antico che ho scritto. Lo stesso vale per il lavoro CAD; c'è un grande progetto in cui sono entrato e uscito da oltre un anno. Quando accendo quel computer, ci vuole un giorno perché tutti gli aggiornamenti vengano completati e le licenze vengano risolte, quindi altri 2-5 giorni per arrivare a dove ero quando mi ero interrotto.

Sto trovando il più difficile da riprendere ogni volta che è la programmazione qodbc di Quickbooks. : P Nel corso degli anni ho fatto spegnere e riaccendere MySql e PostgreSQL e con i miei trucchi file di testo in cui conservo query particolarmente utili, posso raccogliere quelle cose molto velocemente.

Riepilogo: mantieni tutto il tuo lavoro per sempre, giocaci ogni 6-12 mesi, quando devi rivisitare quel codice, probabilmente non avrai regredito troppo e ti aspetti di tornare alla massima velocità entro una settimana.


2

Le conoscenze generali di programmazione o le capacità di problem solving programmatico non invecchiano davvero, ma le conoscenze specifiche del linguaggio o del framework diventano obsolete dopo un po '.


2

Metodologie e simili non diminuiscono se non ti alleni, ma sicuramente ricordando 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 risolto in un sistema legacy). Quindi spesso faccio fatica a ricordare qual è la sintassi corretta o di quale libreria ho bisogno ora.


1

la tua conoscenza della programmazione diminuisce col passare del tempo e non ti alleni?

Conoscenza, no (almeno non i concetti di Big Picture). Competenze, si.


0

La conoscenza diminuisce in qualche modo, potresti ritrovarti a dimenticare parte della sintassi o degli aspetti più complessi di una determinata lingua. All'inizio, potrebbe anche essere difficile strutturare il codice se non ti alleni, ma dopo un po 'tornerà.


0

Imparare a programmare significa imparare a risolvere i problemi più di ogni altra cosa. Sono stato nella situazione in cui non programmavo da oltre 10 anni. Sì, i dettagli della sintassi che avevo e devo cercare regolarmente, ma l'abilità di problem solving era ancora lì.


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 nella memoria a lungo termine, dove il processo di dissolvenza è molto più lento.

Un'analogia che mi piace di più del muscolo è "la spugna". Imparare e usare è come aggiungere acqua che rende la spugna bella, grassoccia e "pesante". Smetti di aggiungere acqua e inizierà ad asciugarsi e perdere peso. Ai neurologi potrebbe piacere questa analogia;)

Alcune cose che possono contrastare sono:

  • Ripetizione. Fai qualsiasi attività abbastanza volte e te lo ricorderai.

  • Nemonics. Sia visivi, uditivi o qualunque cosa questi possano essere davvero utili.

  • Flessibilità. Piuttosto che la conoscenza stessa, la capacità di assumere nuovi compiti è fondamentale ed è aiutata facendo frequentemente 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 farli aiuta a bloccare la conoscenza nella propria mente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.