Resource Analyzer

Resource Analyzer è uno strumento a riga di comando progettato per eseguire la manutenzione delle risorse all'interno di un progetto software. Questo tool è particolarmente utile per sviluppatori e team di sviluppo che necessitano di un'analisi approfondita delle risorse utilizzate nel codice sorgente, individuando eventuali incongruenze e risorse non utilizzate.


Funzionalità Principali
Resource Analyzer esegue una scansione completa del codice sorgente, analizzando tutti i file con estensioni specificate nei parametri di configurazione. Durante la scansione, il tool individua tutte le risorse istanziate nel progetto e le confronta con quelle presenti nel sistema di gestione risorse fornito da DataWeb.


Esecuzione del Tool
Un tipico esempio di esecuzione del tool da riga di comando è il seguente:

 

resourceanalyzer appurl=https://localhost:5051 path=C:\Projects\MyProject

 

  • appurl: url dell'applicazione da cui recuperare l'elenco delle risorse presenti in DataWeb. Questo parametro è obbligatorio
  • path: percorso del progetto da scansionare. Se omesso, la scansione viene effettuata nella cartella corrente in cui è eseguito il prompt dei comandi

     

Funzionamento
Durante l'esecuzione, Resource Analyzer utilizza una regex specifica per identificare tutte le risorse nel codice sorgente:
 

[\""|\'](?<resource>[A-Z][a-zA-Z0-9\-_]{1,49}\.[A-Z][a-zA-Z0-9\-_]{1,49}\.[A-Z][a-zA-Z0-9\-_]{1,99})[\""|\']


Questa regex permette di individuare tutte le occorrenze delle risorse nella forma Context.Group.Name, garantendo che vengano riconosciute solo le stringhe che rispettano la convenzione di denominazione delle risorse.


Una volta completata la scansione, Resource Analyzer si collega a un endpoint del progetto gestito da DataWeb per recuperare l'elenco delle risorse effettive. Successivamente, genera due report nel percorso del progetto:

 

  • Unused Resources: risorse presenti in DataWeb ma non utilizzate nel codice sorgente
  • Missing Resources: risorse presenti nel codice sorgente ma mancanti in DataWeb
     

Formato dei Report
I report generati sono in formato CSV e contengono:

 

  • il Name della risorsa (l'identificativo univoco della risorsa)
  • l'eventuale percorso del file in cui la risorsa è stata trovata nel codice sorgente

 

Nota Importante: le risorse marcate come "di sistema" in DataWeb non vengono processate da Resource Analyzer.


Personalizzazione dell'Audit
L'audit eseguito da Resource Analyzer può essere personalizzato tramite i seguenti argomenti:

 

  • appUrl (obbligatorio): l'URL dell'app web da cui recuperare l'elenco delle risorse in DataWeb
  • path: il percorso di scansione. Se non specificato, il tool effettua l'audit nella cartella attiva del prompt
  • contexts: limita l'analisi a specifici contesti, come App, Account, o MobileApp
  • extensions: specifica quali tipi di file testuali devono essere processati per trovare le risorse. I valori predefiniti sono: .cs,.cshtml,.ts,.vue
  • excludedfolders: indica quali cartelle escludere dall'analisi. Il valore predefinito è: node_modules,obj,bin
     
Un esempio di comando con tutti i parametri personalizzati potrebbe essere il seguente:
 
resourceanalyzer appurl=https://localhost:5051 path=C:\Projects\MyProject contexts=DataWeb,App extensions=.cs,.cshtml,.ts,.vue excludedfolders=node_modules

Conclusione
Resource Analyzer è uno strumento potente e flessibile per mantenere il controllo sulle risorse di localizzazione in un progetto software. Utilizzando questo tool, i team di sviluppo possono identificare rapidamente risorse non utilizzate o mancanti, ottimizzando così il processo di sviluppo e migliorando la qualità complessiva del progetto.