Transcript for:
Fondamenti del Corso di Programmazione Java

Java è un linguaggio di programmazione di alto livello. Sebbene le sue origini risalgono agli anni 90, è ancora oggi uno dei linguaggi di programmazione più utilizzati al mondo. Oggi cercheremo di fare l'impossibile.

Proverò a spiegarvi il Java in 10 minuti. E vi prometto che alla fine di questo video sarete in grado di programmare Minecraft 2 e di essere assunti alla Google. No, sto scherzando. Per quello ci vogliono troppi anni di lavoro. Iniziamo dalle basi basi basi Per programmare si utilizza un IDE Ovvero un ambiente di sviluppo Noi oggi utilizzeremo Eclipse Perché è quello che ho utilizzato più spesso durante la mia carriera Lanciamo il programma, selezioniamo la workspace Che è l'area dove andiamo a salvare i nostri progetti Questa è la schermata principale.

Per creare un nuovo progetto andiamo su file, nuovo e andiamo a cliccare java project. Diamo un nome al nostro progetto e lo chiamiamo tutorial java. Entriamo all'interno di tutorial java, tasto destro sul folder src, crea una nuova classe che sarà il nostro programma principale. All'interno del java si ragiona infatti con le classi. Le classi dovete vederle come dei sacchettini che contengono al loro interno tutte le classi.

una serie di caratteristiche degli oggetti del mondo che ci trovano di fianco a noi che potete modellare grazie al linguaggio. Come nome direi di andare su program. Diamo la spunta alla casellina public static void main rappresenta infatti il nostro punto d'ingresso del programma e tutto ciò che scriveremo all'interno di queste due parentesi graffe che sono una e due sarà eseguito dal nostro computer.

Ma lo sapete che queste presentazioni potrebbero essere molto più divertenti e semplici da seguire? Oggi voglio parlarvi di un prodotto veramente utilissimo che vi consentirà di migliorare enormemente il vostro modo di condividere ed esprimere le vostre idee. Lo strumento si chiama Wondershare Demo Creator.

Le funzionalità di questo programma sono davvero tantissime. Avete la possibilità di scegliere il vostro sfondo ed impostare così la scena secondo i vostri gusti. Oltre ai tantissimi oggetti disponibili, è davvero molto comodo per adattare i vostri contenuti orizzontali ad un formato verticale, adatto per tutti i vostri social.

Oltre a ciò, potete anche utilizzarlo per registrare orizzontalmente. La mia funzionalità preferita è sicuramente la lavaglia interattiva. Si tratta di uno strumento che vi consente di disegnare direttamente sullo schermo del vostro computer. È veramente comoda per spiegare qualsiasi argomento Oppure anche al lavoro per fare delle presentazioni veramente epiche Se siete dei programmatori Provatelo anche per spiegare il vostro codice Oppure per comunicare in maniera efficace con il vostro team E magari anche per gestire i vostri progetti Se volete divertirvi un po', ci sono anche gli avatar virtuali. Potrete personalizzare il vostro avatar virtuale che si muoverà contemporaneamente alla vostra webcam.

Per provare questo software gratuitamente vi lascio il link in descrizione. Mi raccomando, voglio sapere che cosa ne pensate. Esistono 300 milioni di modi differenti di parlare con una macchina ed è per questo che sono nati i differenti linguaggi di programmazione. Alcuni sono più naturali e vi consentono di parlare con il computer dicendogli Ciao, io sono Danilo e tu sei mia sorella.

Più il linguaggio è di basso livello, e più è complicato solitamente mandare delle istruzioni al computer che dovrà eseguirle. Già è un linguaggio di alto livello, questo significa che potete più o meno parlare in un linguaggio abbastanza simile all'inglese e dare degli ordini al vostro computer. Come noi esseri umani, ragazzi, i computer possiedono un cervello, una memoria.

I computer possono infatti salvare differenti informazioni in base alla tipologia di oggetti che siamo interessati a inserire in memoria. Abbiamo ad esempio gli interi. Gli interi rappresentano i numeri, da 1 a 100, da 1 a 1.000. un milione, numeri negativi, con la virgola, con il segno, quello che vi pare. Abbiamo poi i caratteri.

