Spostato qui: Un editor html online con anteprima in tempo reale
Articoli marcati con tag ‘programmazione’
spostato – Un editor html online con anteprima in tempo reale
lunedì, 14 gennaio 2008Tipi di dati astratti: la coda (queue) e algoritmo in Java 5.0
mercoledì, 3 ottobre 2007Secondo capitolo della puntata algoritmi e strutture dati la coda.

Un coda una struttura dati molto semplice, segue il principio FIFO, First In First Out, il primo ad entrare il primo ad uscire.. o potremmo dire chi primo arriva meglio alloggia!:P
Oggi non posso spiegarvi tutto, come sempre confido nei vostri commenti e richieste di informazioni specifiche per contribuire al meglio al post. Vediamo subito quali metodi ha l’interfaccia Queue:
- enqueue(e): accoda l’elemento e alla coda, in pratica posiziona dietro l’elemento;
- dequeue(): prende il primo elemento della coda, ovvero il primo ad essere entrato, lancia un’eccezione se vuota;
- front(): simile al pop dello stack, legge il primo elemento della coda senza per toglierlo da essa, lancia un’eccezione se vuota;
- size(): un classico ormai, restituisce la dimensione;
- isEmpty(): booleano per sapere se la coda vuota o occupata da elementi.
Vediamo quindi l’interfaccia:
package queue;
import exception.EmptyQueueException;
public interface Queue<E> {
public int size();
public boolean isEmpty();
public E front() throws EmptyQueueException;
public void enqueue(E element);
public E dequeue()throws EmptyQueueException;
}
Tipi di dati astratti: Lo Stack, con algoritmo in Java 5.0
martedì, 2 ottobre 2007Eccoci finalmente arrivati alla prima stuttura di dati che andremo ad analizzare, lo Stack.

