Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Java: Il linguaggio di programmazione orientato aggioggetti, Slide di Informatica

Java è un linguaggio di programmazione a oggetti di grande diffusione e versatilità, sviluppato da Oracle nel 1995. Consente di realizzare interfacce grafiche e applicazioni multimediali per i browser web, supportato da tutte le piattaforme grazie alla presenza della Java Virtual Machine. In questo documento viene descritta la natura, le caratteristiche e i vantaggi di Java, oltre alla programmazione a oggetti e la sua fase di sviluppo.

Tipologia: Slide

2022/2023

Caricato il 15/10/2022

cborgogno
cborgogno 🇮🇹

4

(2)

4 documenti

1 / 45

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Argomenti del corso: Java
Java è un linguaggio di programmazione a
oggetti, di grande diffusione e versatilità
Consente di realizzare interfacce grafiche e
applicazioni multimediali per i browser web.
Viene supportato da tutte le piattaforme, grazie
alla presenza della macchina virtuale Java
(Java Virtual Machine), ed è quindi
estremamente portabile.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d

Anteprima parziale del testo

Scarica Java: Il linguaggio di programmazione orientato aggioggetti e più Slide in PDF di Informatica solo su Docsity!

Argomenti del corso: Java

 Java è un linguaggio di programmazione a oggetti, di grande diffusione e versatilità

 Consente di realizzare interfacce grafiche e applicazioni multimediali per i browser web.

 Viene supportato da tutte le piattaforme, grazie alla presenza della macchina virtuale Java (Java Virtual Machine), ed è quindi estremamente portabile.

Proprietà di Java

 Rispetto ad altri linguaggi orientati agli oggetti, Java possiede i seguenti vantaggi:  i programmi sono più facili da leggere  il codice è più portabile (WORA)  il codice è robusto e con meno errori  esistono ampie collezioni di librerie (chiamate package ) che forniscono svariate funzionalità

 Tutto questo rende Java estremamente potente nonostante la sua relativa semplicità

Programmazione a oggetti

 Programmare serve generalmente a risolvere un problema o far eseguire un compito al calcolatore.

 Fasi della programmazione:

 Analisi del problema e sua comprensione  Sviluppo di un algoritmo per risolverlo  Traduzione dell’algoritmo in un programma scritto mediante un opportuno linguaggio

Programmazione a oggetti

 In Java implementare un algoritmo risolutivo corrisponde alla definizione di una o più tipologie di oggetti che interagiscono tra loro.  Progettare gli oggetti, anziché elencare le procedure da compiere.

 Un progetto di tipologia di oggetto è detto classe.

 Programmare in Java significa quindi definire una o più classi.

Programmazione a oggetti

 La programmazione Java si sviluppa in:

 EDITING del programma, tipicamente partendo da più file, ciascuno contenente la descrizione di una classe.  ciò favorisce la portabilità (in senso WORA).

 COMPILAZIONE del programma che ne consente l’ESECUZIONE da parte del calcolatore

Compilazione

 La compilazione traduce il codice del programma dal linguaggio di programmazione al linguaggio macchina della piattaforma.

 Il codice originario (sorgente) è scritto in maniera comprensibile per gli utenti umani, il codice compilato (eseguibile) è invece utilizzabile dall’elaboratore, e può riferire aspetti specifici della piattaforma sconosciuti o troppo complessi per l’utente umano.

Compilazione

 La parte “portabile” della programmazione è quella precedente alla compilazione.

Linguaggio macchina (assembler)

Linguaggio utente (^) di alto livello compilazione computer

parte specifica della piattaforma

Java Virtual Machine

 Questo meccanismo di compilazione consente di ottenere un codice sorgente portabile; tuttavia, il codice compilato non lo è (dipende dalla piattaforma).

 Per essere interamente WORA, Java utilizza un approccio di compilazione misto, con un ulteriore livello di processazione del codice.

 Tale livello, detto di INTERPRETAZIONE, ha lo scopo di rendere la compilazione indipendente dalla piattaforma.

Java Virtual Machine

 Editing

 Compilazione

 Esecuzione

 Editing  Compilazione  Interpretazione  Esecuzione

In generale Per Java

Java Virtual Machine

 Nella fase intermedia (tra compilazione e interpretazione) si avrà un formato diverso sia da Java che dall’assembler, detto bytecode.

 Quindi:

 il sorgente viene compilato ottenendo il bytecode  il programma espresso come bytecode può essere eseguito da un opportuno interprete chiamato Java Virtual Machine (JVM)

Java Virtual Machine

Linguaggio macchina (assembler)

utente Java (^) compilazione

computer

parte specifica della piattaforma

bytecode

Linguaggio macchina (assembler)

Linguaggio utente (^) di alto livello compilazione computer

parte specifica della piattaforma

Java Virtual Machine

 La JVM è a sua volta un programma scritto in un linguaggio dipendente dalla piattaforma.

 Quindi il codice compilato è sì portabile, ma a patto che sulle diverse piattaforme sia installata una JVM.

 Tuttavia, questo garantisce di non dover ricompilare il codice per ogni piattaforma.

Java Virtual Machine

 Vantaggi dell’approccio Java

 il bytecode non è l’assembler, ma un linguaggio più espressivo (di più alto livello) e indipendente dalla piattaforma; un programma in formato bytecode può essere eseguito su ogni JVM  Java consente di astrarre dalle caratteristiche della piattaforma ed elimina i costrutti dipendenti (formati numerici, stringhe… sono sempre uguali)  è la JVM a fare il lavoro di traduzione adattandosi alle caratteristiche della piattaforma