I caratteri, ragazzi, rappresentano le lettere dell'alfabeto, singole lettere dell'alfabeto, perché per rappresentare delle parole andremo ad utilizzare qualcos'altro. Bene, entrambe queste istruzioni stanno dicendo alla macchina prendi il numero 5, dagli il nome A e inseriscilo nella memoria sotto forma di intero. Quando eseguiamo questo programma con il pulsantino verde, quello che avverrà sotto...

a livello del computer è il salvataggio di queste due variabili all'interno della nostra memoria. Ovviamente questa cosa è completamente inutile, a noi serve dare una sequenza di informazioni logica che ci consenta di risolvere dei problemi. Bene, per questo esistono le strutture condizionali, come ad esempio l'if.

Se ad esempio il nostro valore a è maggiore di 3, diciamo al nostro computer di eseguire le operazioni che si trovano all'interno delle parentesi graffe. Potremmo essere ad esempio interessati ad effettuare una stampa all'interno della console, che è lo strumento che il computer ci mette a disposizione per darci risultati. Ovviamente al posto della console potete costruire delle interfacce grafiche enormi che vi comunicano quello che sta avvenendo sotto nella memoria del vostro computer.

Uno degli operatori più importanti del Java è l'operatore... Con il punto ragazzi avrete la possibilità di accedere a una serie di funzioni che il Java vi mette a disposizione. Tutto ciò che avete attorno a voi può essere modellato come un'entità in grado di... di svolgere delle precise funzionalità. Ad esempio, un telefono telefona.

Il portafoglio racchiude dei soldi. Oppure una tazza si riempie di tè. Bene, se notate i verbi come si riempie telefona, sono proprio questi affari che vedete all'interno della lista delle funzioni degli oggetti Java. Adesso noi stiamo chiedendo al sistema di effettuare una stampa, appunto print, di qualcosa.

Ad esempio, in questo caso, andremo a stampare A è maggiore di... Se andiamo ad eseguire questo programma, infatti vedremo che viene stampato sulla console che il nostro numero A è appunto maggiore di 3. Bene, fino a questo momento abbiamo lavorato solo con quelli che vengono chiamati tipi primitivi, ovvero degli elementi che esistono da quando Java è stato creato. Ma Java non si limita a questo. Abbiamo infatti la possibilità di ragionare, come abbiamo visto prima con gli esempi della tazza, con gli oggetti.

Uno degli oggetti più comuni del Java è la string, ovvero una parola. Diamo il nome a questa parola e gli inseriamo all'interno, utilizzando le virgolette, ciaone con il punto esclamativo. Se avete capito quello che vi ho detto prima, ad un oggetto è possibile chiedere delle cose. E se noi andiamo a scrivere parola punto, abbiamo una marea di funzionalità gratuitamente offerte dal linguaggio.

Vogliamo ad esempio trasformare questa parola tutta quanta in maiuscola? Ci basterà cercare tu a Mi raccomando ragazzi imparate l'inglese perché se no la programmazione non la fate. Adesso prendiamo questo affare e facciamolo stampare la nostra console che vi ricordo essere system.out.println. Prendiamo quello che abbiamo scritto qui sotto e andiamo ad inserirlo all'interno delle parentesi tonde che vanno a racchiudere quello che vogliamo stampare.

E andiamo ad eseguire questo programma. Come vedete la nostra parola si è trasformata automaticamente in maiuscola. Prendiamo ad esempio un'altra parola, esattamente identica a quella di sopra, ma aggiungiamoci un altro punto esclamativo e un underscore.

Proviamo a confrontare queste parole. Facendo parola.equals abbiamo appena fatto una domanda al nostro computer, ovvero la prima parola è uguale alla seconda? Vediamo che succede.

Eseguiamo la nostra applicazione e la risposta del nostro computer è falso. Se togliamo l'underscore e un punto esclamativo e rieseguiamo questo identico programma, vedrete che la risposta in questo caso sarà true. Ovvero le due parole sono uguali.