Prima di cominciare vorrei fare una piccola premessa, utilizzo il linguaggio Java per implementare gli algoritmi (in particolare Java 5.0), si presume (come ho citato nell’articolo precedente) che conosciate almeno in piccola parte il linguaggio Java, in particolare Classi, interfacce, Variabili assegnamenti e operatori/operazioni, cicli, packages e chi pi ne ha pi ne metta. Non vorrei trattare guide riguardanti la normale programmazione in Java in quanto ci sono degli ottimi libri che permettono di superare addirittura un esame universitario (nel mio caso cos stato
), mi permetto quindi di citarvi l’ottimo Java Mattone dopo Mattone, liberamente scaricabile e utilizzabile da tutti, non sar aggiornatissimo ma una volta acquisiti i fondamenti iniziali aggiornarsi alle ultime versioni di Java non sar un problema
. (continua…)
Implementiamo degli algoritmi e strutture di dati in Java 5.0
lunedì, 1 ottobre 2007
Salve ragazzi oggi ricominciata l’Universit… vediamo un po se riusciamo a studiare insieme… magari bloggando le cose che faccio mi entrano meglio in testa e forse mi preparer meglio per gli esami oltre al fatto che cos dovr studiare quasi tutti i giorni per poter scrivere l’articolo
Vi parler di un corso molto bello riguardante Laboratorio di Algoritmi e Strutture Dati (da ora in poi conosciuto con il tag LASD) nel quale vedremo come implementare in Java e in particolare in Java 5.0 con le classi generiche Algoritmi e Strutture Dati di grande utilit per i programmatori. Ma prima di tutto conosciamo meglio la definizione di Algoritmi e Strutture Dati:
Una struttura dati un’entit usata per organizzare un insieme di dati all’interno della memoria del computer, ed eventualmente per memorizzarli in una memoria di massa. La scelta delle strutture dati da utilizzare strettamente legata a quella degli algoritmi, a tal proposito, solitamente si utilizza il concetto unificato di Algoritmi e Strutture Dati. (continua…)
Ho scoperto Python! Perch non l’ho fatto prima?? Come installarlo su Windows (incluso Feedparser)
sabato, 25 agosto 2007
Continua il mio viaggio di esproprio dal proprio ambiente di lavoro nativo di programmi praticamente perfetti. Oggi ho scoperto Python.
Cosa Python??
Python un linguaggio di programmazione interpretato, interattivo, ad oggetti. Incorpora i moduli, le eccezioni, la tipizzazione dinamica, alcuni tipi di dati dinamici ad altissimo livello e le classi. Python unisce una potenza considerevole ad una sintassi molto pulita e comprensibile. ?? dotato di interfacce a molte chiamate di sistema e librerie, come pure a vari sistemi a finestre, ed estensibile in C o C++. ?? utilizzabile pure come linguaggio di estensione per applicazioni che necessitano di un’interfaccia programmabile. Infine, Python portabile: funziona su molte versioni di UNIX, su Mac, e sui PC sotto MS-DOS, Windows, Windows NT, e OS/2. (Fonte: Python.it)
Conoscevo gia questo linguaggio di programmazione, su [tag]Linux[/tag] mi sono imbattuto pi volte, ma non ne avevo mai approfondito l’uso ne tantomeno sono capace di scrivere una sola riga di codice fin quando non mi sono imbattuto su questo articolo: Come mettere le ultime news del blog in firma con Mozilla Thunderbird.
Lo script creato da questo fantastico ragazzo di cui ora seguir sempre il blog tramite feed [tag]rss[/tag], stato creato in Python con il supporto della libreria Universal Feed Parser di cui tratter dopo l’installazione.
Guida pratica all’uso di Subversion su Windows con TortoiseSVN (How-to)
domenica, 19 agosto 2007L’articolo è stato spostato qui: Guida pratica per Subversion su Windows;
Codice sorgente dello Snake 0.4 in Java 5.0 e How-to
lunedì, 25 giugno 2007Ho ripreso in mano i manuali di programmazione e non faccio altro che distrarmi come al solito, nelle mie vecchie cartelle ho ritrovato dei giochini in Java fatti da me un bel po di tempo fa. Due versioni dell’intramontabile Snake. Uno dove non si muore mai e uno nel classico stile di Snake. Avevo gia pubblicato il codice sorgente su Unitribu un forum universitario da me gestito ma che stato accantonato da un bel po di tempo e ho deciso di rispondere all’unico commento ricevuto con una breve guida.
Per compilare il gioco visto che ho letto di alcune difficoltà vi descrivo la procedura passo passo da fare in Eclipse 3.2.2.
Una volta scaricato basta estrarlo e aprire la cartella, non necessita di installazione. Troverete all’interno della cartella Eclipse un file chiamato eclipse.exe facendo doppio click sopra potrete avviare (dopo aver selezionato una cartella per il workspace) Eclipse.
Subito dopo andate su File > New > Project e scegliete Java Project poi cliccate su Next.
Apparirà questa schermata:

Assicuratevi che in JRE sia selezionata almeno la versione 1.5.0 oppure come nel mio caso la versione 1.6.0. Poi cliccate sotto su Configure compilance…

Il livello di compilazione deve essere impostato almeno su 5.0 altrimenti non si potranno usare le classi generiche previste da Java 5.0(e superiori). Date OK e alla richiesta successiva rispondete YES. Apparirà la finestra precedente date Next e poi Finish.

Ora vedrete nel Package Explorer la nostra bella cartella Giochi, cliccate su New Java Package (l’icona indicata nell’immagine).

Restate Giochi in source folder e date come nome del package snakeB_04. Questo sarà il risultato finale:

Cliccate ora su New Java Class e date un nome alla vostra classe.


Cliccate su Finish e si aprirà il vostro bel file Snake.java pronto da essere editato.

Cancellate tutto e incollate il codice sorgente contenuto in questo file snake.java. Poi dopo andate nel Package Explorer, cliccate con il destro su Snake.java e scorrete fino alla voce Run As > Java Applet:

