Accedi / Registrati Account

Applicazioni cloud native

Cosa sono i framework Java?

Jump to section

I framework Java™ sono corpus di codice già scritto che gli sviluppatori usano come base per creare le applicazioni avvalendosi del linguaggio di programmazione Java.

Elementi specifici del linguaggio di programmazione Java, fungono da piattaforma per lo sviluppo di applicazioni software e programmi Java.

Dal momento che sono riutilizzabili, servono come modello che gli sviluppatori usano per creare le applicazioni integrando il proprio codice in modo da ottenere il risultato desiderato.

Un framework è concepito per essere riutilizzato; gli sviluppatori possono programmare le applicazioni senza intervenire manualmente per creare da zero ogni singola riga di codice.

I framework Java includono classi (ad esempio categorie di oggetti) e funzioni predefinite, da utilizzare per elaborare, integrare e gestire i dispositivi hardware e per interagire con i software di sistema. L'impiego di tali elementi dipende dal tipo di framework, dalle competenze del programmatore Java, dall'obiettivo finale e dalle preferenze personali.

Cos'è Java?

Java è un linguaggio di programmazione orientato agli oggetti (OOP) utilizzato dagli sviluppatori sin dal 1995, per programmare applicazioni che funzionano all'interno del dominio in cui si trovano.

Java non va confuso con JavaScript, un linguaggio di programmazione diverso, sviluppato da un'altra azienda all'incirca nello stesso periodo. Java crea app che possono essere eseguite su browser o server, ad esempio sistemi bare metal, macchine virtuali o container, mentre JavaScript può essere eseguito solo su browser.

Framework, librerie e API a confronto

Rispetto a un'applicazione, la libreria rappresenta una determinata funzione, un framework è la sua struttura portante, e l'API combina i due elementi per l'utente. Il framework può includere una libreria, un compilatore e altri programmi utilizzati nel processo di sviluppo. Se dispone di un framework valido, uno sviluppatore non deve occuparsi delle parti di codice ricorrenti utilizzate in un dominio o in un'applicazione.

Libreria

Una libreria è una raccolta di risorse o routine precompilate e di utilizzo frequente (classi, modelli, dati di configurazione, ecc.) a disposizione di un programma informatico. Le routine sono progettate per essere riutilizzate quando occorre eseguire un'attività, eliminando così la necessità di scrivere ogni volta il codice della funzione di tale attività. Quando serve una risorsa, il programma indirizza la richiesta alla relativa libreria.

Framework

Un framework può essere inteso come una raccolta di librerie. La differenza principale sta nella cosiddetta "inversione del controllo": il framework esegue la chiamata, sulla quale ha quindi il controllo. Il framework integra già il modello o la struttura degli elementi necessari; in questo senso, può richiamare le risorse che occorrono in base a quelle già presenti (i vuoti di codice che devono essere compilati).

Interfaccia di programmazione delle applicazioni (API)

Un framework è simile a un'interfaccia di programmazione delle applicazioni (API), ma tecnicamente include un'API. Si tratta di una sorta di base per la programmazione, mentre l'API consente l'accesso agli elementi da esso supportati.

Framework Java più diffusi

Esistono diverse tipologie di framework Java. il cui utilizzo è determinato dalle competenze dello sviluppatore e dai requisiti dell'app o del sito web. Tra i framework open source più diffusi ricordiamo:

  • Quarkus, un framework Java per l'intero stack ottimizzato per le infrastrutturecloud native e di microservizi.
  • Grails, scritto nel linguaggio di programmazione Groovy per fornire framework di applicazioni web che prevedono plugin HTML e CSS.
  • Hibernate, un framework a livello ORM (Object Relational Mapping) utilizzato per la gestione dei database relazionali che può eseguire query SQL con il supporto delle API fornite da JDBC (Java Database Connectivity).
  • Google Web Toolkit (GWT), in grado di connettere i team di sviluppo software che si occupano di front-end/lato client e back-end.

Altri diffusi framework Java includono:

  • Vaadin, con framework dedicati alle interfacce utente 
  • Play, che ottimizza lo sviluppo delle app web e funziona in modo ottimale con il linguaggio di programmazione Scala.
  • Apache Struts, incentrato sulle applicazioni enterprise e ottimizzato per le tecniche asincrone JavaScript e XML (AJAX). Costituisce un valido metodo per aggiornare sezioni di pagine web senza dover aggiornare tutto.
  • JavaServer Faces (JSF) di Oracle, che offre framework frontend agli sviluppatori backend.

Quarkus: un framework Java per l'intero stack

È uno stack Java Kubernetes native realizzato per le macchine virtuali Java (JVM) e per la compilazione nativa. Ottimizza Java specificamente per Kubernetes e lo trasforma in un'efficiente piattaforma per ambienti serverless, cloud e Kubernetes.

L'inserimento della dipendenza di Quarkus si basa su CDI (Contexts and Dependency Injection) e include un framework di estensione per ampliare le funzionalità e configurare, avviare e integrare un framework nell'applicazione. L'aggiunta di un'estensione è facile come quella di una dipendenza, ma in alternativa è possibile utilizzare gli strumenti di Quarkus.

Strumenti a supporto dei framework Java

Red Hat JBoss Enterprise Application Platform logo

Piattaforma per lo sviluppo di servizi basati su Java.

Red Hat Codeready product logo

Ambiente di sviluppo integrato (IDE) certificato, basato su Eclipse.

Red Hat Runtimes

Insieme di prodotti, strumenti e componenti per applicazioni cloud native.

Approfondisci Java e il cloud native