Questa è solo un'infarinatura della marea di funzioni che avete all'interno delle classi Java. Le classi vanno combinate con le strutture di controllo. E solitamente le strutture dei programmi sono appunto fatte da sequenze di queste richieste che vengono eseguite in diverse condizioni dal computer. Se la parola 1 è uguale alla parola 2, allora puoi stampare che le due parole sono uguali. Riseguiamo il programma.

e vediamo che le due parole sono effettivamente uguali. Creiamo ad esempio una variabile di tipo intero, int a uguale 10. Con il ciclo while possiamo costantemente rieseguire una certa operazione fin tanto che una condizione risulta verificata. Ad esempio, finché while a è maggiore di 0, esegui la stampa di pip.

Se noi eseguissimo questo il programma, ragazzi, la stampa avverrebbe all'infinito, perché A vale 10, e quindi questo affare non finirebbe mai. Abbiamo appena creato il nostro primo ciclo infinito. Le strutture di controllo hanno bisogno di meccanismi che interrompano il flusso del programma.

E se noi, ad esempio, volessimo stampare questa parola solo 10 volte, ci basterebbe decrementare il valore di A di 1 ad ogni stampa effettuata dal programma. Potete scrivere così, oppure in maniera più compatta. a meno meno andiamo a salvare andiamo ad eseguire questo programma e vedete che qui è stato stampato pippo dieci volte e togliamo a meno meno e volete vedere un ciclo infinito quello che è l'effetto netto di questa esecuzione è la una stampa in fili del qui sta impazzendo e ne sta stampando 600.000 parliamo del ciclo for ragazzi il ciclo for è un ciclo che ci consente di eseguire una certa operazione per un determinato numero di volte in questo caso abbiamo scritto che partendo da zero questo è un valore di un contatore che utilizza il computer, sintassi, non ci interessa, finché questo elemento è minore di 10, che vuol dire 10 volte, esegui il codice dentro a questo ciclo. Ciao, ho eseguito il codice, più i, più... Volte così vi mostro anche che le parole possono essere concatenate con quelli che sono anche degli elementi interi con il simbolo più.

Quindi se noi andiamo a commentare questo codice che significa non eseguire questa roba ignora la vedete che è diventata verde ed ecco qui l'esecuzione del nostro codice dieci volte. Come vi avevo già anticipato il Java è basato sul concetto di oggetto. La stringa è già fatta dal Java, mentre se volessimo ad esempio creare un oggetto fatto da noi, ci basserebbe creare una nuova classe. Creiamo ad esempio la classe Personaggio.

Premiamo Invio. Quello che dovete fare in questo momento sarà specificare tutte le caratteristiche del vostro personaggio. Ad esempio il mio personaggio ha un certo nome, che ovviamente è una stringa. Abbiamo anche una statistica, come ad esempio l'attacco.

E magari anche un altro parametro che rappresenta gli HP rimanenti. Bene, quello che si fa all'interno delle classi è andare a creare un costruttore. Il costruttore, ragazzi, vi va a rappresentare che quando nasce il vostro oggetto, che caratteristiche deve avere una volta nato.

Ad esempio, un nuovo personaggio avrà attacco pari a 1 e, boh, facciamo HP pari a 100. Tutta la programmazione Java si basa sull'interrogare le classi, dandogli dei precisi ordini in maniera tale da modificare le caratteristiche presenti all'interno di un elemento. Definiamo ad esempio un metodo, una capacità del nostro personaggio Che è ad esempio quella di incrementare il proprio attacco di uno, due o tre punti in base all'oggetto che è appena raccolto Facciamo una funzione public incrementa attacco E all'interno delle parentesi tonde andiamo a rappresentare tutte quelle informazioni che serviranno alla nostra classe per prendere una decisione La decisione di incrementare l'attacco viene presa ad esempio sulla base dell'oggetto raccolto Che noi modelleremo ad esempio con un intero E qui possiamo vedere all'opera per la prima volta la logica di programmazione Se ad esempio l'oggetto raccolto è uguale ad 1 L'uguale si fa con due uguali Allora noi andremo ad incrementare l'attacco del nostro personaggio di un valore ad esempio pari a 5 Dato che noi siamo pigri e non vogliamo scrivere lo stesso codice 3.000 volte Facciamo alt-if e in base all'oggetto di tipo 1, di tipo 2, di tipo 3, andiamo ad incrementare l'attacco di 5, di 10, oppure, se abbiamo molta fortuna, oggetto leggendario più 100. Salviamo, torniamo un attimo nel nostro main e andiamo a creare un nuovo personaggio. Scriviamo personaggio io, Danilo, uguale new personaggio.

