venerdì 26 ottobre 2007

Eccezioni

Le eccezioni sono un modo chiaro per controllare gli errori, senza confondere il codice con tante istruzioni di controllo dell'errore. Quando si verifica una situazione di errore viene lanciata una eccezione, che se viene in seguito catturata permette di gestire l'errore, altrimenti viene eseguita dal supporto a tempo di esecuzione di Java una ruotine di default.


riferimento sito: http://www.claudiodesio.com
video corso: http://www.corsojava.it
Libro

Librerie

Come già accennato più volte, Java possiede un’enorme e lussuosa libreria di classi standard, che costituisce uno dei punti di forza del linguaggio. Essa è organizzata in vari package (letteralmente pacchetti, fisicamente cartelle) che raccolgono le classi a seconda del campo d’utilizzo. I principali package sono:

- java.io
- java.awt
- java.net

- java.applet

- java.util

- java.lang



riferimento sito: http://www.webmasterpoint.org
video corso: http://www.corsojava.it
Libro

Interfacce

E' importante capire la differenza tra classi e interfaccia in Java.
Un'interfaccia è una definizione di come una classe dev interaggire con il resto del mondo.
Una classe può essere la realizzazione in pratica di una o più interfacce.
La dichiarazione di un'interfaccia Java introduce un nuovo tipo di riferimento in cui membri sono classi, interfacce, costanti e metodi astratti.
Una variabile il cui tipo si un'interfaccia può avere come valore un oggetto di qualsiasi classe che la realizzi.

riferimento sito: http://www.di.unipi.it
video corso: http://www.corsojava.it
Libro

Object


- tutti gli oggetti estendono qualche oggetto
- se non si estende un'altra classe, si estende (implicitamente) Object
- Object è l'unico oggetto che non estende nessun altro oggetto.
- tutti gli oggetti ereditano (direttamente o indirettamente) da Object, per cui i suoi metodi sono presenti in tutti
gli oggetti Java.
- ogni oggetto può essere convertito ad Object, e infatti quando occorre riferirsi a qualsiasi oggetto si utilizza
un riferimento ad Object.


riferimento sito: http://www.di.unipi.it
video corso: http://www.corsojava.it
Libro

martedì 23 ottobre 2007

Ereditarietà

· L'ereditarietà consente di riutilizzare il codice esistente
· Il meccanismo di ereditarietà consente di riutilizzare i dati esistenti, aggiungendone di nuovi.
· Molto più importante è il meccanismo del polimorfismo, che consente di riutilizzare il codice esistente
cambiandone il comportamento.

Gerarchia di classi
· Tramite l'ereditarietà si ottiene una gerarchia di classi.
· Una classe estende un'altra. La prima classe si chiama superclasse la seconda sottoclasse o classe derivata.
· A è la superclasse di B, che è la superclasse di C, D,E
· C D E sono derivate di B ma anche di A
· A e B sono superclassi di C, D ed E



riferimento sito: http://www.java-net.it
video corso: http://www.corsojava.it
Libro

I package

I package sono delle collezioni di classi, racchiuse in una collezione che le accomuna. Sono in pratica delle librerie a cui l'utente può accedere e che offrono varie funzionalità.

I package possono anche essere creati dall'utente, ad esempio racchiudendovi tutte le classi che ha definito per svolgere alcune funzioni che poi userà in vari programmi, ma questo a noi non interessa, perché ci interesserà vedere i package sicuramente più interessanti definiti in Java.

Esempio


riferimento sito: http://java.html.it
video corso: http://www.corsojava.it
Libro

Fondamentale: Static

Questo modificatore rappresenta un fondamentale e potente comando di Java. Con static, la programmazione ad oggetti, trova un punto di incontro con quella strutturata, ed il suo uso, deve essere quindi limitato a situazioni in cui realizzi in una concreta utilità.

Potremmo tradurre il termine static con "condiviso da tutte le istanze della classe", oppure "della classe".

riferimento sito: http://www.wmlscript.it/
video corso: http://www.corsojava.it
Libro

Classi

In Java le classi sono dei modelli per gli oggetti, ovvero sono delle strutture dati utilizzate per definire le caratteristiche e le funzionalità di un determinato tipo di oggetto. Una classe, una volta definita, viene instanziata creando un oggetto. E' importante non far confusione tra la definizione di una classe e l'instanzizione di un oggetto.

Definire una classe consiste nell'elencare una serie di proprietà e funzioni, instanziare un oggetto invece vuol dire creare una variabile che presenta le caratteristiche della classe da cui è stata generata.

Ecco la piu classica delle classi...la piu semplice.



riferimento sito: http://www.webmasterpoint.org
video corso: http://www.corsojava.it
Libro

domenica 21 ottobre 2007

Comandi

Le espressioni sono sempre contenute nei comandi. Questo lo abbiamo detto dall'inizio. In
realtà un comando viene costruito a partire da una espressione.
In particolare abbiamo due tipi di comandi: semplici e composti.

Semplici:
una espressione seguita da un “ (punto e virgola)
a+1;

