Modo efficace per acquisire conoscenze pratiche [chiuso]

1

Attualmente mi trovo vicino alla fine del mio primo anno di laurea in CS e sono rimasto deluso dalla mancanza di codice che mi è stato chiesto di fare (una sola unità).

Sono fondamentalmente alla ricerca di un modo efficace per acquisire conoscenze pratiche, ma non sono sicuro dove cercare l'esperienza da una prospettiva per principianti

.

    
posta Switchkick 24.05.2012 - 05:32
fonte

5 risposte

7

Non ho ottenuto l'intera immagine fino a quando non ho preso i sistemi operativi, i sistemi di gestione dei database, le reti di computer e alcuni corsi di programmazione.

Inizia con l'apprendimento di un linguaggio di programmazione di tua scelta. (Ho iniziato con C e ho proceduto al C ++, che è molto potente)

Realizza progetti semplici che richiedono algoritmi non banali come quelli di ProjectEuler.

Dopo esserti adattato al linguaggio e agli algoritmi comuni, passa alla programmazione della GUI come Windows Form, WPF o Qt.

Acquisisci esperienza con GUI e applicazioni guidate da eventi e scopri di nuovo sulle librerie GUI multipiattaforma come Qt.

Potresti voler sviluppare alcuni piccoli giochi per divertimento.

Quindi vuoi conoscere i processi, i thread, il multi-threading, la programmazione di database, la programmazione di rete e così via. Imparerai la maggior parte di questi nei tuoi corsi di CS.

Lo sviluppo web è un ottimo modo per espandere le tue competenze in quanto richiede sia lo sviluppo lato server che le informazioni di rete come HTTP.

Prenditi il tuo tempo, divertiti a programmare. Non deprimerti quando vedi il codice che non capisci nulla.)

    
risposta data 24.05.2012 - 10:23
fonte
8

Ci sono alcune cose che puoi fare.

  • Guarda siti come Project Euler . Hanno problemi di esempio da affrontare. Questo ti aiuterà a sentirti più a tuo agio con il codice.
  • Pensa ad alcuni piccoli programmi che puoi scrivere e praticare.
  • Fai domanda per stage presso negozi di sviluppo software locali. Questo sarà probabilmente il modo migliore per ottenere un'esperienza di sviluppo nella vita reale con un sacco di persone esperte per aiutarti. Tuttavia, ottenere uno stage senza esperienza può essere difficile ...
risposta data 24.05.2012 - 05:59
fonte
8

Considera la possibilità di programmare una soluzione per qualcosa per cui desideri una soluzione, qualcosa che ti motiva a scavare nel problema e a risolvere i problemi di sviluppo del software e qualsiasi altra cosa accada. Pensa a qualcosa di utile / pratico per te o per qualcuno che conosci.

Non deve essere complesso. E se un programmatore esperto sarebbe in grado di risolverlo in 15 minuti, a chi importa. Imparerai a decidere come utilizzare il linguaggio di programmazione, a configurare un ambiente di lavoro per quella lingua, a iniziare a scrivere il codice, a testare e renderlo utilizzabile per qualcun altro.

Se non hai esperienza con le GUI di codifica, l'unittesting, i database ecc. Lasciali fuori per ora. Crea una versione da riga di comando del tuo programma. Usa le dichiarazioni di stampa per tenere traccia di ciò che sta accadendo a casa su dove le cose vanno male. Leggi i tuoi dati da un semplice testo, quindi puoi usare un editor per creare l'input per il programma.

Se conosci un po 'di elettronica: pensa di fare qualcosa con un Arduino. Recentemente ho implementato un telecomando per un waterpump usando SMS con questo. Ho fatto il codice per oltre 25 anni ma è stato divertente e soddisfacente avere un programma che faceva qualcosa di concreto come rispondere ai comandi del mio telefono. Il divertimento è un grande motivatore per completare il progetto e renderlo un'esperienza di apprendimento utile. Se il progetto è semplice o meno, importa molto.

Se non hai mai usato un sistema di controllo di revisione, non hai sudato: fai copie del tuo progetto (fonte, dati) su backup_00, backup_01 ecc. Quindi puoi tornare a qualcosa che ha funzionato, una volta che hai sbagliato (lo farai) .

Per qualsiasi elemento di sviluppo del software c'è always una soluzione migliore, anche se l'hai già migliorata. Trovare l'equilibrio su dove smettere di migliorare è una cosa di esperienza. Per ora non preoccuparti di miglioramenti ed efficienza, cerca solo di fare le cose. Imparerai a migliorare lungo il cammino.

Se conosci qualcuno che può e ti vuole aiutare quando sei bloccato, chiedi loro se sono disposti a farlo. È una cosa evolutiva umana sentirsi soddisfatti come esseri umani quando si collabora (e ciò produce risultati positivi nel sito Web di stackexchange). Se non conosci nessuno, vedi se c'è una vivace comunità online, dove ci sono persone che sono disponibili ad aiutare.

Alla fine dai un feedback su come sono andate le cose per te. Qui o dovunque hai chiesto aiuto.

    
risposta data 24.05.2012 - 06:45
fonte
8

Due risposte e qualcuno deve ancora menzionare progetti open source .

Github e Bitbucket, in particolare, hanno progetti che vanno da piccoli script a mostruose applicazioni aziendali, in un'ampia varietà di lingue, utilizzando un'ampia varietà di tecnologie.

Il mio suggerimento è Just Do It. Lasciati coinvolgere da un progetto che attira il tuo interesse (prova a trovarne uno ben documentato e dotato di una comunità decente, ovvero un canale IRC attivo, soprattutto se sei un principiante alle prime armi). Sì, sarà frustrante e potresti pensare di essere sopra la testa in molte occasioni. Ma è di gran lunga il modo migliore per imparare imo (per non parlare del fatto che avrai un'esposizione al lavoro di squadra e al controllo del codice sorgente distribuito).

Quindi entra lì, correggi alcuni bug;)

    
risposta data 24.05.2012 - 08:45
fonte
1

L'unica cosa bella del mondo di oggi è l'accesso a tonnellate di risorse su Internet e il fatto che puoi sempre ottenere un esperto per aiutarti a utilizzare in remoto soluzioni su misura legittime che si adattino al tuo budget e alle tue esigenze. Quindi, se stai semplicemente cercando aiuto programmazione o un tutor personale per aiutarti nei tuoi progetti di corso, tutto ciò che devi sapere è il posto giusto dove andare !!

    
risposta data 29.05.2013 - 08:21
fonte

Leggi altre domande sui tag