refactoring
In generale, il refactoring è un metodo per migliorare la progettazione di software già scritto senza modificarne il comportamento.
rifattorizzare CODESYS offre funzionalità per rinominare i nomi di oggetti e variabili e per aggiornare gli I/O di blocco. È possibile visualizzare tutte le posizioni in cui vengono utilizzati gli oggetti e le variabili rinominati e quindi rinominarli nel loro insieme o selezionati individualmente. Inoltre, puoi configurare se e in quali punti CODESYS Ti chiede automaticamente di refactoring.
Rinominare le variabili globali
Presupposto: è stato aperto un progetto che contiene almeno un blocco funzionale FB e un elenco di variabili globali. L'elenco delle variabili globali GVL è aperto nel suo editor e contiene, ad esempio, la dichiarazione di una variabile iGlobal
. FB Usato iGlobal
.
Selezionare il nome di una variabile globale, ad esempio
iGlobal
.Selezionare il comando nel menu contestuale
.Entra nel dialogo rinominare nel campo di immissione Nuovo nome inserire un nuovo nome, ad esempio
iGlobalOK
e fare clic ok.Il dialogo refactoring si apre. Nella finestra di sinistra, nell'albero dei dispositivi, ci sono gli oggetti GVL e FB segnata in rosso ed evidenziata in giallo. Nella finestra di destra è FB aperto nel suo editor e
iGlobal
è già dentroiGlobalOK
rinominato.clicca su ok.
Non ci sono variabili globali nel tuo progetto
iGlobal
. Ovunque è adessoiGlobalOK
.
Selezionare il nome di una variabile globale, ad esempio
iGlobal
.Selezionare il comando nel menu contestuale
.Entra nel dialogo rinominare nel campo di immissione Nuovo nome inserire un nuovo nome, ad esempio
iGlobalTest
e fare clic ok.Il dialogo refactoring si apre. Nella finestra di sinistra, nell'albero dei dispositivi, ci sono gli oggetti GVL e FB segnata in rosso ed evidenziata in giallo. Il modulo funzione si trova nella finestra di destra FB apri nel suo editor. Invece di
iGlobal
èiGlobalTest
elencato.Posiziona il cursore nella finestra di destra e apri il menu contestuale.
Scegli il comando Scarta questo oggetto e fare clic ok.
Nel tuo progetto c'è la variabile globale
iGlobal
in FB regalo. La variabile si trova ora negli oggetti in cui si è verificata altrimenti la variabileiGlobalTest
specificato.Il messaggio di errore viene visualizzato nella finestra del messaggio che l'identificatore
iGlobal
non è definito.
Aggiungi e rimuovi variabili di input
È possibile aggiungere o rimuovere variabili di input o output nella parte di dichiarazione delle POU utilizzando i comandi di refactoring. Aggiornato presso i punti di utilizzo/call point dei blocchi CODESYS di conseguenza, per cui puoi accettarlo o rifiutarlo per ogni punto di utilizzo. Ottieni la finestra di dialogo per questo refactoring.
Requisito: hai la POU FCT
di tipo Funzione aperta nell'editor. La funzione ha già variabili di input input1
e input2
e inputx
. Lei sarà nei programmi PLC_PRG
e POU
chiamato.
Metti lo stato attivo nella parte di dichiarazione della funzione FCT.
Scegli comando
.Viene visualizzata la finestra di dialogo standard per la dichiarazione di una variabile.
Dichiara variabili
input_3
con portataVAR_INPUT
e tipo di datiINT
. Chiudi la finestra di dialogo con ok.Il dialogo refactoring appare (vedi figura sotto). Le aree interessate sono contrassegnate in giallo. (1)+(2)
Seleziona l'opzione in alto a destra Aggiungi input con testo segnaposto. (3)
Nella finestra di sinistra, posiziona il cursore su uno degli oggetti con sfondo giallo, ad esempio
PLC_PRG
. Selezionare il comando nel menu contestuale Accetta l'intero progettoper aggiungere la nuova variabile ai punti di utilizzo diFCT
da aggiungere durante il progetto.Nella finestra di destra puoi vedere la modifica nella parte di implementazione di
PLC_PRG
: Segnaposto_REFACTOR_
compare nel punto in cui è stata inserita la nuova variabile.Chiudi la finestra di dialogo refactoring Con ok.
Scegli comando
. Cerca "_REFACTOR_" nel progetto per rivedere le posizioni interessate e modificarle di conseguenza.Nota: in alternativa, puoi inserire la nuova variabile direttamente con un valore di inizializzazione desiderato senza prima lavorare con un segnaposto. In questo caso, seleziona l'opzione ":.add with the following value" nel passaggio 4 e inserisci il valore alla sua destra.

Esempio di una nuova variabile con testo segnaposto in un blocco CFC

Nota anche la possibilità di rimuovere le variabili tramite il refactoring.
Riordina le variabili nella dichiarazione
Nella parte di dichiarazione dei blocchi, è possibile utilizzare il refactoring per modificare l'ordine delle dichiarazioni. Ciò è possibile con le dichiarazioni degli ambiti VAR_INPUT
, VAR_OUTPUT
o VAR_IN_OUT
.
Requisito: è stata aperta la parte di dichiarazione di una POU, che contiene le seguenti dichiarazioni, ad esempio:
VAR_INPUT invar2 : INT; invar1 : INT; in : DUT; bvar : BOOL; invar3 : INT; END_VAR
Posizionare il cursore in questo blocco di dichiarazione e premere il tasto destro del mouse per aprire il menu contestuale.
Scegli il comando
.Il dialogo Riordina appare con un elenco di
VAR_INPUT
-Variabili.Ad esempio, selezionare la voce invar1 : INT; e trascinalo davanti alla voce con il mouse invar2..
La dichiarazione di
invar1
ora è la priorità assoluta.Chiudi la finestra di dialogo con ok.
Il dialogo refactoring appare. Le aree interessate sono contrassegnate in giallo. (Vedi immagine sopra)
Conferma con okper applicare il nuovo ordine al blocco.
Modifica la dichiarazione delle variabili e applica automaticamente il refactoring
Sei supportato dal refactoring nella dichiarazione durante la ridenominazione delle variabili (usando la dichiarazione automatica).
Requisito: modulo funzionale fb_A
.
Scegli il comando
.dialogo opzioni si apre.
Scegli la categoria refactoring.
Attiva di seguito dichiarazione automatica le opzioni Quando si rinominano le variabili e Per aggiungere o rimuovere variabili o per modificare lo spazio dei nomi.
Fare doppio clic sul modulo funzione
fb_A
.Selezionare nella dichiarazione di
fb_A
una variabile per esempioiA
. In alternativa, puoi posizionare il cursore davanti o nella variabile.Dare alternare + F2).
uno (Il dialogo dichiarare variabile si apre. La finestra di dialogo contiene le impostazioni di
iA
.Cambia il nome di
iA
dopoiCounter_A
.L'opzione Modifiche usando il refactoring appare ed è attivato.
clic ok.
Il dialogo refactoring Rinomina iA in iCounterA si apre. Tutte le posizioni interessate dalla ridenominazione della variabile sono contrassegnate lì.
Termina il dialogo con ok.
Le modifiche sono accettate.