Panoramica
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.
Risorse da Red Hat
Framework, librerie e interfacce di programmazione delle applicazioni (API) a confronto
Rispetto a un'applicazione, la libreria rappresenta una determinata funzione, un framework è la sua struttura portante e l'interfaccia di programmazione delle applicazioni (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.
Cos'è una 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.
Cos'è un 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).
Cosa sono le 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.
Le tipologie di framework Java più diffuse
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.
Il blog ufficiale di Red Hat
Leggi gli articoli del blog di Red Hat per scoprire novità e consigli utili sulle nostre tecnologie, e avere aggiornamenti sul nostro ecosistema di clienti, partner e community.