Vi verrà chiesto di salvare il programma, date Ok, il tempo di elaborare e codificare in Byte code il codice sorgente e verrà avviata l’applet che potrete testare.
Vi faccio presente che nell’applet ci sono molte imperfezioni e inoltre ho verificato la presenza di un bug abbastanza grave che fa crashare il gioco che non ho avuto tempo di sistemare, quindi se volete potete risolvere i problemi e rielaborare il tutto a vostro piacimento però abbiate l’accortezza di inviarmi indietro la vostra versione modificata perchè così potrò imparare qualcosa da voi. Grazie.
THAT’S ALL!
Rilasciato il codice sorgente Java dello SnakeB fatto da me.
sabato, 2 dicembre 2006Ho pubblicato il codice sorgente del gioco da me fatto in precedenza e pubblicato su questo sito sul forum di Unitribu.net, nella sezione Informatica, cos possiamo raccogliere le discussioni in un forum.
Ecco qui il link:
Il vero Snake! Appena finito di fare e corretto
sabato, 18 novembre 2006SnakeB 0.3 – Aggiornamento dalla versione precedente e implementazione della MORTE
Molti di voi mi hanno detto che al mio Snake non si moriva mai, che era una palla e che non c’era sfizio..Beh io a tutti vi rispondo che avevo sempre sognato un gioco cos
davvero un potente antistress per me! Inoltre visto che non sto mai con le mani in mano vi ho accontentato tutti e ho creato il classico Snake(escluso il fatto che attraversa i muri che mi piace un casino).
Cosa c’ di nuovo? Allora, non potete pi far scontrare il serpente con se stesso, ne fare retromarcia, inoltre stato aggiunto il punteggio con possibilit di memorizzare il Record. Appena possibile rilascer un’ulteriore versione che permetter di salvare i migliori punteggi in un database. Inoltre potete scrivere il vostro nome nella finestra che compare.
È stato inoltre risolto un antipaticissimo Bug, che faceva bloccare Snake che sfociava in un Loop infinito, c’ un altro errore durante il reset in caso di sconfitta meno fastidioso che non sono ancora riuscito a capire in quali casi si crea. Quindi se vi capita ditemi un po in quale situazione o magari mi postate uno screenShot. Grazie RAGAZZI
Per giocare cliccate con il mouse nel riquadro qui sotto, poi muovete i tasti direzionali!
Lo Snake pi pazzo che c’!
giovedì, 16 novembre 2006SnakeB 0.2 – Il mio primo giochino cazzuto in Java
Chi di voi non ha giocato al buon vecchio Snake?? Immagino tutti…ah ricordo ancora i megatornei dietro al banco del liceo con i cellulari allo Snake 1 e 2 della Nokia, hihihi quante ne abbiamo combinate(Catap t ricord record?? hiihihhi), naturalmente il sottoscritto li ha battuti tutti, e se si permettono di dire che non vero abbuscano tutti quanti uno ad uno! ihihihi LOL. Ritorniamo a noi, questo Snake un pochino particolare…Stufo di perdere ore ed ore per poi morire e ricominciare da capo ho sempre sognato di crearmene uno dove non si muore mai….AVETE CAPITO BENE! QUI NON SI MUORE MAI! hihihih. Ma non finita qui…elenco brevemente le particolarit di questo gioco:
- Snake attraversa i bordi e ricompare all’altra estremit ;
- Snake si annoda su se stesso, fa le capriole, si attorciglia tutto quanto e non si affoga mai! hihihi;
- Snake, e sentite bene questa, ha la RETROMARCIA! Basta invertire la direzione e il simpatico serpentello prima si contrae e poi va dall’altra parte!
- Mantenendo il tasto premuto di direzione, il serpente raddoppia la velocit di movimento! Nos Inside! (Come soprannominato da Pako! Grande!).
Il gioco per funzionare necessita della Java Virtual Machine, aggiornata alla versione 1,5(o versione 5 la stessa cosa). Tecnicamente parlando questo gioco non si basa sulla classica(e molto dispendiosa) matrice NxN vista qualche post fa, ma su una lista a puntatori che memorizza tutte le posizioni dello Snake(e volendo si pu usare anche il classico ArrayList ma siccome lo sto studiando in Lasd, mi sono creato il TDA, tipo di dato astratto, da solo).
Per giocare cliccate con il mouse nel riquadro qui sotto, poi muovete i tasti direzionali!

