In generale, il refactoring è il processo di ristrutturazione e ottimizzazione del codice software esistente senza modificarne il comportamento.
Il refactoring in EcoStruxure Machine Expert fornisce funzionalità per assegnare nuovi nomi oggetto e variabile. Consente di visualizzare tutte le ubicazioni di utilizzo di oggetti e variabili modificati e rinominarli tutti contemporaneamente o solo singolarmente. È possibile configurare se e in quali ubicazioni può essere richiesta l'esecuzione della ristrutturazione. In maniera esplicita si può usare il comando .
Per ulteriori informazioni, vedere anche Opzioni, Refactoring.
Il comando
viene utilizzato per rinominare a livello globale di progetto oggetti e variabili.È disponibile nel menu contestuale se si posiziona il cursore su un nome di variabile nella dichiarazione o se si fa clic con il pulsante destro del mouse su uno degli oggetti seguenti in un navigatore:
Funzioni
POU
GVL
Metodi
Proprietà
Dispositivi
Il comando è inoltre disponibile se si selezionano conversioni delle unità di misura e variabili nell'editor per le conversioni delle unità di misura.
Il comando non è disponibile in modalità online.
Dopo aver eseguito il comando
, viene visualizzata una finestra di dialogo. che mostra le ubicazioni in cui viene utilizzato il nome interessato: nella parte destra della finestra le ubicazioni particolari, nella parte sinistra la struttura di navigazione dove è contrassegnato l'oggetto interessato.È possibile selezionare i seguenti comandi per ciascuna ubicazione singolarmente:
: rifiuta/accetta singole modifiche nella finestra di destra.
: rifiuta/accetta tutte le modifiche nell'oggetto interessato.
: rifiuta/accetta tutte le modifiche nel progetto.
Le modifiche accettate vengono visualizzate con uno sfondo giallo, quelle rifiutate con uno sfondo grigio.
Il comando
consente di dichiarare variabili in una POU ed esegue un aggiornamento automatico nei relativi diversi punti di utilizzo.È disponibile nel menu contestuale o nel menu finestra di dialogo .
se il cursore è in un editor dichiarazioni. Si apre laDopo aver confermato la finestra di dialogo
facendo clic su , si apre la finestra di dialogo comprendente la struttura del progetto sul lato sinistro. Le POU dove è utilizzata la nuova variabile sono evidenziate nella struttura. È possibile fare doppio clic su una POU per aprire la vista dettagliata nella parte destra della finestra di dialogo. In questa sezione di dichiarazione e implementazione della POU nel lato destro, le nuove dichiarazioni sono evidenziate in giallo.Prima di stabilire quali modifiche accettare e in quale ubicazione, selezionare l'opzione idonea dall'elenco sopra la sezione di dichiarazione e implementazione della POU sul lato destro:
Opzione |
Descrizione |
---|---|
|
Selezionare questa opzione per inserire il testo segnaposto standard |
|
Selezionare questa opzione per inserire un valore di inizializzazione qualora la nuova variabile sia presente nel codice di implementazione. Immettere il valore di inizializzazione nella casella di testo sul lato destro dell'opzione . |
Per accettare o rifiutare le modifiche, fare clic con il pulsante destro del mouse sulle ubicazioni modificate o eseguire i comandi nella parte sinistra o destra della finestra di dialogo, come descritto nel paragrafo Procedura di riassegnazione del nome in questo capitolo.
Esempio 1:
Con la ristrutturazione, il blocco fun
riceve una nuova variabile di ingresso input3
con il valore di inizializzazione 1. La modifica ha l'effetto seguente:
Prima della ristrutturazione:
fun(a + b, 3, TRUE);
fun(input1:= a + b , input2 :=3 , inputx := TRUE);
Dopo la ristrutturazione:
fun(a + b, 3, input3:=1, TRUE);
fun(input1:= a + b , input2 :=3 , input3:=_REFACTOR_,inputx := TRUE);
Esempio 2:
Con la ristrutturazione, il blocco fun
riceve una nuova variabile di ingresso input3
con il testo segnaposto _REFACTOR_
.
Prima della ristrutturazione:
inst(input1 := a + b, input2 := 3, inputx := TRUE);
fun(a + b, 3, TRUE);
Dopo la ristrutturazione:
inst(input1 := a + b, input2 := 3, input3 := _REFACTOR_, inputx := TRUE);
fun(a + b, 3, input3:=_REFACTOR_, TRUE);
Il comando
consente di rimuovere una variabile di ingresso o di uscita da una POU. Viene rimossa automaticamente dalla POU nei diversi punti di utilizzo.Il comando è disponibile nel menu contestuale o nel menu
se il cursore è nell'editor dichiarazione sull'identificativo della variabile da rimuovere. Viene visualizzata una finestra di dialogo con informazioni sulla rimozione. Se si conferma il messaggio, si apre la finestra di dialogo .Se si accettano le modifiche proposte nella finestra di dialogo
, le rispettive variabili di ingresso o di uscita vengono rimosse automaticamente dalla POU rispettiva nei diversi punti di utilizzo.
In una POU, la ristrutturazione rimuove la variabile di ingresso input4
. Viene rimossa automaticamente dalla POU rispettiva nei diversi punti di utilizzo.
Prima della rimozione:
inst(input1 := a + b, input2 := 3, input4 := 1, input5 := TRUE);
fun(a + b, 3, 1, TRUE);
Dopo la rimozione:
inst(input1 := a + b, input2 := 3, input5 := TRUE);
fun(a + b, 3, TRUE);
Il comando
ha effetto solo sull'editor CFC e sull'editor FBD/LD/IL. Corrisponde ai comandi e .Il comando
aggiorna i collegamenti di ingresso e di uscita della POU, nei diversi punti di utilizzo, in base alla dichiarazione della POU corrente.È disponibile nel menu contestuale o nel menu
se il cursore si trova sul nome della POU, nella prima riga della dichiarazione della POU o nell'editor dispositivi.Il comando VAR_INPUT, VAR_OUTPUT o VAR_IN_OUT.
consente di modificare l'ordine delle dichiarazioni delle variabili negli ambitiEsempio:
VAR_INPUT
invar2 : INT;
invar1 : INT;
in : DUT;
bvar : BOOL;
invar3 : INT;
Per cambiare l'ordine delle dichiarazioni, procedere come indicato:
Passo |
Azione |
---|---|
1 |
Fare clic con il pulsante destro del mouse sulla parte di dichiarazione ed eseguire il comando .Risultato: la finestra di dialogo VAR_INPUT. si apre con un elenco di variabili |
2 |
Trascinare la voce invar1 : INT; nella posizione prima della voce invar2.. Risultato: la dichiarazione invar1 è in cima. |
3 |
Fare clic su per chiudere la finestra di dialogo.Risultato: viene visualizzata la finestra di dialogo . Gli elementi interessati cono contrassegnati in giallo. |
4 |
Fare clic su per accettare il nuovo ordine dei parametri del blocco funzione. Tenere presente che l'ordine modificato dei parametri viene riflesso anche negli usi di chiamata alle POU. |
La ristrutturazione consente di rinominare le variabili (mediante
) come indicato nell'esempio seguente.Come prerequisito per questo esempio, deve essere disponibile un blocco funzione fb_A con un ingresso iA.
Passo |
Azione |
Commento |
---|---|---|
1 |
Eseguire il comando . |
Risultato: si apre la finestra di dialogo . |
2 |
Selezionare la categoria a sinistra. |
– |
3 |
Nella sezione , selezionare le opzioni e . |
– |
4 |
Fare doppio clic sul blocco funzione fb_A. |
– |
5 |
Selezionare una variabile nella dichiarazione di fb_A, ad esempio, iA |
Come alternativa, è possibile posizionare il cursore prima o nella variabile. |
6 |
Eseguire il comando . |
Come alternativa, utilizzare la scelta rapida + .Risultato: si apre la finestra di dialogo iA. . Vengono visualizzate le impostazioni della variabile |
7 |
Modificare il iA in iCounter_A. e |
Risultato: si apre la finestra di dialogo . Le POU dove è utilizzata la variabile sono evidenziate nella struttura. |
8 |
Fare clic su per applicare il nuovo nome e per chiudere la finestra di dialogo. |
– |