Puoi fare lo sviluppo iterativo in c #? [chiuso]

3

Sono principalmente uno sviluppatore Python / R. In queste lingue, il modo in cui sviluppo è quello di delineare una struttura di dati e classi, scrivere i metodi e i loro test in modalità interattiva, quindi ridefinirli in metodi e proprietà di classe e risolvere i test. Alcuni amici suggeriscono che imparo C #. Non faccio molto lavoro con le lingue complied / staticamente digitate.

Posso sviluppare una "modalità interattiva" allo stesso modo in C #, ovvero caricare alcuni dati di esempio, scrivere metodi interattivamente per assicurarti che funzionino correttamente, quindi spingere i metodi fino alle classi non appena completati? O non è questo un modo naturale di svilupparsi in un linguaggio compilato?

    
posta Carbon 10.07.2015 - 02:49
fonte

3 risposte

3

Can I develop in an 'interactive mode' the same way in C# - that is, load in some sample data, write methods interactively to ensure they're working right, then push methods up to classes as they're completed?

Non lo stesso stesso . Non ci sono davvero strumenti interattivi per C # dato che i problemi che risolvono sono abbastanza grandi da renderli non soddisfacenti (e il modello di compilazione standard non si presta ad esso).

Or is this not a natural way to develop in a compiled language?

Ogni lingua ha i suoi capricci e modi di dire. Non riesco a scrivere codice C # come faccio con C ++, e non riesco a scrivere JavaScript allo stesso modo di Perl. Avrai bisogno di adattarti quando apprendi una nuova lingua, e quel tipo di adattamento è il principale vantaggio dell'apprendimento di lingue diverse - ottieni una prospettiva più ampia di modi diversi di fare le cose.

Tutto ciò che ho detto, puoi e dovresti fare uno sviluppo iterativo in C #. Pezzi di codice più piccoli sono più facili da ragionare, più facili da testare, più facili da eseguire il debug. I meccanismi per farlo potrebbero cambiare a causa delle stranezze del linguaggio e degli strumenti disponibili.

    
risposta data 10.07.2015 - 03:21
fonte
1

Il tipo di sviluppo iterativo di cui stai parlando viene tipicamente eseguito tramite Test unitari in C #.

  1. Aggiungi un progetto Test unità alla tua soluzione.
  2. Aggiungi una classe di test dell'Unità al progetto di test.
  3. Definisci l'API pubblica che desideri creare.
  4. Scrivi un test per esercitare uno dei membri della classe.
  5. Esegui i test. Dovrebbe fallire.
  6. Implementa la funzionalità.
  7. Esegui i test. Se verde, fantastico! Se rosso, GoTo #6 .
  8. Ripeti.
risposta data 10.07.2015 - 18:12
fonte
0

Ogni volta che ho piccoli frammenti di codice che vorrei testare, personalmente mi piace usare .Net Fiddle .

Non dimenticare che puoi sempre far girare piccoli progetti come una console C # per fare cose abbastanza semplici. Questo potrebbe essere particolarmente necessario se hai bisogno di usare librerie di terze parti.

    
risposta data 10.07.2015 - 17:48
fonte

Leggi altre domande sui tag