Refactoring in LabVIEW.

Il refactoring in LabVIEW è un processo di ristrutturazione di codice, funzionante correttamente, con lo scopo di renderlo leggibile, manutenibile ed espandibile.
labview UX

Il refactoring in LabVIEW è un processo di ristrutturazione di codice, funzionante correttamente, con lo scopo di renderlo leggibile, manutenibile ed espandibile.

Viene anche definito come un processo di pulizia, non ha come obiettivo l’ottimizzazione del codice e non è specifico per labVIEW.

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.

Martin Flower – Refactoring: Improving the design of existing code

Refactoring o Rebuilding

Il refactoring è necessario quando:

  • Si devono inserire caratteristiche o funzioni
  • Implementazione/sostituzione di hardware
  • Si sta facendo debug sui VI’s
  • Codice con valore intellettuale da non cestinare.
  • Raggruppare il codice riusabile in librerie.

La prima cosa che viene in mente quando si deve lavorare sul codice esistente, è quello di rifarlo da capo.

Rifare o Ristrutturare, la scelta dipende dalla complessità, dal valore, dal rischio e da altre condizioni.

Bisogna anche tenere conto che il processo di refactoring può introdurre nuovi bachi.

Non è escluso che l’attività di Refactoring possa essere costosa.

Alcune regole di valutazione potrebbero essere:

  • Quanto è illeggibile e complesso il software
  • Si può accedere a chi lo ha fatto per recuperare informazioni?
  • Esiste Documentazione o persone in grado di dare spiegazioni sulle funzionalità e specifiche?
  • Budget disponibile
  • Hardware obsoleto che richiederebbe un ulteriore refactoring a breve

Preparazione

  • Fare una copia di backup del codice esistente, possibilmente in un repository di versionamento (es. GIT)
  • Studiare il codice e comprenderlo al meglio.
  • Creare un piano di test e di azione
  • Riordinare il più possibile il codice da un punto di vista estetico e di ordine, aggiungendo descrizioni e quanto necessario per poterlo interpretare al meglio.
  • Rinominare Controlli, indicatori, costanti e collegamenti, con nomi logici e comprensibili e corti.
  • Fare modifiche leggere completarle e verificarle sempre.
  • Verificare la possibilità di raggruppare in cluster type def dati logicamente coerenti tra loro.
  • Provare a incapsulare parti del codice in subVI.
  • Ridurre quanto possibile, Sequenze e local variable.

VI Analyzer

Il VI Analyzer può essere lanciato per verificare il codice con vari tipi di test.

Vi Analyzer

Bookmark

I bookmark possono essere utilizzati per facilitare l’esplorazione dei task da eseguire e come piano di azione.

Per creare un bookmark basta segnarlo con un hashtag davanti al nome es. #ToDo Qui devo sostituire la variabile locale.

LabVIEW bookmark
Esempio Bookmark

Approfondimenti

Refactoring Martin Fower

Ora puoi approfondire questo argomento con uno dei nostri corsi HandsON.

Protocolli Industriali con LabVIEW

Scoprire i protocolli industriali, come integrarli in labview. In questo corso impararerai a implementare toolkit e librerie, per utilizzare protocolli come ModBus e OPC-UA
Intermedio

Liv. Intermedio

OnLine; Con Istrutttore

3 gg

LabVIEW UI/UX

Lo sviluppo di applicativi per Testing e Misure vede sempre più una necessità di integrare interfacce curate soprattutto in prospettiva dell'utilizzo da utenti meno esperti e nel considerare di ridurre errri e incertezze dovute spesso ad un interfaccia poco chiara e intuitva.
Intermedio

Liv. Intermedio

OnLine; Con Istrutttore

3 gg

Corso LabVIEW StateMachine Pro

Il paradigma di programmazione convenzionale è il data flow. Siamo abituati ad usare il cluster di errore per gestire la sequenza di esecuzione dei nodi in labview. La macchina a Stati, permette di gestire l'ordine di esecuzione condizionato all'uscita dello stato in esecuzione. L'implementazione di questo pattern permette quindi l'integrazione del diagramma di stato e una razionalizzazione dell'applicazione, diventando più flessibile, leggibile e manutenibile.
INTERMEDIO

Liv. INTERMEDIO

In Presenza

1 gg

Scopri i nostri servizi e Prodotti, Contattaci ora!

Altri articoli dal nostro Blog

L’azienda leader nel settore elettrico in Ungheria ha collaborato con Bytelabs per implementare un sistema avanzato di collaudo e caratterizzazione degli avvolgimenti elettrici. Utilizzando tecnologie come Advantech ADAM 5000 TCP, LabVIEW e il power meter Yokogawa WT5000, il sistema permette test ad alta velocità, salvataggio sicuro dei dati su un server SQL e creazione automatica di report PDF. La flessibilità di eseguire test manuali o automatici ha migliorato l’efficienza operativa, consentendo un collaudo più rapido e una tracciabilità dei prodotti ottimizzata. L’implementazione ha portato a significativi miglioramenti nell’efficienza e nella qualità del processo di collaudo e caratterizzazione degli avvolgimenti elettrici.
La certificazione dei prodotti è fondamentale per garantire la sicurezza e la qualità dei prodotti che vengono immessi sul mercato. Tra le diverse fasi del processo di certificazione, i test giocano un ruolo centrale, sia per garantire la conformità del prodotto ai requisiti normativi sia per verificare la sua affidabilità e sicurezza.
Bytelabs è system integrator e consultant specializzato in LabVIEW, questo ci ha permesso di intervenire rapidamente e seguire il progetto in modo agile, producendo prototipi funzionanti con la possibilità di interazione con i tecnici del nostro partner. La Modularità del sistema cDAQ offre una soluzione ideale per la configurazione dei I/O già condizionati.