L'avvio di una applicazione è fatta di 2 fasi:
- creazione dei sorgenti
- compilazione e avvio del web server
La prima fase, normalmente, richiede pochi secondi. La seconda fase, dipende dalla complessità del progetto. Mi spiego meglio...
In C# InDe lancia cassini e aspetta che questo risponda ad una chiamta
http://127.0.0.1:[porta]/?In Java InDe lancia ANT.BAT e aspetta che questo processo sia terminato per sapere come è andata la compilazione.
In entrambi i casi, si potrebbe anche controllare periodicamente con un timer l'esito della compilazione senza aspettare in un "loop stretto". Però, dovrei capire meglio come dovrebbe funzionare.
Io avvio la compilazione, che parte e va per la sua strada. InDe controlla periodicamente l'esito e se ha successo non deve fare altro se non aprire un browser (in Java... in C# ci pensa Cassini). Ma se la compilazione è fallita? Come informo il programmatore? Con un messaggio nella message window? Con una message box che dice "l'ultima compilazione, avviata 3 minuti fa, è fallita?". Inoltre non capisco come dovrebbe funzionare l'interruzione della compilazione... Come l'utente dice "stoppa la compilazione"? InDe dovrebbe sapere che c'è una compilazione in corso e non permettere una nuova compilazione ma solo lo stop della stessa? Vabbè, vorrei pensarci un po' di più...
Ho creato l'attività NPQ02690 per tenere conto di questa conversazione. Quando verrà valutata, potrai seguirne l'andamento con Instant Developer Roadmap.