IDS - Validazione progetto

Premessa:
In IDF 26.0 uno dei nodi di maggiore perdita di tempo (per me, ovviamente, ma credo che su progetti di grandi dimensioni sia comune) è il tempo di validazione del progetto. Questo incide sia nell’IDE che in TW.
Quello che si è visto è che la validazione degli stessi componenti viene eseguita più e più volte.

Domanda:
Anche IDS ha il problema della validazione ridondante? Se sì, credo sia uno dei punti chiave da risolvere.

Ovviamente è un parere dato dalle mie esigenze, sarebbe interessante sapere dalla community quanto questa esigenza è sentita.

2 Mi Piace

Sì, condivido appieno.

Ho fatto alcuni test in Foundation e semplicemente importando senza sorgenti il componente più base che contiene solo funzioni di libreria, componente che viene utilizzato in lungo e in largo, ho ridotto il tempo di validazione di 20 secondi, da 1:06 a 0:43.

Ovviamente questo stratagemma ha implicazioni su varie altre cose, ad esempio (non esaustivo):

  • RTC non conosce i componenti importati senza sorgenti
  • Bisogna lavorare su più progetti distinti, esportare e importare continuamente
  • Se si usa TW per allineare il DB bisogna attendere che lo faccia, o farselo a mano

Ma ha pure alcuni PRO:

  • Tempi di validazione e compilazione ridotti
  • Peso del progetto ridotto, operazioni TW più veloci

Sarebbe utile riuscire ad ottenere almeno la riduzione dei tempi di validazione e compilazioni in modo da riottenere la parte “instant” anche in quel lato dello sviluppo.

Studio devo ancora iniziare ad usarlo e volevo iniziare dopo l’estate.

1 Mi Piace

I componenti con sorgenti vengono validati al pari delle app, perché contenendo codice modificabile è necessario validare dopo una modifica o dopo l’apertura del progetto. Importare senza sorgenti ha proprio l’effetto indicato da @d.termini.

Mi stupisce però la multi-validazione, questo non dovrebbe avvenire né su IDF né su IDS.

In generale il tempo di compilazione è un fattore che ci interessa molto, su IDS il reparto tecnico sta lavorando molto per le operazioni sui progetti. L’apertura è ora sensibilmente più rapida che su IDF.

Mi interessa la questione rivalidazione. Quando compilate i componenti sono skippati dalla compilazione?

3 Mi Piace

Ciao Giuseppe

Nel mio caso sì, tutti i componenti sono skippati, di norma compiliamo solo applicazione e database.

Mi aspetto che se ho una gerarchia A usato da B+C e B usato da C e tocco solo il componente C vada a validare solo quello, se tocco B validi B e C, se tocco A validi tutto, ma così non sembra, se modifico solo C comunque rivalida 2 volte A (perché usato sia da B che da C) poi rivalida B, quindi C.

Questo comportamento lo si vede nella barra di stato sotto l’albero, vedo componente A comparire decine di volte.

Se poi A sta 2 secondi a validare, e lo rivalida 15 volte sono 28-30 secondi di troppo che potrebbero essere risparmiati.

Ah, e non abbiamo loop tra componenti, siamo stati attenti :grin:

2 Mi Piace

Ciao Giuseppe, grazie.
Mi riferivo alla compilazione completa, non ho verificato quella parziale. I componenti sono skippati e non ci sono loop tra di essi.