28 risultati per: alessiomungelli
Un approccio a Java: switch statement
Ciao a tutti e bentornati! Dopo una pausa, torniamo oggi con un'altra parte del corso introduttivo alla programmazione, parlando di switch statement, conosciuto anche come costrutto di selezione multipla. Intuizione L'idea dello switch statement nasce da un problema che vediamo adesso. Il problema è quello di cercare un modo comodo per evitare lunghe catene di if-elseif-else.…
Category : Java 29-12-2020 by Alessio Mungelli
Un approccio a Java: Il ciclo while
Ciao a tutti e bentornati! Dopo aver fatto una breve, ma corposa, introduzione sui cicli, andiamo oggi a vedere finalmente le prime implementazioni che utilizzano quello che abbiamo definito ciclo precondizionale. In Java, come in molti altri linguaggi di programmazione, questo tipo di ciclo viene tradotto con il termine while, che in italiano può essere…
Category : Java 06-12-2020 by Alessio Mungelli
Un approccio a Java: I cicli - Introduzione
Ciao a tutti e bentornati! Sino ad ora, abbiamo parlato di variabili e di strutture di selezione, andando a considerare alcuni degli aspetti fondamentali di questi due concetti. Teoricamente, per scrivere qualsiasi tipo di programma, potrebbero essere sufficienti le nozioni viste sino ad ora. Sorge però un problema. Come possiamo…
Category : Java 23-10-2020 by Alessio Mungelli
Un approccio a Java: strutture di selezione - casi d'uso
Ciao a tutti e bentornati! Sino ad ora ci siamo preoccupati di fare una carrellata quanto più completa riguardo i concetti fondamentali di cui abbiamo bisogno per approcciarci all'utilizzo delle strutture condizionali. Abbiamo quindi introdotto il concetto di struttura condizionale, delineando le varie situazioni che ci si potrebbero presentare. Successivamente…
Category : Java 20-10-2020 by Alessio Mungelli
Un approccio a Java: operatori booleani
La volta precedente, abbiamo ampiamente parlato delle variabili booleane, cercando di delineare quali siano le principali operazioni che si possono effettuare proprio a livello pratico. Di tutti i casi esaminati, non abbiamo esaminato quello più importante e più ricorrente: il caso in cui le condizioni da esaminare siano più di una e,…
Category : Java 19-10-2020 by Alessio Mungelli
Un approccio a Java: le variabili booleane
Ciao a tutti e bentornati! La volta precedente, ho fatto un'introduzione alle strutture condizionali, definendo il loro funzionamento. Prima di poter dare qualche esempio pratico, è necessario chiarire in che modo ci è concesso operare con le condizioni. Per fare questo, è necessario approfondire leggermente il tipo dato boolean. Tipo dati boolean Prima di introdurre…
Category : Java 19-10-2020 by Alessio Mungelli
Un approccio a Java: strutture condizionali
Ciao a tutti e bentornati! Le volte precedenti abbiamo introdotto il concetto di variabile, tentando di definire alcuni concetti basilari a riguardo. Alcune situazioni fanno però intuire come il solo concetto di variabile non sia sufficiente a risolvere tutte le possibili situazioni che potrebbero presentarcisi davanti. Un esempio molto banale potrebbe…
Category : Java 17-10-2020 by Alessio Mungelli
Un approccio a Java: Le variabili - caso d'uso
Ciao a tutti amici e bentornati! Dopo l'introduzione fatta sulle variabili, cerchiamo di analizzare alcune criticità che si possono presentare in situazioni alquanto comuni. Partiamo quindi analizzando degli esempi pratici. Esempio 1: divisione che restituisce un risultato non intero Il primo caso critico che si potrebbe presentare per chi si approccia al coding è un problema…
Category : Java 22-10-2020 by Alessio Mungelli
Un approccio a Java: Le variabili
Ciao a tutti e bentornati! Quest'oggi inizieremo un percorso che ci porterà a studiare, ed eventualmente ripassare, quelle che sono le basi della programmazione. Inizieremo parlando di variaibli. Introduzione Chiunque voglia approcciarsi al mondo della programmazione, si accorgerà ben presto che il coding non è esattamente come ciò che viene mostrato nei film. Non si…
Category : Java 21-09-2020 by Alessio Mungelli
Hashmap con Concatenamento: hashing, collisioni e prime funzioni
Oggi andremo a vedere dei concetti strettamente legati alle hashmap. I concetti che andremo a vedere sono quelli di hashing e collisioni. Hashing L'idea dell'hashing con concatenamento è quella di creare una sorta di array di liste, all'interno del quale, in qualche modo, inserire gli elementi. Abbiamo bisogno di mappare le chiavi di ogni nodo per capire in…
Category : Linguaggio c 28-06-2020 by Alessio Mungelli
Hashmap con concatenamento: liste di trabocco
In questa breve serie di articoli andremo a vedere com'è possibile realizzare in C la struttura dati Hashmap. Nell'implementazione andremo ad usare le liste doppiamente concatenate come strutture dati ausiliarie. Andiamo a vedere una possibile implementazione. Header file Vediamo prima di tutto com'è fatto il file .h. Definizione di un nodo Definiamo la struttura dati…
Category : Linguaggio c 21-06-2020 by Alessio Mungelli
Linux per Principianti: Guida all'installazione di Ubuntu
Abbiamo dato precedentemente una panoramica su qualche aspetto di base dei sistemi Unix e in particolar modo Ubuntu. Abbiamo infatti fatto un'introduzione, dopodichè abbiamo parlato di terminale Ubuntu e infine abbiamo parlato di permessi. Oggi tratteremo qualcosa di molto più semplice ed elementare, ma altrettanto essenziale: vediamo come installare Ubuntu sulla nostra macchina personale. Prima…
Category : Sistemi operativi 27-10-2020 by Alessio Mungelli
Linux per Principianti: I permessi
Nei precedenti articoli abbiamo fatto una breve introduzione al mondo Unix e nell'articolo successivo abbiamo parlato di comandi base per la gestione del file system. Oggi andremo a parlare di permessi. Come esempio prenderemo sempre il mondo Ubuntu, coscienti del fatto che negli altri sistemi operativi il meccanismo è simile. Essendo Linux un sistema operativo multiutente risulta particolarmente…
Category : Sistemi operativi 14-03-2020 by Alessio Mungelli
Emergenza Covid-19: Progetto Solidarietà Digitale
Come ormai molti di noi avranno sentito, il Decreto della Presidenza del Consiglio dei Ministri del 9 marzo 2020, entrata in vigoore oggi, 10 marzo 2020, estende le misure di emergenza sanitaria a tutta la penisola italiala. Per sostenere tutti i cittadini in questo difficile momento, il Ministero ha attivato un…
Category : Notizie 10-03-2020 by Alessio Mungelli
Linux Per Principianti: Terminale Ubuntu
Ho introdotto nell'articolo precedente, consultabile qui, i concetti base relativi al mondo del pinguino. Oggi andiamo a vedere alcune operazioni di base che si possono svolgere mediante linea di comando su un sistema Ubuntu-like. Che cos'è la linea di comando? Shell, terminale e riga di comando sono termini che indicano un dispositivo a interfaccia testuale. Può servire a…
Category : Sistemi operativi 23-02-2020 by Alessio Mungelli
Linux per Principianti: Introduzione
Se hai pensato di migrare da Windows a un sistema operativo Unix, o Linux nello specifico ci sono cose che dovresti sapere. L'obiettivo è quello di dare le informazioni essenziali (e non) per muovere i primi passi nel mondo del "pinguino". Che cos'è Linux? Con il termine Linux si fa comunemente riferimento…
Category : Sistemi operativi 21-08-2020 by Alessio Mungelli
Java Strutture Dati: Liste Concatenate
Con il 2020 andiamo ad esaminare un nuovo aspetto della programmazione: le strutture dati. Spesso capita a tutti di utilizzare strutture messe a disposizione dai vari linguaggi di programmazione. L'obiettivo sarà quello di avere un'idea, se pur generale di come funzionano e dei loro meccanismi interni. Spesso ne daremo una versione…
Category : Java 12-01-2020 by Alessio Mungelli
Java Algoritmi di Ordinamento: Selection Sort
Andiamo oggi ad analizzare in dettaglio un algoritmo di ordinamento non molto efficiente ma piuttosto utilizzato in diversi ambiti. Stiamo parlando del Selection Sort. Vediamo meglio in dettaglio. Intuizione L'idea alla base è quella di suddividere l'array da ordinare in due sotto-array. Uno che contiene i dati già ordinati e occupa le prime posizioni…
Category : Java 31-03-2023 by Alessio Mungelli
Java algoritmi di ordinamento: Merge Sort
Andiamo oggi ad analizzare uno tra i migliori algoritmi di ordinamento: il Merge Sort. Detto anche algoritmo per fusione, fa parte della famiglia dei Divide and Conquer proprio come il Quick Sort. A differenza del prima citato Quick Sort, il Merge Sort offre prestazioni migliori, siccome nella peggiore delle ipotesi la sua complessità rimane simile a O(n log…
Category : Java 13-12-2019 by Alessio Mungelli
Java algoritmi di ordinamento: Quick Sort
Bentornati in questa nostra panoramica sul mondo Java! Oggi andremo a parlare di un algoritmo di ordinamento tra i più celebri. Il Quick Sort. A differenza del precedentemente trattato Bubble Sort, Quick Sort non si presta particolarmente a fini didattici siccome la sua implementazione potrebbe non risultare banale, ma a livello prestazionale…
Category : Java 12-12-2019 by Alessio Mungelli
Java algoritmi di ordinamento: Bubble Sort
Programmando, nasce spesso la necessità di ordinare le collezioni di dati o oggetti che devono poi essere manipolate. Ordinare una lista può essere utile nei casi in cui si debbano fare ricerche molto rapide. Vedremo più avanti quanto mantenere una lista ordinata sia utile per effettuare ricerche dicotomiche e avere…
Category : Java 03-04-2023 by Alessio Mungelli
Java Design Pattern: Prototype Pattern
Andremo ora a parlare di un pattern creazionale che ci permette di "copiare con classe". Sì, anche se sembra strano, il compito fondamentale di questo pattern è copiare. Sto parlando del Prototype Pattern. Chiariamo subito questo concetto. Quando si parla di creazione di oggetti, il nostro immaginario comune da programmatori ci fa…
Category : Java 18-09-2019 by Alessio Mungelli
Java Design Pattern: Builder Pattern
Andiamo oggi a parlare di un pattern creazionale che in molte situazioni può rappresentare una valida alternativa alla costruzione di oggetti mediante costruttori: il Builder Pattern. La necessità di introdurre meccanismi alternativi a quelli forniti da Java per la creazione di oggetti nasce dal fatto che talvolta le strutture sono molto…
Category : Java 17-09-2019 by Alessio Mungelli
Java Design Pattern: Strategy Pattern
Uno dei pattern che gode di una notevole popolarità ed è al contempo piuttosto semplice è lo Strategy Pattern. Membro della famiglia dei pattern comportamentali, ha il compito di gestire algoritmi, relazioni e responsabilità tra classi. Il GoF lo definisce come: Definisce una serie di algoritmi incapsulati che possono essere scambiati per…
Category : Java 16-09-2019 by Alessio Mungelli
Java Design Pattern: Factory Pattern
Continuando il discorso sui design pattern iniziato precedentemente, andiamo oggi a vedere un altro pattern molto utilizzato: il Factory Method Pattern. Il GoF (Gang of Four Design Patterns) lo definisce così: Definisce un’interfaccia per creare oggetti, ma lascia alle sottoclassi la decisione del tipo di classe a istanziare. Già dalla definizione, si può notare…
Category : Java 11-09-2019 by Alessio Mungelli
Java: Introduzione ai design pattern: Singleton
Chiunque abbia anche una minima esperienza di programmazione, si sarà reso conto di come i problemi sianoricorrenti. Infatti troviamo spesso problemi con uno stesso pattern ma con contesti differenti. Ad esempio, un gestionale per un magazzino di un supermercato e quello per un magazzino di una grande industria avranno presumibilmente dati diversi,…
Category : Java 11-09-2019 by Alessio Mungelli
Java 12, finalmente meno prolisso?
Conosciamo tutti Java per le sue caratteristiche grazie alle quali, nonostante siano passati più di 20 anni dalla prima versione,è tutt'oggi uno dei linguaggi più studiati e più utilizzati, malgrado la crescente diffusione di Python. Una delle forti pecche rimane comunque il fatto che sia molto prolisso e per anni Oracle…
Category : Java 11-10-2019 by Alessio Mungelli
Wi-Fi 6, il Wi-Fi orientato anche all'IoT
Nel terzo trimestre del 2019, la Wi-Fi Alliance ha finalmente deciso di rilasciare la nuova versione del protocollo Wi-Fi, innovativo sin dal nome. Infatti, se tutti gli standard precedenti avevano nomi pressochè incomprensibili, come IEEE 802.11a, IEEE802.11n e così via, il nuovo protocollo si chiama Wi-Fi 6. Il nuovo standard introduce diverse novità. Andiamo a vedere…
Category : Tecnologia 12-09-2019 by Alessio Mungelli