Qual è il modo migliore per utilizzare una console, quando in via di sviluppo?

StackOverflow https://stackoverflow.com/questions/32537

  •  09-06-2019
  •  | 
  •  

Domanda

Per i linguaggi di scripting, che cosa è il modo più efficace per utilizzare una console, quando in via di sviluppo?Ci sono modi per essere più produttivi con una console di un "compilare ed eseguire" solo la lingua?

Aggiunta di un chiarimento:Sto pensando di più lungo le linee di Ruby, Python, Boo, etc.Lingue che vengono utilizzati per la piena soffiato apps, ma anche un modo per eseguire piccoli snippet di codice in una console.

È stato utile?

Soluzione

Sto pensando di più lungo le linee di Ruby, ...

Bene per il Rubino irb prompt interattivo è un grande strumento per la "pratica" qualcosa di semplice.Qui ci sono le cose che vi ho citato su irb per dare un'idea dell'effettivo utilizzo:

  • Automazione.È consentito un .irbrc file che verrà eseguito automaticamente quando si avvia irb.Che significa che è possibile caricare il vostro preferito librerie o fare qualunque cosa si vuole in piena Ruby automaticamente.Per capire cosa intendo check out alcuni di quelli a dotfiles.org.

  • Il completamento automatico.Che anche consente di scrivere codice più facile.Non ricordo la stringa metodo per rimuovere i ritorni a capo? "".ch<tab> produce chop e chomp. NOTA:devi abilitare il completamento automatico per irb te

  • Dividere e Conquistare.l'irb piccole cose davvero facile.Se si sta scrivendo una funzione per modificare le stringhe, la possibilità di testare il codice in modo interattivo a destra nella finestra di dialogo consente di risparmiare un sacco di tempo!Per esempio si può solo aprire irb e avviare l'esecuzione di funzioni su un esempio di stringa e sono funzionanti e testati codice già pronto per la vostra libreria/programma.

  • Imparare, Sperimentare, e Hacking.Qualcosa del genere sarebbe prendere un tempo molto lungo per testare in C/C++, anche Java.Se hai provato a testare il loro tutto in una volta, si potrebbe seg fault e ricominciare da capo.

    Qui sto solo imparando il String#[] la funzione funziona.

    joe[~]$ irb
    >> "12341:asdf"[/\d+/]
    # => "12341"  
    >> "12341:asdf"[/\d*/]
    # => "12341"  
    >> "12341:asdf"[0..5]
    # => "12341:"  
    >> "12341:asdf"[0...5]
    # => "12341"  
    >> "12341:asdf"[0, ':']
    TypeError: can't convert String into Integer
      from (irb):5:in `[]'
      from (irb):5
    >> "12341:asdf"[0, 5]
    # => "12341"  
    
  • Test e benchmark.Ora che sono bello e di facile esecuzione. Qui è l'idea di qualcuno di emulare Unix time funzione per un rapido riferimento.Basta aggiungere alla tua .irbrc file e la sua sempre lì!

  • Il debug - Non ho usato questo molto di me, ma c'è sempre la possibilità di eseguire il debug di codice come questo.O tirare fuori un po ' di codice ed eseguirlo in irb per vedere di cosa effettivamente facendo.

Sono sicuro che mi sto perdendo alcune cose, ma mi ha colpito sul mio preferito punti.Si hanno veramente a zero limitazione conchiglie quindi sei limitato solo da ciò che si può pensare di fare.Ho quasi sempre un paio di gusci di esecuzione.Bash, Javascript, Ruby irb per citarne alcuni.Io li uso per un sacco di cose!

Altri suggerimenti

Penso che dipende dalla console.L'utilità di una console CMD in windows secchi rispetto a una console Powershell.

Lei non ha detto quale sistema operativo stai usando, ma su Linux ho usato una finestra a schede manager (wmii) per un anno o giù di lì e ha cambiato radicalmente il modo di utilizzare le applicazioni console o altro.

Mi capita spesso di avere quattro o più console e altre applicazioni su un desktop virtuale e con wmii non ho a giocherellare con il ridimensionamento delle finestre di linea di tutto proprio così.Posso banalmente ordinati in colonne verticali, impilare fino in verticale, li condividono la stessa quantità di spazio verticale o orizzontale, e spostarli tra le schermate.

Dici di aprire due console sul tuo desktop.Si potrebbe ottenere questo (con le scuse per la cronkey opere d'arte):

 ----------------
|                |
|       1        |
|                |
 ----------------
 ----------------
|                |
|       2        |
|                |
 ----------------

Ora li voglio side-by-side.Io invio SHIFT-ALT-L a finestra 2 per spostarlo a destra e creare due colonne:

 -------  -------
|       ||       |
|       ||       |
|   1   ||   2   |
|       ||       |
|       ||       |
 -------  -------

Ora potrei aprire un'altra console e ottenere

 -------  -------
|       ||   2   |
|       ||       |
|       | -------
|   1   | -------
|       ||   3   |
|       ||       |
 -------  -------

Poi voglio visualizzare temporaneamente console 3 a tutta altezza, in modo che I premi ALT-s in esso e ottenere:

 -------  -------
|       | -------
|       ||       |
|   1   ||   3   |
|       ||       |
|       ||       |
 -------  -------

Console 2 e 3 sono accatastati ora.

Potrei anche dare a windows tag.Per esempio, in console 2 potrei dire ALT-SHIFT-twww+dev e che la console sarebbe visibile il 'www' e 'dev' i desktop virtuali.(I desktop creato se non esiste già.) Ancora meglio, la console può essere in una diversa configurazione visiva (ad esempio, pila e a schermo intero) su ciascuna di quelle desktop.

Comunque, non posso fare a schede window manager giustizia qui.Non so se è rilevante per il tuo ambiente, ma se si ottiene la possibilità di provare questo modo di lavorare, probabilmente non guardare indietro.

Ho aggiunto un collegamento al mio ctrl-Maiusc-C combinazione di tasti per richiamare il mio Visual Studio 2008 Console.Solo questo mi ha salvato innumerevoli secondi quando ha bisogno di registrare una dll o fare qualsiasi altro comando.Immagino che se si leva con un altro strumento di comando e si può avere qualche enorme aumento della produttività.

Stai scherzando?

Nel mio ambiente Linux, la console è la mia linfa vitale.Io sono esperto in bash scripting, quindi per me una console è molto simile seduto in un REPL per Python o Lisp.Si può letteralmente fare nulla.

Io in realtà la scrittura di strumenti utilizzato dal team in bash, e la console è il luogo ideale per fare sviluppo.Ho davvero solo bisogno di un editor come un archivio di backup per le cose come le ho li a capire.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top