Home > BLOG > GNU LINUX > Anjuta: un fantastico IDE per la programmazione in Linux

Anjuta: un fantastico IDE per la programmazione in Linux

schermata-informazioni-su-anjuta

Una volta, quando ero piccolo io, e gli hacker crescevano a forza di linux 2.4 e C, ogni buon corso di programmazione cominciava con il classico “Hello World!” stampato a schermo sulla linea di comando. Ora i tempi sono cambiati e ognuno di noi ha nella sua cameretta l’equivalente della potenza di calcolo messa insieme da un paio di università quando l’era dei computer era all’inizio. Per cui l’Hello World! è ora visualizzato in una bella finestra, magari con qualche icona carina e qualche effetto speciale. Quindi se io volessi imparare a programmare, ma senza cominciare a capire che cos’è il terminale, la riga di comando, come si lanciano i comandi da shell… Ma volessi piuttosto fare un bel programmino che apro dal menù applicazioni, e chiudo premendo la ‘X’?


Se vogliamo essere sinceri, è la strada giusta per diventare quelli che una volta erano i programmatori “Visual Basic”. Scusate l’offesa.

Nonostante questo, credo che cominciare in un modo meno “ostico” possa essere di stimolo a chi si avvicina per la prima volta alla programmazione, e magari far nascere in qualcuno la passione che lo porterà a fare da grande il Programmatore. Perciò, dopo la litania iniziale, andiamo a parlare di come divertirsi a programmare in Linux, cominciando a scoprire uno strumento molto potente: Anjuta.

Anjuta è un IDE, ovvero un ambiente di sviluppo integrato, nato nel tentativo di unire la potenza e versatilità degli strumenti di programmazione con la praticità ed eleganza dell’ambiente grafico Gnome. Il sito ufficiale del progetto è: http://anjuta.sourceforge.net/

Apriamo anjuta, lanciandolo dal menù dei programmi, e si aprirà la nostra bella interfaccia grafica. Selezioniamo File -> Nuovo -> 4. Progetto , per far partire il nostro assistente alla creazione di un nuovo progetto. Seguendo le sue precise indicazioni, anche un programmatore che non ha mai compilato una riga di codice riesce tranquillamente ad arrivare alla fine della procedura.
Terminata la procedura di creazione guidata, anjuta si occupa di creare la cartella del nostro progetto nel punto specificato, tutti i file necessari che stanno alla base dello stesso, e di lanciare gli autotools. Non scendiamo troppo nei dettagli, altrimenti chi fino a questo punto mi ha fatto compagnia comincia a pensare se non sia meglio sentire qualche politico predicare la mecca in tv. Finite le procedure automatiche, delle quali possiamo vedere l’avanzamento nella finestra messaggi che è comparsa, chiudiamo quest’ultima e finalmente cominciamo a mettere mano al nostro progetto.
Sulla nostra sinistra, possiamo vedere l’albero delle directory presenti nella cartella del nostro progetto. Espandiamo la cartella ‘src’ e facciamo un doppio click sul file main.cc, con l’effetto di vedere caricato il suo contenuto sullo schermo. Non vorrei farvi emozionare troppo, ma questo potrebbe essere il primo codice che andrete ad eseguire in vita vostra. Magari ne racconterete ai vostri nipotini quando il sistema informatico che avete programmato voi porterà l’uomo su Marte…. ma sto divagando.
Senza capire ancora nulla di tutto quello che vedete, premete il tasto F11, oppure selezionate Genera -> Genera dal menù del programma. In basso, nella finestra messaggi, potete osservare il vostro computer compilare il codice sorgente del vostro programma. Quando il processo è finito, siete pronti per il grande passo. Premendo il tasto F3, o selezionando Esegui -> Esecuzione programma, vi verrà proposta la finestra di dialogo dalla quale, scengliendo il vostro eseguibile e cliccando ok, potrete finalmente lanciare il vostro programma. Beh, che ve ne pare? Facile no?

anjuta83

Ok, ora prima che cominciate a mandare i vostri curriculum in giro alle aziende software, cerchiamo di capire qualcosa di quello che abbiamo fatto. Per prima cosa, da dove deriva l’interfaccia? Se avete dato almeno una veloce lettura al codice, avrete notato che si nomina un file gtk_foobar.glade. Che cos’è? Dall’albero dei file sulla vostra sinistra, sempre nella cartella src, fate un doppio click sul file in questione. Alla richiesta di con cosa aprire il file, selezionate ‘Disegnatore di Interfacce Glade’. Quella che vi verrà aperta è niente di meno che l’interfaccia del vostro programma.

