Skip to main content

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 Strumenti → Opzioni 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.

Procedura. Rinomina le variabili globali a livello di progetto
  1. Selezionare il nome di una variabile globale, ad esempio iGlobal.

  2. Selezionare il comando nel menu contestuale Refactor → Rinomina iGlobal.

  3. 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à dentro iGlobalOK rinominato.

  4. clicca su ok.

    Non ci sono variabili globali nel tuo progetto iGlobal. Ovunque è adesso iGlobalOK.

Procedura. Rinominare le variabili globali a livello di progetto (tranne una POU)
  1. Selezionare il nome di una variabile globale, ad esempio iGlobal.

  2. Selezionare il comando nel menu contestuale Refactor → Rinomina iGlobal.

  3. 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.

  4. Posiziona il cursore nella finestra di destra e apri il menu contestuale.

  5. 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 variabile iGlobalTest 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.

  1. Metti lo stato attivo nella parte di dichiarazione della funzione FCT.

  2. Scegli comando Refactoring → Aggiungi variabile.

    Viene visualizzata la finestra di dialogo standard per la dichiarazione di una variabile.

  3. Dichiara variabili input_3 con portata VAR_INPUT e tipo di dati INT. Chiudi la finestra di dialogo con ok.

    Il dialogo refactoring appare (vedi figura sotto). Le aree interessate sono contrassegnate in giallo. (1)+(2)

  4. Seleziona l'opzione in alto a destra Aggiungi input con testo segnaposto. (3)

  5. 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 di FCT 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.

  6. Chiudi la finestra di dialogo refactoring Con ok.

  7. Scegli comando Modifica → Trova. Cerca "_REFACTOR_" nel progetto per rivedere le posizioni interessate e modificarle di conseguenza.

  8. 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.

_cds_img_refactoring_view.png

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

_cds_img_refactoring_in_cfc.png

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
  1. Posizionare il cursore in questo blocco di dichiarazione e premere il tasto destro del mouse per aprire il menu contestuale.

  2. Scegli il comando Refactoring → Riordina variabili.

    Il dialogo Riordina appare con un elenco di VAR_INPUT-Variabili.

  3. Ad esempio, selezionare la voce invar1 : INT; e trascinalo davanti alla voce con il mouse invar2..

    La dichiarazione di invar1 ora è la priorità assoluta.

  4. Chiudi la finestra di dialogo con ok.

    Il dialogo refactoring appare. Le aree interessate sono contrassegnate in giallo. (Vedi immagine sopra)

  5. 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.

  1. Scegli il comando Strumenti → Opzioni.

    dialogo opzioni si apre.

  2. Scegli la categoria refactoring.

  3. 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.

  4. Fare doppio clic sul modulo funzione fb_A.

  5. Selezionare nella dichiarazione di fb_A una variabile per esempio iA. In alternativa, puoi posizionare il cursore davanti o nella variabile.

  6. Dare Modifica → Dichiara variabile uno (alternare + F2).

    Il dialogo dichiarare variabile si apre. La finestra di dialogo contiene le impostazioni di iA.

  7. Cambia il nome di iA dopo iCounter_A.

  8. L'opzione Modifiche usando il refactoring appare ed è attivato.

  9. clic ok.

    Il dialogo refactoring Rinomina iA in iCounterA si apre. Tutte le posizioni interessate dalla ridenominazione della variabile sono contrassegnate lì.

  10. Termina il dialogo con ok.

    Le modifiche sono accettate.