È buona norma creare un elenco di definizioni per tutti i simboli e le parole in un linguaggio di programmazione? [chiuso]

2

Dopo essere arrivato a questo punto in Learning Python The Hard Way mi chiedo se sia una buona pratica creare un elenco di simboli e definire cosa fanno come indicato in grassetto sotto, per ogni linguaggio di programmazione. Questo sembra ragionevole e potrebbe essere molto utile quando salti tra i linguaggi di programmazione?

È qualcosa che i programmatori fanno o è solo uno spreco di energie?

Exercise 22: What Do You Know So Far? There won't be any code in this exercise or the next one, so there's no WYSS or Extra Credit either. In fact, this exercise is like one giant Extra Credit. I'm going to have you do a form of review what you have learned so far.

First, go back through every exercise you have done so far and write down every word and symbol (another name for 'character') that you have used. Make sure your list of symbols is complete.

Next to each word or symbol, write its name and what it does. If you can't find a name for a symbol in this book, then look for it online. If you do not know what a word or symbol does, then go read about it again and try using it in some code.

You may run into a few things you just can't find out or know, so just keep those on the list and be ready to look them up when you find them.

Once you have your list, spend a few days rewriting the list and double checking that it's correct. This may get boring but push through and really nail it down.

Once you have memorized the list and what they do, then you should step it up by writing out tables of symbols, their names, and what they do from memory. When you hit some you can't recall from memory, go back and memorize them again.

    
posta MrDaniel 03.10.2012 - 23:36
fonte

4 risposte

4

Potresti fare qualcosa di simile a questo in qualsiasi momento non capisci appieno ciò che hai appena letto. Sia che tu stia leggendo Wuthering Heights di Bronte o La struttura delle rivoluzioni scientifiche di Kuhn o Eroica di Beethoven o qualsiasi altra cosa ... se ci sono parti che non capisci, scrivili e scopri cosa significano. Ricevi avvisi del compilatore che non capisci quando compili il tuo programma? Scrivili insieme a spiegazioni una volta che li hai individuati.

Se scrivere tutti i simboli che non capisci in un programma Python ti aiuta, allora avrai imparato qualcosa, ed è ovviamente buono. Probabilmente non troverai la maggior parte dei programmatori che fanno esattamente questo genere di cose quando lavorano una volta che conoscono la lingua perché, beh, conoscono già la lingua.

Man mano che acquisisci esperienza in una lingua, penserai meno ai singoli simboli e più all'idea che un dato bit di codice sta esprimendo, quindi tenere una lista di simboli a portata di mano è piuttosto come tenere una frase e una punteggiatura segna a portata di mano per aiutarti nella lettura - semplicemente non è necessario.

    
risposta data 04.10.2012 - 00:05
fonte
1

Non sono un matematico, quindi avere un link disponibile per me è una vera manna per il momento.

Allo stesso modo, sono sicuro che le persone che entrano nella programmazione, o persino l'avvio di una nuova lingua, potrebbero trovarlo altrettanto prezioso di quello che trovo nell'elenco precedente.

Detto questo, in genere la ricerca di "parole chiave per gli operatori di [lingua]" di solito fornisce tutto ciò che è necessario sapere.

    
risposta data 03.10.2012 - 23:45
fonte
1

Che cosa? Sei nello sviluppo del software ma non hai una memoria eidetica?

In realtà, nonostante il mio scarso tentativo di umorismo, mentre poche persone hanno questo talento, credo che la memoria sia un fattore di successo per gli sviluppatori di software. Penso che anche l'organizzazione e la scrittura delle cose possano essere d'aiuto, ma non c'è nulla che possa sostituire l'elaborazione e l'integrazione rapida di nuovi concetti e i dettagli schizzinosi degli strumenti del nostro mestiere.

Ci sono molti angoli dai quali puoi attaccare il problema dell'apprendimento di un linguaggio di programmazione. Memorizzare le parole chiave e il loro significato ha valore. Mi trovo a fare flash card più spesso che mai perché ho bisogno di imparare cose nuove a intervalli sempre più frequenti. Se è spesso necessario fare riferimento a un libro per la programmazione della sintassi del linguaggio, sarà difficile competere con le persone che utilizzano l'intera gamma della lingua facendo raramente riferimento alla sua documentazione.

Inoltre, confronta il problema con quello di avere un buon vocabolario. Se senti una parola usata da altri, puoi fingere usando il suo contesto per dedurne il significato, ma corri un rischio se cerchi di usarlo senza conoscerne il significato preciso. È anche improbabile che tu usi una parola che non ti impegni alla memoria, a meno che tu non sia un thesaurus con il nome di toastmaster. Se desideri utilizzare un'ampia sezione della tua lingua preferita, avrai bisogno di uno studio sistematico, magari includendo la memorizzazione delle parole chiave.

Tuttavia, dovresti andare oltre. James Coplien ha un ottimo libro sugli idiomi per C ++, e ce ne sono molti altri con descrizioni di schemi e tecniche comunemente usati nella tua lingua. Se non puoi utilizzare la direttiva di formattazione della stampa o un iteratore senza doverlo cercare, ciò potrebbe limitare la tua produttività giornaliera.

Considera di creare un profilo operativo per te. Di quali affermazioni ha bisogno il tuo codice? Se usi qualcosa di frequente, probabilmente ti verrà prestata molta attenzione, ma potresti comunque voler concentrarti ulteriormente sul tempo. Se c'è qualcosa sul tuo codice che ti mette nei guai, qualcosa che tu o altri consideri una cattiva abitudine, metti più attenzione su di esso (per i candidati, dai un'occhiata a refactoring odori ).

    
risposta data 27.10.2012 - 06:28
fonte
0

Grazie Google per essere stato così bravo con i programmatori con i tuoi algoritmi di ricerca:)

C'è non c'è bisogno di esercitarsi e provare qualsiasi cosa abbia a che fare con alcune informazioni statiche , che potresti ottenere facilmente con Google su 5 sec. Non immagino nessuno sviluppo di software in fase veloce senza accesso a Internet. Avere un po 'di colla su ciò che stai cercando ti guida sicuramente verso la giusta fonte di informazioni.

Tuttavia, senza alcuna comprensione dell'argomento o delle informazioni correlate che potrebbero portare ad esso, sarebbe una follia passare solo ore davanti al motore di ricerca.

    
risposta data 03.10.2012 - 23:50
fonte

Leggi altre domande sui tag