Esiste un metodo pratico e pratico per imparare un altro linguaggio di programmazione? [chiuso]

2

A causa di circostanze piuttosto strane, ho solo fino a lunedì per imparare (almeno) le basi della programmazione PHP e .NET. Sono già abbastanza competente (anche se c'è molto margine di miglioramento) in C ++ quindi sento di avere già alcuni dei concetti inchiodati, ma ho bisogno di entrare nelle due lingue in un po 'più in profondità in un tempo molto breve telaio.

Purtroppo non avrò tempo per comprare libri, quindi dovrò usare esclusivamente risorse online, sono più un "do-er" quindi qualsiasi modo per testare le mie abilità in un modo pratico sarebbe un enorme vantaggio : -)

    
posta Tamsin 30.11.2012 - 19:49
fonte

7 risposte

11

Bene, la buona notizia è che sai già come programmare. La stragrande maggioranza di questi trasferimenti di conoscenza tra le lingue.

Leggi gli articoli wiki su entrambi. Ti direbbe le cose di base che potresti perdere. Mi piace come .NET non è un linguaggio.

I won't have time to get any books

Sì, lo fai. Hai un intero weekend. Stop a tutto il resto. Swing da un negozio. Compra due. Leggi come vuoi dire.

E questa è la parte più importante: CODE SOME PHP (con .NET). Colpisci i tutorial, crea alcuni piccoli progetti, colpisci alcuni muri, registra alcuni bug, risolvi questi bug e supera la tua ignoranza. Porta alcuni dei tuoi programmi C ++ in PHP. Hai già risolto come risolvere il problema, questo è solo la traduzione. Se vuoi imparare come programmare in PHP, il miglior consiglio che posso darti è di andare in PHP.

Saprai "PHP" entro lunedì? No certo che no. Chi stai prendendo in giro? E non mentire a nessuno affermando il contrario. Ma avrai più conoscenza del venerdì. E avrai imparato molto.

    
risposta data 30.11.2012 - 20:12
fonte
3

La tua unica speranza è scaricare il SAMS ti insegnerà C # in 24 ore e SAMS ti insegni PHP in 24 ore e-book e lettura di circa 1200 pagine nelle prossime 60 ore. Avrai circa 3 minuti per scremare e capire ogni pagina, assumendo che tu non mangi o non dorma.