Composti: un comando contenente un altro comando
if (a>1) b=b+1;
I comandi composti hanno la caratteristica di essere ottenuti combinando più comandi. Cioè,
questo vuol dire che si ha un comando che può essere composto da un sotto comando.

A questo proposito non possiamo che introdurre:

- comandi semplici e blocchi
- comandi condizionali
- ritorno di valori
- comandi di ciclo
- comandi di interruzione di ciclo
- gestione eccezioni


riferimento sito: http://java.html.it
video corso: http://www.corsojava.it
Libro

Array & Stringhe

Nel linguaggio di programmazione object-oriented Java, gli array (o vettori) sono strutture dati complesse, costituite dall'aggregazione di un certo numero di variabili, individualmente accessibili tramite indice.

Una stringa non è altro che una sequenza di lettere, di conseguenza il tipo String permette di creare delle variabili che contengono dette sequenze. Osservate che il nome del tipo di dato stringa (String), a differenza di quanto accadeva per i tipi numerici, inizia con la lettera maiuscola. Questo in Java indica che String è il nome di una classe e che quindi gli oggetti stringa che andremo a definire potranno far uso dei metodi definiti nella classe String.

riferimento sito (Array): http://java.html.it
riferimento sito (Stringe): http://www.webmasterpoint.org
video corso: http://www.corsojava.it
Libro:

Operatori

Vediamo le categorie degli operatori. Si tratta di un modo arbitrario per
categorizzare gli operatori presenti nel linguaggio Java. Seguiremo questo ordine nella
descrizione che stiamo per dar nelle pagine successive.

RELAZIONALI: >,>=,<,<=,==,!=
ARITMETICI: **+-*/%**
BINARI: & | ^ >> << <<<
LOGICI: && || ?:
INCREMENTO: ++ --


riferimento sito: http://java.html.it
video corso: http://www.corsojava.it
Libro:

Espressioni

Le espressioni sono composte da una sequenza di operatori alternati a operandi. Valgono le
regole tradizionali della aritmetica, quelle che abbiamo imparato già dalla scuola elementare. Ci
sono però alcuni concetti che vale la pena di ribadire per fissare le idee per fornire delle regole
sicure su come vengono effettuati calcoli.

riferimento sito: http://java.html.it
video corso: http://www.corsojava.it
Libro:

sabato 20 ottobre 2007

Tipi in Java

Come abbiamo detto, ci sono due "gruppi" di tipi di dato:

· Primitivi
· Oggetti

Primitivi:

· Sono fissi
· Una "istanza" di tipo primitivo è generata da una costante
· Si agisce su di essi con gli operatori
· Una variabile "contiene" un tipo primitivo (il concetto tradizionale di variabile)

Oggetti:

· Sono in numero illimitato (creati dal programmatore)
· Una "istanza" di oggetto è generata da un costruttore
· Si agisce su di essi con i metodi
· Una variabile "riferisce" un oggetto: è un puntatore!


Tipi primitivi:



riferimento sito: http://java.html.it
video corso: http://www.corsojava.it


Panoramica Sintassi

Java è un linguaggio imperativo orientato agli oggetti.
· Quindi contiene espressioni che vengono gestite tramite comandi.
· I comandi vengono incapsulati in metodi
· I metodi vengono contenuti in classi
· A loro volta le classi vengono raccolte in package.

Bene, pian pianino incominciamo a vedere come si presenta la sintassi per quanto riguarda


- Espressioni & Comandi
riferimento sito: http://java.html.it
video corso: http://www.corsojava.it
Libro:

- Classi
riferimento sito: http://www.java-net.it
video corso: http://www.corsojava.it
Libro:

-Metodi
riferimento sito: http://www.java-net.it
video corso: http://www.corsojava.it
Libro:

- Commenti al codice:
riferimento html: http://java.html.it
video corso: http://www.corsojava.it
Libro:

martedì 9 ottobre 2007

Le Api non si sorvolano!!!

Stavo abbozzando la prima lezione dimenticandomi della Bibbia! Mi riferisco alle Application Program(ming) Interface (Interfaccia di Programmazione di un'Applicazione) comunemente chiamate API. Praticamente è la nostra guida che ci toglie dubbi sul comportamento dei metodi, classi ecc...che incontreremo. Certo è in inglese e risparmiamoci il tempo di cercarle in italiano che non le troveremo!
Con poche parole chiave e un pò di intuito si riuscirà a capire gran parte del suo contenuto.

http://java.sun.com/j2se/1.4.2/docs/api/

VideoCorso Java

I vari manuali di java per quando abbia visto con i miei occhi non sono cosi poi tanto piccoli e ricchi di figure. Tante e tante pagine di codice con le relative spiegazioni, per carità utilissime, ma che delle volte stancano. Sopratutto all'inizio sconfortano, perchè apprese le prime nozioni il desiderio di vederle messe in atto è grande. Questo perchè vogliamo capire meglio. Allora ecco, vi propongo un bel videocorso di Michele Sciabarrà. Scoperto navigando questo corso mi è stato di grande aiuto. Semplice da utilizzare, semplice di contenuti, ma molto efficace:

- in alto e in orizzontale abbiamo ben 14 pulsanti rispettivamente uno per ogni argomento;

- si parte selezionandone uno. Automaticamente parte la voce guida del "Michele" che spiega passo passo cosa sta facendo/digitando;

- ogni lezione ha una linea del tempo ed è suddivisa in scaglioni (questo per darci il tempo per comprendere il contenuto). Ad ogni scaglione si presenta sul video un tasto verde tipo play che vuol'essere premuto per andare avanti. E' come se noi interrompessimo il prof e poi siamo gli stessi a dire "vada avanti ho capito, può continuare": Niente male!!!

- durante tutte le 14 lezioni, tutto quello che viene spiegato non vola via, ma viene applicato immediatamente. Si perchè in questo corso sono incluse delle prove con Eclipse che noi possiamo imitare con l'IDE sul nostro pc.

Ecco il link: http://www.corsojava.it/videocorso/
Si raccomanda di accende eventuali casse e alzare il volume per evitare improbabili scene mute :).

