Algoritmo per lo sviluppo dell'apprendimento [chiuso]

16

Questa è una domanda abbastanza generale. Conosco un po 'di Perl e Python e sto cercando di imparare la programmazione in modo più approfondito in modo che, una volta capito, posso iniziare a sviluppare applicazioni e quindi siti web.

Mi piacerebbe conoscere un algoritmo (sequenza di passaggi :)) che potrebbe descrivere il mio approccio verso l'apprendimento della programmazione in generale. Ho postato piccole domande su Perl / Python e ho ricevuto un grande aiuto da parte di tutti.

Nota: - Non ho fretta di imparare. So che ci vuole tempo e va bene.

Fornisci eventuali suggerimenti che ritieni validi. Inoltre, per favore non spingermi ad imparare Lisp, Haskell ecc. - Sono un principiante.

    
posta user9057 03.12.2010 - 11:24
fonte

5 risposte

28

L'algoritmo in 11 passaggi per l'apprendimento di un nuovo linguaggio di programmazione

Al momento sono nel processo di apprendimento di Lisp , e raccomanderei il seguente algoritmo:

  1. Chiedete in giro se la lingua vale la pena di imparare e dove si possono trovare buone risorse. Se le risposte positive alla lingua sono fornite da esperti, procedi al passaggio 2.
  2. Crea un ambiente di programmazione iniziale. Mantienilo semplice: editor di testo e compilatore / interprete. Il minimo indispensabile. Prendi in considerazione un account utente specifico sul tuo computer con una combinazione di colori speciale per attirare il cambiamento di mentalità.
  3. Crea il "Ciao, mondo!" applicazione.
  4. Impara la sintassi generale e le istruzioni di controllo (if-then-else, repeat-until etc). Crea sandbox per verificare casi di controllo semplici (valutazioni vero / falso, ecc.). Prova ogni tipo primitivo (int, double, string ecc.). Esegui calcoli valutari. Il gioco di indovinelli di numeri (come suggerito da @Jeremy ) va bene per questo.
  5. Crea classe (se applicabile) con diversi metodi / funzioni. Effettua chiamate tra le funzioni. Applica le dichiarazioni di controllo.
  6. Scopri matrici e raccolte. Crea esempi adeguatamente complessi che creino array e raccolte di ciascuna delle classi / funzioni / primitive disponibili per te
  7. Impara il file IO. Crea esempi di lettura, manipolazione e scrittura di file binari e basati su caratteri.
  8. Fai più domande sulla programmazione idiomatica all'interno del linguaggio (puntatori, macro, monadi, chiusure, quadri di supporto, ambienti di costruzione, ecc.).
  9. Scegli (o adatta l'IDE esistente) per lavorare nell'idioma consigliato.
  10. Scrivi una varietà di applicazioni che ti piacciono (o il tuo capo).
  11. Dopo 1 anno torna al passaggio 1 per un'altra lingua, mantenendo il tuo interesse per quello che hai appena imparato.
risposta data 03.12.2010 - 15:12
fonte
12
while (stillLearning)
{
    read(some);
    practice(lots);
}
    
risposta data 03.12.2010 - 15:22
fonte
2

Per ogni lingua che vuoi imparare L

  • Passaggio 1: impara la sintassi di L .
  • Passaggio 2: scrivi un compilatore per L nella tua lingua preferita.
  • Passaggio 3: scrivi un compilatore per la tua lingua preferita in L
  • Passaggio 4: scrivi un grande progetto in modo idiomatico in L
  • Bonus: assicurati che il risultato del passaggio 2 sia compatibile con il risultato del passaggio 4.

Questo dovrebbe coprirlo, tornare indietro con un rapporto sui progressi tra 10 anni .

Se tutto ciò che cerchi è imparare a fare sviluppo web e conosci già Perl e Python, ne hai abbastanza per cominciare. Direi iniziare ad apprendere i dettagli di Apache (e in particolare mod_perl e mod_python ), quindi esercitarsi. Forse scegli un libro o due sulla programmazione CGI, sulla comunicazione di rete e così via, piuttosto che su manuali specifici per la lingua.

Come nota finale, essere un principiante non è un motivo per non apprendere il Lisp. Vai a controllare SICP e conferenze video . Nessuno dei due assume alcun livello di esperienza con lo sviluppo o con i computer. In realtà per citare l'introduzione alle lezioni video

I'd like to welcome you to this course on Computer Science. [Writes it on the board] Actually that's a terrible way to start. Computer science is a terrible name for this business. First of all, it's not a science [crosses out "science"]. It might be engineering or it might be art. [...] It's also not really very much about computers [crosses out "computer"]. And it's not about computers in the same sense that physics is not really about particle accelerators. And biology is not really about microscopes and petri dishes. -Hal Abelson

    
risposta data 03.12.2010 - 16:05
fonte
-2

Non voglio dire molto, tranne due passaggi.

  1. Apprendi struttura dati
  2. Scopri l'introduzione all'algoritmo

P.S. La programmazione è il tuo compito quotidiano.

    
risposta data 28.02.2011 - 07:32
fonte
-2

Il modo migliore è imparare le basi / i fondamenti di un linguaggio di programmazione e poi entrare in un'azienda come uno sviluppatore junior (appaltatore). Questo sarà il modo più veloce per imparare e guadagnare denaro per il tuo tempo;)

    
risposta data 31.01.2014 - 00:02
fonte

Leggi altre domande sui tag