Proviamo a fare una cosa. Sulla sinistra, sotto l’albero del progetto, fate click sul pulsante con la dicitura tavolozza. Vi comparirà al posto del vostro albero un elenco di strane icone. Selezioniamo quella con la scritta ‘label’, e una volta fatto ciò clicchiamo al centro della nostra interfaccia. L’elemento label verrà inserito all’interno della stessa. Cercate ora il pulsante proprietà, sotto la finestra dove vengono aperti i vostri file sorgenti. Facendovi click, vi verrà aperta la lista delle proprietà dell’oggetto label che avete appena inserito e che è rimasto selezionato.

anjuta12

Alla voce ‘Etichetta’, sostituite al testo di default qualcosa di più carino, tipo “All work and no play, make Jack a dull geek.”. Completate le modifiche alle proprietà, potete tornare alla vista precedente selezionando il pulsante ‘Documenti’, vicino a quello ‘Proprietà’. Fate un bel Ctrl+S, o selezionate File -> Salva tutti, dopodichè lanciate di nuovo il vostro programma con F3. Bello eh?

anjuta142

Termini di ricerca frequenti:

  • leonardo Vecoli

    Ciao,
    Avendo questa verrsione di anjuta “2.30.1.0” posso utilizzare la tua guida?

  • leonardo Vecoli

    Per prima cosa, da dove deriva l’interfaccia? Se avete dato almeno una veloce lettura al codice, avrete notato che si nomina un file gtk_foobar.glade. Che cos’è? Dall’albero dei file sulla vostra sinistra, sempre nella cartella src, fate un doppio click sul file in questione.

    Help, non trovo il file gtk foobar.glade

  • leonardo Vecoli

    Cito:

    .

    Scusa io seguo la procedura ma poi non trovo il file da te indicato!

    Grazie per l’aiuto!

  • Il file .glade è un file xml nel quale è descritta la struttura grafica della tua applicazione.

    Non ho ancora aggiornato la versione di anjuta, ma non la guida dovrebbe applicarsi ugualmente bene.

    Sei sicuro di non trovare il file .glade?

  • Gino Martorelli

    Salve! grazie per il tutorial. Un paio di riflessioni, non sul tutorial in sé ma sulla questione di come è “meglio” programmare. Aver bisogno di una interfaccia grafica non significa essere dispensati dal conoscere bene un linguaggio di programmazione. Chi negli anni ’90 prommava sotto visual studio o utilizzando IDE come quelli della Borland doveva comunque saper programmare, nessuno realizza un progetto semplicemente disegnando finestre, oggetti e callback. La verità è che in ambiente linux (e lo dico da appassionato sostenitore dell’open source) si è costretti a fare il lavoro che sarebbe bene far fare ad una macchina, passando ore e ore incollati ad un terminale per scrivere a mano codice che spesso è solo di supporto alla parte di elaborazione vera e propria (glade, Qt, scrivere callback ecc….). Ora un conto è doversi fare un demenziale programmino di una rubrica, altra faccenda è gestire progetti complessi … ci metti le ere geologiche e ti bruci gli occhi, questa è pura e semplice verità. Ho diversi amici ingegneri elettronici ed informatici, alcuni si sono formati alla Sant’Anna di Pisa e lavorano in aziende piuttosto grandi, vi assicuro che nessuno di loro si sognerebbe di mettersi a cincischiare con Anjuta Glade e compagnia bella. In ambito professionale, nellla programmazione in C ad esempio, si usano ambienti come il Lab Windows CVI, ambienti ovviamente a pagamento, che girano su OS Microsoft e stanno anni ma anni luce oltre gli ambienti di sviluppo open, compresi Eclipse e Netbeans.
    Credo che molto di quello che si dice in ambiente Linux rispetto agli strumenti di sviluppo sia scritto e detto con molta superficialità e senza alcun reale coinvolgimento serio nella programmazione. Purtroppo è un dato di fatto, gli ambienti Linux e le applicazioni che vi girano sono piuttosto indietro nel fornire validi strumenti di sviluppo, ancora oggi non esiste alcun IDE che nella progettazione web arrivi anche solo alla cinta di una versione di Dreamweaver di dieci anni fa’, con buona pace dei ridicoli sostenitori degli editori di testo che si vantano di scriversi tutto il codice necessario a mano su emacs, omettendo ovviamente quanto ci mettono e cosa tirano fuori dopo ore di pedante e cretino lavoro di editing che dovrebbe fare una macchina lasciandoli liberi di pensare alla parte di sviluppo della logica e della architettura … quando poi si svegliano vanno di corsa ad acquistare MyEclipse, a pagamento :-)
    Un caro saluto a tutti!
    Gino