
SAP ABAP Cleaner
SAP ABAP Cleaner è uno strumento configurabile che ha l’ambizione di automatizzare
tutto ciò che può essere automatizzato rispetto allo stile del codice SAP ABAP.
Cosa offre lo strumento SAP ABAP Cleaner
Esistono numerose linee guida e regole su come dovrebbe apparire un codice SAP ABAP pulito, vediamo:
- la Clean ABAP Styleguide, ,
- la Clean Code Checks, , come implementati nel progetto Code Pal for ABAP ,
- linee guida di programmazione specifiche per ogni team, ecc.
… queste linee guida lasciano interamente allo sviluppatore il compito di scrivere codice pulito (o di ripulire il codice esistente).
Lo strumento SAP ABAP Cleaner svolge gran parte di questo lavoro per lo sviluppatore, automatizzando il maggior numero possibile di queste regole e dando il pieno controllo su quali regole utilizzare e come.
SAP ABAP Cleaner – pulizia del codice con la pressione di un tasto
Con SAP ABAP Cleaner possiamo pulire qualsiasi quantità di codice, da una singola istruzione a un intero documento di codice, con la semplice pressione di un tasto . SAP ABAP Cleaner applica quindi oltre 75 diverse regole di pulizia alla sezione di codice, pulendo circa 1 MB di codice al secondo.
Attenzione: ovviamente, uno strumento automatizzato NON può sostituire tutti gli altri sforzi di codice pulito. Ovviamente, l’automazione è possibile solo per un sottoinsieme delle regole del codice pulito, ma per una significativa, tra cui formattazione, allineamento, sostituzione di comandi obsoleti e persino riduzione di una certa profondità di annidamento. Ciò ci fa risparmiare lavoro noioso, lasciando più tempo per concentrarsi su requisiti più complessi, come modularizzazione, testabilità e buona denominazione.
SAP ABAP Cleaner è installato con due profili :
nel profilo ” predefinito “, la maggior parte delle regole di pulizia disponibili vengono attivate con quelle che riteniamo essere buone impostazioni predefinite in linea con la Clean ABAP Styleguide (e che vanno persino oltre le sue richieste);
Nel profilo ” essenziale ” sono attive solo le regole di pulizia esplicitamente richieste dalla Clean ABAP Styleguide ; ciò si applica a circa il 40% delle regole di pulizia disponibili.
Inoltre, possiamo creare i propri profili: in ogni profilo, possiamo selezionare quali regole di pulizia devono essere attive e configurare opzioni e soglie per queste regole. Il team può allinearsi su una configurazione comune e creare un profilo team da questa.
Demo di SAP ABAP Cleaner
Come si usa ABAP Cleaner
Pulizia automatica o interattiva da ADT
Utilizzando il tool ABAP di ADT, la pulizia può essere eseguita o automaticamente con un singolo tasto ( Ctrl + 4 o dal menu ‘Codice sorgente / Pulisci con ABAP Cleaner automatico’),
oppure interattivamente aprendo l’interfaccia utente di ABAP Cleaner ( Ctrl + Maiusc + 4 o menu ‘Codice sorgente / Pulisci con Interactive ABAP Cleaner…’) che consente di controllare le modifiche, annullare quelle non gradite con un solo clic del mouse e infine applicare (o scartare) il risultato.
Una terza opzione mostra un’anteprima di sola lettura del risultato della pulizia senza bloccare o modificare il codice, ad esempio se non si dispone dell’autorizzazione di sviluppo nel sistema corrente ( Ctrl + Maiusc + 5 o menu ‘Codice sorgente / Mostra anteprima di sola lettura con ABAP Cleaner…’)
Integrazione di SAP ABAP Cleaner negli strumenti di sviluppo ABAP (ADT)
Utilizzo dell’app autonoma con SAP GUI
Utilizzando l’app stand-alone ABAP Cleaner, possiamo usare gli appunti per copiare il codice dal nostro IDE (ad esempio SAP GUI) in ABAP Cleaner e copiare il codice pulito nuovamente nel nostro IDE.
È anche possibile fare in modo che l’app ABAP Cleaner controlli gli appunti e li sostituisca direttamente con il codice ripulito, il che consente di rimanere in SAP GUI ed eseguire la pulizia con Ctrl + C , Ctrl + V.
Ambito dello strumento
SAP ABAP Cleaner può essere utilizzato per ripulire sia il codice esistente che quello nuovo, sia il codice prodotto che quello di test, sia con un approccio “a banda larga” (applicando simultaneamente oltre 75 regole diverse) sia con un approccio mirato (pulizia con una selezione limitata di regole).
ABAP cleaner è stato implementato con ABAP orientato agli oggetti in mente, ma può anche essere utilizzato per il codice in report e funzioni. Le istruzioni EML non sono ancora supportate (il che significa che la maggior parte delle regole di pulizia le lascia semplicemente invariate).
Requisiti e installazione
Per installare e utilizzare il plug-in ABAP Cleaner per ABAP Development Tools (ADT) su Windows o macOS,
Installare ABAP Development Tools come descritto nel tutorial Installazione ADT (Passaggio 1) , utilizzando un’installazione Eclipse compatibile con ADT .
Avviare ADT, selezionare il menu ‘Aiuto / Installa nuovo software…’, copiare il collegamento https://sap.github.io/abap-cleaner/updatesite nel campo ‘Utilizza’, premere Invio e seguire i passaggi dell’installazione, confermando di voler installare ABAP Cleaner (il contenuto al momento non è firmato). ( Problemi noti )
Plug-in di SAP ABAP cleaner per ABAP Development Tools – installazione
Dopo aver riavviato ADT, aprire un documento di codice ABAP in un editor e utilizzare il menu ‘Codice sorgente / Pulisci con Interactive ABAP Cleaner…’ (scelte rapide Ctrl + 4 o Ctrl + Maiusc + 4 ), vedere utilizzo .
La versione stand-alone di ABAP cleaner (per Windows, macOS o Linux) richiede Java 21 o 17 (ad esempio SapMachine o Adoptium Temurin ). Per installare la versione stand-alone, scaricare ed estrarre l’ultima versione e seguire le istruzioni di installazione fornite lì.
Contribuire al nostro progetto
Segnalazione di problemi e idee
Se riscontriamo (sospetti) bug o problemi, se ci aspettiamo che SAP ABAP Cleaner si comporti in modo diverso da cioò che fa, se ci manca un’opzione per configurare una regola di pulizia o abbiamo un’idea per una nuova regola di pulizia, basterà creaew un problema su GitHub , fornendo una piccola porzione di codice, sia di quello originale che di quello pulito e spiegando in che modo il risultato differisce dalle proprie aspettative.
L’approccio generale di SAP ABAP Cleaner è quello di modificare solo le istruzioni che corrispondono alla sintassi prevista e di lasciare le istruzioni invariate se viene rilevata una sintassi imprevista (ad esempio commenti in posizioni strane all’interno di un’istruzione).
Contributi
Gli sviluppatori sono invitati a contribuire allo sviluppo di SAP ABAP Cleaner , implementando nuove regole di pulizia, nuove funzionalità dell’interfaccia utente, correzioni di bug, ecc.!
Codice di comportamento
Tutti, in qualità di membri, collaboratori e leader, si impegniamo a rendere la partecipazione alla community un’esperienza libera da molestie per tutti. Partecipando a questo progetto, si accetta di rispettare il suo Codice di condotta in ogni momento.
Limitazioni e problemi noti
Il plug-in ABAP Cleaner (come qualsiasi altro plug-in) può essere installato solo da versioni estensibili di ABAP Development Tools (ADT), nelle quali è disponibile il menu ‘Aiuto / Installa nuovo software…’.
Poiché ABAP Cleaner non esegue chiamate backend aggiuntive, la pulizia è limitata a ciò che può essere fatto all’interno del documento di codice corrente, senza recuperare ulteriori informazioni DDIC, firme, include ecc.
SAP ABAP cleaner si sforza di offrire regole di pulizia che rilevano automaticamente cosa può essere migliorato nel codice ABAP dato, quindi dopo una configurazione iniziale, gli utenti saranno in grado di applicare “tutto ovunque” con un solo tasto. ABAP cleaner è quindi limitato a regole di pulizia che mantengono invariata la funzionalità e possono essere applicate senza alcuna interazione aggiuntiva da parte dell’utente o necessità di successiva ispezione delle modifiche.
In ogni momento, i problemi noti e irrisolti vengono visualizzati come problemi “aperti” con l’etichetta “bug” nella sezione Problemi .
Prossimi cambiamenti
Finché ci saranno nuove idee per la pulizia automatizzabile (o di collaboratori per implementare queste idee), ABAP Cleaner verrà migliorato con:
- ulteriori regole di pulizia ,
- ulteriori opzioni di configurazione ,
- ulteriori funzionalità dell’interfaccia utente ,
- eventualmente supporto per sezioni di codice in altri linguaggi , in particolare SQL Script.
Come mostrato nella documentazione di Profili e Regole , è possibile scegliere se ‘Attivare automaticamente le nuove funzionalità dopo gli aggiornamenti’ (per profilo). Le nuove funzionalità saranno elencate nelle Note di rilascio .
Questo articolo ha lo scopo di guidare tutti gli sviluppatori SAP ABAP su come ottenere un codice pulito utilizzando SAP ABAP Cleaner e non solo per comprendere i vantaggi di un ABAP pulito ma anche come utilizzare ABAP Cleaner.
Lo strumento ABAP Cleaner viene utilizzato per ripulire il codice ABAP applicando varie regole di pulizia.
Ecco alcuni motivi per cui potresti voler utilizzare lo strumento ABAP Cleaner:
- Automazione: lo strumento ABAP Cleaner automatizza il processo di pulizia del codice ABAP, facendoti risparmiare tempo e fatica.
- Uniformità: utilizzando lo strumento ABAP Cleaner, puoi assicurarti che il tuo codice segua uno stile e una struttura coerenti. Ciò migliora la leggibilità del codice e rende più facile per altri sviluppatori comprendere e gestire il codice.
- Riduzione degli errori: seguire i principi ABAP puliti, che lo strumento ABAP Cleaner aiuta a far rispettare, può ridurre il numero di errori e incomprensioni nel tuo codice. Un codice chiaro e ben strutturato è meno soggetto a bug e più facile da correggere.
- Modernizzazione: lo strumento ABAP Cleaner incoraggia l’uso di funzionalità linguistiche e tecniche di codifica moderne. Ciò è importante se la tua organizzazione prevede di migrare verso tecnologie più recenti come S/4HANA o il Cloud.
- Proprietà collettiva del codice: l’adozione di pratiche ABAP pulite promuove una cultura di proprietà collettiva del codice e feedback. Incoraggia la collaborazione e consente a più sviluppatori di lavorare sulla stessa base di codice in modo più efficace.
- Manutenibilità: il codice ABAP pulito è più facile da manutenere e modificare. Segue le migliori pratiche di organizzazione e leggibilità del codice, rendendo più facile aggiungere nuove funzionalità o apportare modifiche senza introdurre bug.
Che cos’è ABAP Cleaner?
ABAP Cleaner è uno strumento configurabile che mira ad automatizzare tutto ciò che può essere automatizzato per quanto riguarda lo stile del codice ABAP.
Cosa offre lo strumento ABAP Cleaner?
ABAP cleaner offre 59 regole di pulizia con un totale di 186 opzioni di configurazione. Mentre in precedenza offriva 57 regole di pulizia con un totale di 162 opzioni di configurazione.
Linee vuote
Standardizzare le righe vuote all’interno dei metodi
Separare metodi e classi con righe vuote
Standardizzare le righe vuote nelle definizioni di classe
Spazi
Standardizzare gli spazi accanto alle parentesi
Chiudi parentesi a fine riga
Rimuovi lo spazio prima delle virgole e del punto
Metti degli spazi attorno al segno di commento
Rimuovi gli spazi inutili
Dichiarazioni
Scatena in più istruzioni
Riorganizzare le dichiarazioni locali
Elimina le variabili non utilizzate
Semplificare una catena con un elemento
Rendi esplicito il tipo implicito
Utilizzare FINAL per le variabili immutabili
Standardizzare l’escape dei parametri !
Rimuovi le SEZIONI di definizione della classe vuota
Aggiungere parametri mancanti al documento ABAP
Rimuovi lang=”en” dal documento ABAP
Sintassi
Commenta con “, non con * (per il testo)
Sostituisci i commenti pseudo obsoleti con i pragma
Spostare i pragma nella posizione corretta
Correggi gli errori di battitura frequenti
Risolvere la catena del segno di uguale in più comandi
Preferire gli operatori di assegnazione dei calcoli (+=, -= ecc.)
Preferisci =, <>, <= ecc. a EQ, NE, LE ecc.
Preferisci NON È a NON È
Sposta AND/OR ecc. dalla fine della riga all’inizio della riga successiva
Rimuovi i comandi vuoti
Abbreviare le istruzioni VALUE
Rimuovi l’autoreferenzialità me->
Ometti RICEZIONE
Ometti l’ESPORTAZIONE facoltativa
Comandi
Convertire il ciclo esterno CHECK in IF NOT … RETURN
Convertire il ciclo CHECK in IF NOT … CONTINUA
Sostituisci i blocchi IF lunghi alla fine del ciclo
Sostituisci i blocchi IF lunghi alla fine del metodo
Sostituisci CALL METHOD con chiamata funzionale
Sostituisci CREATE OBJECT con il costruttore NEW
Sostituisci RAISE … TYPE con RAISE … NEW
Sostituisci l’obsoleto ADD … TO ecc. con += ecc.
Sostituisci l’obsoleto MOVE … TO con =
Sostituisci TRANSLATE con le funzioni stringa
Utilizzare assert_true e assert_false
Utilizzare assert_subrc invece di assert_equals
Utilizzare la classe assert invece di ASSERT
Pretty printer
Convertire maiuscole e minuscole
Rientrare le linee
Allineamento
Allinea il documento ABAP
Allinea le dichiarazioni dei METODI
Allinea i METODI … PER I TEST
Allinea i METODI… RIDEFINIZIONE
Allinea ALIAS … PER …
Allinea le dichiarazioni
Allinea le assegnazioni allo stesso oggetto
Allinea le parole chiave con la seconda parola della prima riga
Allinea CLEAR:, FREE: e ORDINA
Allinea parametri e componenti
Allinea le espressioni logiche
Allinea le espressioni condizionali
Requisiti e installazione
Per installare e utilizzare il plug-in ABAP Cleaner per ABAP Development Tools (ADT) su Windows o macOS,
- Installare ABAP Development Tools come descritto nel tutorial Installazione ADT (Passaggio 1) , utilizzando un’installazione Eclipse compatibile con ADT .
- Avviare ADT, selezionare il menu ‘Aiuto / Installa nuovo software…’, copiare il collegamentohttps://sap.github.io/abap-cleaner/updatesite nel campo “Utilizza con” e segui i passaggi dell’installazione, confermando di voler installare ABAP Cleaner. ( Problemi noti )
Dopo aver riavviato ADT, aprire un documento di codice ABAP in un editor e utilizzare il menu ‘Codice sorgente / Pulisci con Interactive ABAP Cleaner…’ (scorciatoie Ctrl + 4 o Ctrl + Maiusc + 4 ),
Se selezioniamo la prima opzione ” Pulisci con ABAP Cleaner automatico “, il codice verrà automaticamente pulito in base al profilo che abbiamo impostato.
Se selezioniamo la seconda opzione ” Pulisci con Interactive ABAP Cleaner “, qui possiamo selezionare le regole che vogliamo riflettere nel nostro codice e qui abbiamo molte opzioni.
Se abbiamo già creato il profilo, possiamo cliccare direttamente sul pulsante “ Salva e applica ” per applicare le regole desiderate.
Se vogliamo creare un profilo dobbiamo cliccare sul pulsante Configura nell’angolo destro.
In alto a sinistra nella sezione profili possiamo creare, copiare, eliminare, importare ed esportare profili.
In basso a sinistra nella sezione regole, possiamo selezionare la casella di controllo che dovrebbe ripulire il nostro codice.
Una volta completata la selezione delle regole, fare clic sul pulsante ” Salva profili ed esci” in basso a destra.
In sintesi, lo strumento SAP ABAP Cleaner è uno strumento prezioso per automatizzare la pulizia del codice ABAP, garantendo uniformità, riducendo gli errori, promuovendo la modernizzazione, favorendo la proprietà collettiva del codice e migliorando la manutenibilità.
Se vi è piaciuto leggere questo articolo del nostro blog su SAP ABAP Clean e volete leggere altri contenuti tecnici legati al mondo SAP, potete scorrere la sezione apposita del blog QUI.
Innovaformazione, scuola informatica specialistica segue costantemente gli aggiornamenti del mondo SAP e promuove la formazione per analisti funzionali SAP, sviluppatori SAP ABAP e semplici utenti.
Trovate nell’offerta formativa l’elenco dei Corsi SAP rivolti ad aziende e privati.
INFO: info@innovaformazione.net – tel. 3471012275 (Dario Carrassi)
Vuoi essere ricontattato? Lasciaci il tuo numero telefonico e la tua email, ti richiameremo nelle 24h:
Articoli correlati

Arriva Java 23

Sviluppo Software Green

Lavoro SAP Reggio Emilia

Cosa è Git branching

Algoritmi per il Poker online
