Perché il mio IDE non compila / costruisce in background?

13

Oggi sviluppo su un computer abbastanza complesso, ha più core, unità SSD e cosa no. Tuttavia, la maggior parte delle volte che sto programmando il computer non sta facendo nulla di leasurely. Quando ho bisogno di compilare ed eseguire / distribuire un progetto alquanto complesso al meglio, ci vogliono ancora un paio di secondi. Perché? Ora che viviamo sempre di più nell'era dell'istante, perché non posso premere F5 in Visual Studio e avviare / distribuire la mia applicazione immediatamente?

Un paio di secondi potrebbero non sembrare così male, ma è ancora l'attrito cognitivo e il tempo che si aggiunge, e francamente rende la programmazione meno divertente. Quindi, come potrebbe la compilazione essere istantanea?

Bene, le persone tendono a modificare i file in diversi assembly, cosa succede se Visual Studio / The IDE eseguono costantemente la compilazione / e la costruzione di tutto ciò che ho modificato ogni volta che potrebbe essere appropriato. Diamine se volessero andare veramente avanzati potrebbero fare compilation per classe. La compilazione potrebbe non funzionare ma potrebbe semplicemente non fare nulla (tranne l'aggiunta di messaggi di errore nella finestra di errore).

Sicuramente il computer di oggi potrebbe dedicare un nucleo o due a questo compito, e se qualcuno lo trovasse noioso potrebbe essere disabilitato per opzione. So che probabilmente ci saranno migliaia di problemi tecnici e alcune fantasiose copie shadow che dovrebbero essere risolte affinché ciò sia semplice e pratico, ma sicuramente renderebbe la programmazione più semplice.

C'è qualche ragione pratica per cui questo scenario non è possibile? L'usura di scrivere continuamente i binari sarebbe troppo? Gli assembly non possono essere tenuti in memoria fino a quando non vengono distribuiti / eseguiti?

    
posta Homde 03.02.2011 - 00:49
fonte

8 risposte

6

Eclipse esegue la compilazione e la compilazione automatiche. Potresti voler controllare come lo fanno. È open source. Penso che compili ogni volta che salvi un file.

    
risposta data 03.02.2011 - 01:12
fonte
6

Hai mai pensato a quante sequenze di tasti fai prima di ottenere un file in uno stato che può essere compilato? Seriamente, guarda cosa succederebbe se provassi a compilare class f, class fo, class foo, ecc. Quando vorresti che l'IDE ti dicesse di correggere un errore di battitura piuttosto che lasciare terminare la digitazione? Mi piacerebbe sapere quanto hai riflettuto fino in fondo per creare qualcosa da zero, dato che è proprio questo il punto in cui ho potuto vedere che questo è davvero doloroso.

    
risposta data 03.02.2011 - 01:07
fonte
2

Visual Studio non ha fornito la funzione di compilazione automatica. Ma sì, alcuni IDE come Eclipse eseguono la compilazione automatica quando salvate qualsiasi file. Spero che nelle future versioni di Visual Studio Microsoft aggiungerà questa funzionalità.

    
risposta data 03.02.2011 - 12:35
fonte
1

Indovina che ... se stai usando un IDE moderno che ti dà degli avvertimenti, sta facendo una compilation in background. Ecco come sa che quegli articoli non verranno compilati così com'è.

    
risposta data 03.02.2011 - 01:28
fonte
1

È sempre possibile suddividere un progetto in componenti precompilati. Preferisco che il mio computer compili su comando. L'attrito cognitivo di un uomo è il tempo di riflessione di un altro uomo e prendi un caffè.

    
risposta data 03.02.2011 - 01:45
fonte
1

Se usi Visual Studio e sviluppi in c # o VB Reshaper puoi farlo per te. link Risparmio un sacco di tempo conoscendo tutti i punti in cui le mie modifiche all'interfaccia interrompono il codice senza doverle ricompilare manualmente.

(Anche io penso che Resharper sia la merda anche per molti altri motivi.)

    
risposta data 03.02.2011 - 16:51
fonte
1

Non lo so, mi piace dover compilare le cose. È gentile da parte mia maneggiare il mio codice e dire al computer " Hah! Vediamo che respingi QUESTO! "

Poi ricevo un errore di compilazione, correggo, quindi " Hah! Ora vediamo che respingi QUESTO! "

Quindi compila e prendo un caffè. Sentirsi bene. :)

    
risposta data 03.02.2011 - 17:00
fonte
0

Nota: questo è preso dalla mia esperienza con Netbeans (Java), quindi questo potrebbe non essere applicabile a Visual Studio

TMK questo viene fatto un po 'in background quando inizi a modificare il file. A meno che l'IDE non conosca ogni singolo errore di compilazione e come rilevarlo, suppongo che compili la classe in background e poi segnali eventuali errori.

Il problema è quando vuoi costruire il tuo intero progetto. A volte penso che non tutti gli errori possano essere catturati con questa compilazione "live", quindi ricostruisce tutto. Potrebbe anche darsi che la classe compilata live contenga informazioni extra di cui ha bisogno l'IDE ma non dovrebbe essere distribuita in un file binario.

    
risposta data 03.02.2011 - 01:15
fonte

Leggi altre domande sui tag