Come ci si sposta oltre gli esempi di codice senza un progetto? [chiuso]

2

Attualmente sto imparando Scala e trovo un blog mentale su come procedere a un livello in cui posso usare Scala ogni giorno oltre i normali esempi. Non ho in mente un progetto particolare per quello che posso fare.

Questo in realtà non è specifico per Scala, solo in generale come fai a diventare esperto in una lingua tramite l'autoapprendimento senza fare / avere un progetto in mano?

    
posta Low Kian Seong 13.01.2014 - 07:31
fonte

6 risposte

7

Ti sei impostato un piccolo progetto , a volte ingrandendo un esempio di codice esistente, a volte riflettendo sui punti di forza della lingua, ad esempio, se stai imparando una lingua progettata per l'estrazione e il reporting pratico, mirare ad un qualche tipo di rapporto di estrazione, ad esempio un analizzatore di log.

Il fatto è che qualsiasi cosa ti spinge a prendere il tuo peso in una determinata lingua è un progetto. Anche se l'obiettivo del progetto è "learn me this language".

Quindi con Scala, potresti provare con un semplice servizio Web che produce / consuma pacchetti XML (ci sono piccoli esempi per questo, puoi iniziare studiandoli e legandoli insieme).

Avrai voglia di iniziare in piccolo perché questo tipo di progetto, con un obiettivo non definito troppo, tende a giocare a palle di neve; ad esempio potresti decidere di sviluppare sia un servizio web che il suo cliente. Questo valanga non è una brutta cosa se tienilo sotto controllo, cioè non mordi più di quanto puoi masticare in qualsiasi momento. Potresti essere tentato di aggiungere query al database prima di essere sicuro delle tue competenze di "gestione dei servizi web"; se lo fai, rischi di raccogliere una serie schiacciante di bug e di crescere insoddisfatto e disilluso riguardo alla lingua e / o alle tue capacità. Meglio restituire dati di mock-up e segnaposto per tutte le cose di cui non sei ancora sicuro; che ti darà anche una misura di quanti argomenti devi ancora coprire.

Questo, tuttavia, è solo il mio punto di vista. Potresti volere o anche solo bisogno di trovare la tua strada, quella che fa al caso tuo.

    
risposta data 13.01.2014 - 08:01
fonte
3

Se hai già (piccoli) progetti in un'altra lingua che sono adatti anche alla tua nuova lingua. Prova a riscrivere uno di questi progetti nella tua nuova lingua e poi a seguire il più possibile le migliori pratiche della tua nuova lingua.

Questo aiuterà a illustrare le differenze nel modo di pensare che ti serve tra due diversi approcci. E aiuta a evitare l'insidia di "programmare il vecchio modo in una nuova lingua". Questo mi ha aiutato molto a non usare contrasti "vecchi". Che succederebbe se provassi un nuovo progetto in una nuova lingua.

    
risposta data 13.01.2014 - 08:48
fonte
2

Puoi inventare un piccolo progetto da solo e iniziare a farlo. Inizialmente non andare per progetti grandi o hifi. Un piccolo progetto semplice sarà sufficiente. Inizia a crearlo usando sempre più concetti di quel linguaggio.

    
risposta data 13.01.2014 - 11:54
fonte
2

Considero sempre la lettura del codice di altre persone una parte importante dell'apprendimento su come programmare sia in generale che in una lingua specifica. Quindi consiglierei trovare un progetto open source che usi Scala e faccia qualcosa che potrebbe essere interessante per te e cercare di contribuire ad esso .

Ogni progetto open source ha bug non modificati che saranno felici di ricevere aiuto e alcuni di loro saranno sicuramente abbastanza facili da risolvere. In questo modo imparerai a capire il codice Scala scritto da altri (lingue con un alto livello di astrazione come Scala tendono ad essere difficili a questo proposito) e vedrai esempi reali, non inventati, come funzionano bene le varie funzioni fuori in termini di leggibilità e manutenibilità. Discuterai anche dei tuoi cambiamenti con le altre persone coinvolte nel progetto e speriamo di ottenere qualche utile guida in questo modo.

Quando inizi il tuo progetto, avrai un periodo di scrittura delle basi quando non avrai nulla da mostrare e nessuno userà il tuo lavoro e se non avrai molto tempo, non potrai mai vedere come funziona in pratica. Unendoti a un progetto esistente puoi saltare questa fase e puoi fare una differenza pratica anche se ti trovi con poco tempo a disposizione.

    
risposta data 13.01.2014 - 15:59
fonte
1

A volte può essere difficile avviare un progetto o contribuire a progetti open-source quando si ha poca esperienza. Il mio suggerimento sarebbe di trovare un framework che usi Scala e inizi a lavorare con quello. So che Play Framework utilizza Scala e ci sono un sacco di tutorial e video là fuori per quel quadro.

Inizia semplicemente creando un sito semplice che faccia alcune operazioni CRUD utilizzando Play Framework. Ciò ti farà vivere un po 'di esperienza senza dover costruire tutto da zero.

    
risposta data 13.01.2014 - 16:16
fonte
0

Nulla sostituisce un vero progetto, ma trovo che Code Katas sia un buon modo per sporcarsi le mani risolvendo problemi reali con la lingua. La cosa bella è che molte soluzioni sono disponibili online in modo da poterle confrontare con le tue e, si spera, imparare da queste. Ti renderà più familiare con un ambiente di test.

Ci sono alcuni specifici di Scala katas le piattaforme dove puoi inviare le tue soluzioni e ricevere feedback su di loro.

    
risposta data 30.01.2014 - 10:54
fonte

Leggi altre domande sui tag