Ora dobbiamo dare nell'ordine in cui lo abbiamo indicato al nostro computer tutte le caratteristiche del nostro personaggio, ovvero prima il nome, poi l'attacco e poi gli HP. Piccolo trucchetto, in realtà queste due possiamo cancellarle, perché se ci pensiamo un attimo, creare un personaggio significa semplicemente dargli un nome. Tutti quanti i personaggi partiranno con attacco pari a 1 e HP pari a 100. Quindi il nostro personaggio, ragazzi, lo chiamiamo Sora. Questo la capiranno in pochi.

Cambiamo anche il nome della variabile, perché se no non mi piace. A questo punto proviamo a stampare il nostro caro Sora. Che succede se mettiamo all'interno di una stampa un oggetto da noi creato? Lo eseguiamo. Personaggio...

chiocciola 7852922 forse è meglio che definiamo un modo che ci consenta di comprendere un po'cosa stiamo stampando ci serve una funzionalità di stampa ragazzi torniamo nella classe e andiamo a definire qui sotto la funzione definita come toString ovvero dato un oggetto ci consente di comprendere come esso è fatto questa roba è autogenerabile direttamente dal nostro Eclipse e lo facciamo in maniera automatica bene ho fatto qualche modifica attualmente se noi chiediamo al nostro oggetto di stamparsi lui ci risponderà dicendo il suo nome quanti sono i suoi punti d'attacco e quanti sono i suoi attuali hp cancelliamo questa roba salviamo eseguiamo e vediamo che ciao sono sora i miei punti d'attacco sono uno e ho attualmente 100 e magari qui ci aggiungiamo anche la parola punti salute andiamo a simulare un numero random facendo uso dell'oggetto random che esiste già all'interno del linguaggio java Prendiamo l'oggetto e chiediamogli un valore compreso tra 1 e 3. In base al risultato il nostro Sora otterrà un certo quantitativo di punti d'attacco. Andiamo quindi a scrivere Sora.incrementaAttacco e all'interno gli mettiamo il potenziamento ottenuto che si è generato casualmente. Premiamo play e vedete che attualmente non succede nulla perché dobbiamo andare a ristampare le caratteristiche dell'oggetto per accorgerci delle modifiche che sono avvenute.

Quindi mettiamo una stampa qui sotto e vedete che attualmente i punti d'attacco sono più o meno così. sono diventati 6, perché casualmente abbiamo generato il valore 1. Se noi eseguiamo questo affare diverse volte, vedrete che, in questo caso, abbiamo avuto fortuna e ci siamo beccati il valore di 100 punti di attacco extra. Le funzionalità del Java sono davvero infinite. È usato nei videogiochi, nel web, per lo sviluppo di applicazioni enterprise professionali, per i cloud, per creare dei server sparsi in giro per il mondo sincronizzati, insomma è utilizzato letteralmente ovunque. Se avete apprezzato questo video lasciate un bel like e iscrivetevi.

E volevo ricordare a quelli che ancora non lo sanno, che oltre a fare l'ingegnere o oltre a fare lo youtuber, do anche lezioni private a studenti oppure a dei professionisti che desiderano imparare e immergersi completamente all'interno del mondo dell'informatica. Trovate come sempre le mie email e i miei contatti qui sotto in descrizione. Grazie.

Se volete supportare il canale vi ricordo che avete anche il pulsantino abbonati. E non escludo che in futuro io possa fare anche dei video esclusivamente per gli abbonati al canale. Perché solitamente un corso di Java può costarvi anche 1000€. Detto questo vi do un abbraccio e vi do appuntamento ad un prossimo video.