giovedì 4 ottobre 2007

Apparecchiamo la tavola

Ok si parte, apparecchiamo la tavola prima di abbuffarci con il codice. Abbiamo bisogno di due cose fondamentali:
- installare la Java Virtual Machine sono 130 mb circa
- un IDE (vi consiglio Eclipse perchè credo, per esperienza personale, sia uno dei migliori ed è abbastanza intuitivo)

Cos'è un IDE??? Il suo compito è fondamentale. E' un programma che facila la nostra programmazione. Per farvi capire meglio di cosa stiamo parlando vi dico che è come un editor di testo che oltre a permette la stesura del codice (in un certo linguaggio) da la possibilità di compilarlo e di effettuarne il debugging (trovare gli errori).
Vi dirò che il programma è abbastanza complesso quanto utile. Impiegherete un bel pò a capire i vari comandi e pulsanti, ma una volta imparate le funzioni base vedrete che vi faciliteranno i percorsi in una maniera impressionante. La soddisfazione verrà quando scoprirete che con un pulsante eliminate due-tre ore di lavoro. Garantito!

Ormai manca poco ed affiancheremo un pò di pratica a questa teoria. Forza!

Parentesi Java Virtual Machine

Come promesso faccio luce su quanto accennato prima "applicazioni sicure ed indipendente dalla piattaforma" soprattutto sul lato dell'indipendenza
Java e la maggior parte degli altri linguaggi possono essere paragonati solo dal punto di vista delle funzionalità, perché fondamentalmente sono molto diversi!

Prendiamo ad esempio C++. Esso compila i sorgenti dei programmi in un codice che è il codice della macchina ( per macchina intendo computer + sistema operativo ) su cui è eseguito.

Prendiamo invece Java. Java compila i sorgenti dei suoi programmi in un codice detto Bytecode, diverso dal linguaggio della macchina su cui è compilato!

Java è diventato una vera e propria piattaforma intermedia tra il software di base (i sistemi operativi) e i software applicativi. Il suo vantaggio è di essere indipendente dall’hardware e dai software usati e questo «trucco» viene ottenuto creando una cosiddetta Java machine, e cioè un altro pezzo di software che riceve le istruzioni in linguaggio Java e le traduce al volo in quello dell’apparato sottostante, un vero traduttore simultaneo, della cui esistenza e attività gli utenti nemmeno si accorgono.
Una Java Virtual Machine è implementata anche nei vari Browser (Come Netscape e Explorer) per poter eseguire i programmi Java incontrati nella rete, i cosidetti Applet.

Rompiamo il ghiaccio

Prima di iniziare a programmare ebbene chiarire alcuni concetti chiave. Credo che se non sciogliessimo i dubbi fondamentali in questo momento potremmo camminare con il freno a mano tirato e sarebbe abbastanza improduttivo.

- Cos'ha di tanto particolare Java? Java permette agli utenti di Internet di utilizzare applicazioni sicure e indipendenti dalla piattaforma. Vi sembra poco? :) (presto approfondiremo questo concetto)

- Java sostituisce HTML? Java non è un linguaggio che si pone al posto di HTML, ma al fianco di esso per garantire la sicurezza. Da quando esiste Java ecco che si è potuto parlare di numeri di carte di credito e di informazioni sicure, notizia che ha molto affascinato le grosse società mondiali ed Internet è divenuto quel che conoscete.

Java non è un incubo

Alzi la mano chi ha non ha mai programmato e si appresta a farlo. Se vi dico "Java" cosa fate? Lo so, scappate. Beh anch'io l'ho fatto, sono scappato, perchè non avendo nessuna esperienza alle spalle nell'ambito della programmazione, imparare il linguaggio Java sembrava un'impresa quasi impossibile.
RILASSATEVI. E' facile spaventarsi, ma forse è più facile imparare. Si! perchè con le giuste guide che vi darò vi avvicinerete alla Belva, inizierete ad avere confidenza molto gradualmente, vi farò fare amicizia fino a rendervi autonomi e chissà un giorno sarete voi a continuare a scrivere questo blog.