Seriamente, questo è un compito impossibile. Puoi imparare la sintassi della lingua in modo rapido e persino provare alcuni semplici esempi, ma PHP è complicato dal fatto che nessuno scrive più PHP e .NET (in genere in C #) è inutile senza comprendere la gigantesca libreria di classi standard. Quando ero un responsabile dello sviluppo, di solito pensavo che un programmatore Java buono poteva prendere C # abbastanza per essere utile in circa 4 settimane.

    
risposta data 01.12.2012 - 01:26
fonte
2

È difficile rispondere senza sapere quali sono le basi.

In più di un ragazzo C #, quindi questo è orientato a C #, ok?

Non piovere sulla tua parata, ma c'è un sacco di cose da sapere.

Stai parlando solo della lingua? O stiamo parlando di come codificare un DB? Che ne dici di threading? O gli approcci diversi UI - WPF vs WinForm?

Supponendo che tu abbia anche chiesto informazioni su PHP, presumo C # come parte di un'app web. In questo caso, è WebForms o MVC? Se MVC, quale?

Ad ogni modo:

C # Fundamentals - Part 1

C # Fundamentals - Part 2

C'è di più su PluralSight e hanno una prova gratuita.

C'è anche Tekpub con alcuni contenuti gratuiti (ASP.Net e MVC se non sbaglio). E anche LearnVisualStudio.Net - ma LVS.Net sarà probabilmente troppo di base per te.

Per C #, ti suggerisco almeno di conoscere la sintassi e cosa fanno i frammenti VS.

Se fossi in te, mi concentrerei su quanto hai appreso in un determinato periodo di tempo anziché sulla conoscenza effettiva.

    
risposta data 01.12.2012 - 17:02
fonte
2

Per una buona notizia è che molte lingue condividono lo stesso background concettuale. Questo è particolarmente vero se si guardano linguaggi procedurali o orientati agli oggetti - per fortuna, PHP e molti dei linguaggi .NET (C #, VBA) sono esempi di questi gruppi. Tuttavia, ti consigliamo di distinguere la lingua (ad es. C #) e la piattaforma (ad es. .NET) - quelli non sono gli stessi. La piattaforma è una raccolta di librerie (funzioni) che in genere possono essere utilizzate da molte lingue. Conoscere a fondo una piattaforma richiede generalmente più tempo rispetto a fare lo stesso per una lingua.

Detto questo, e considerando la tua domanda iniziale, permettimi di proporre il seguente approccio rapido e pratico all'apprendimento di un nuovo linguaggio di programmazione:

  • Impara / leggi sulle strutture statiche del linguaggio (ad esempio tipi di dati, funzioni, procedure, classi, interfacce, ecc.).

  • Guarda i costrutti di controllo (if / then, case / switch, while / until etc.)

  • Familiarizza con lo stile tipico di come viene espressa la lingua (sfogliando le esercitazioni o il codice effettivo).

  • Prova ad associare ciascuno dei costrutti alla lingua (s) che conosci già. Questo ti darà una buona idea su dove concentrarti, ad es. concetti che sono specifici della nuova lingua che stai cercando di imparare.

La cosa più importante, tuttavia, è il passaggio successivo:

  • Prova a risolvere un problema nella nuova lingua. Questo può essere un problema di tua scelta che conosci la soluzione da un punto di vista concettuale - ad es. implementare un algoritmo, creare un'applicazione web, scrivere un servizio web, ecc. La parte importante qui è imparare a utilizzare effettivamente la lingua, i suoi strumenti associati e gli ambienti run-time.

Tieni presente che tutto ciò semplicemente ti aiuterà a iniziare e non sostituirà l'esperienza reale. È attraverso l'esperienza che imparerai come utilizzare al meglio la funzione di un linguaggio di programmazione, che ovviamente richiede più tempo ...

    
risposta data 01.12.2012 - 17:51
fonte
1

Penso che leggere libri di computer pagina per pagina sia per lo più una perdita di tempo. I libri di tecnologia più specifici che ho visto, se non tutti, sono pieni di lanugine e grassi inutili per farlo vendere a un prezzo più alto in quanto vi è una corellazione tra il prezzo e il numero di pagine (IMO, la relazione dovrebbe essere invertita per incoraggiare la brevità ).

Il mio consiglio è di trovare un buon tutorial pratico online, che sono sicuro che sia abbondante per PHP, dare un calcio indietro e imparare le basi mentre si costruisce un'applicazione pilota, non la teoria della lettura. Quello che trovo attualmente mancante online (o forse un'opportunità da una prospettiva diversa) è una boutique di tutorial online, in cui è possibile scegliere tra molte opzioni e tecnologie. E dove gli utenti potevano creare e pubblicare le proprie esercitazioni. Penso che sarebbe bello, ma non ne conosco nessuno esistente.

Ma se sei bravo con altre lingue, sono sicuro che la curva di apprendimento sarà delicata per te. Buona fortuna.

    
risposta data 30.11.2012 - 21:33
fonte
0

Suggerisco il metodo di apprendimento del progetto . Trova un piccolo progetto che conosci che puoi fare (crea un semplice sistema di blog, non creare un framework approfondito, ecc.):

  • Crea le basi.
  • Aggiungi qualcosa di nuovo all'ambito del progetto che non sai come fare.
  • Impara e implementalo.
  • Ripeti.
risposta data 30.11.2012 - 21:20
fonte
-4

Francamente, se conosci il C ++ allora conosci C, e quindi praticamente conosci PHP. Devi imparare le basi del linguaggio che sono diverse, come l'ambito e i tipi, e devi conoscere l'ambiente in cui PHP viene eseguito, come le variabili POST, e devi conoscere le librerie, come espressioni regolari e sapone.

Dovresti anche sapere come farlo funzionare, quindi installa xampp e scrivi del codice per fare almeno ciao mondo.

Non hai bisogno di libri per tutto questo - php.net ha la maggior parte di esso pronto per te come materiale di riferimento. Il resto può essere appreso da qualsiasi sito che google ritorna da "PHP tutorial"

Modifica: La domanda dell'OP non è "come faccio a diventare abile in PHP", è "come imparo quel tanto che basta per trovare la strada per un lavoro" ... La sintassi PHP è molto simile a C, nessuno può negarlo. Non ha bisogno di conoscere le tecniche OO o i framework MVC o qualcosa del genere - solo le basi assolute, e quelle sono procedurali, proprio come C (non intendevo quello, intendevo la sintassi come C)

    
risposta data 30.11.2012 - 20:21
fonte

Leggi altre domande sui tag