Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Corso Fondamenti di Java - Apprentissaggio Online con Certificato
dsa banner mobiledsa banner

Incerto da dove
iniziare?

Track
Certificato

Fondamenti di Java

4.5+
11 recensioni
Beginner
Intraprendi un viaggio completo nel mondo della programmazione Java. Che tu stia appena iniziando o abbia già un po' di esperienza di programmazione, questo percorso ti fornirà le conoscenze e le competenze per eccellere come sviluppatore Java. Mostra di più
java
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams
What you will learn
  • Build a strong foundation in Java by learning essential syntax, data types, and control structures
  • Expand your Java knowledge with advanced concepts, enhancing your ability to write efficient and maintainable code
  • Master Object-Oriented Programming (OOP) principles, including encapsulation, inheritance, and polymorphism
  • Learn how to work with data structures in Java, such as lists, sets, maps, and queues, to optimize performance
  • Understand the fundamentals of unit testing using JUnit, covering different types of testing methodologies
  • Dive into Java multithreading to develop high-performance applications that execute multiple tasks concurrently
  • chapters
    216 chapters
  • hours
    32 hours
  • tasks
    376 tasks
Trusted by employees of leading companies
GoogleIntelTwitterFedExMetaNikeAmazonMicrosoftTesla
Learning track content
Module 1 / Java Basics
Discover the unique features of Java and understand why it's a recommended programming language to learn. Write your first Java code and explore how to print text to the console.
Learn the basics of programming, dive into primitive data types, and explore operations with them. Write code that performs mathematical tasks and evaluates conditions for seamless execution.
Explore various loops such as for, while, and do-while, which are essential in any programming language. Loops enable efficient iteration over large datasets, saving significant time. Apply them extensively in tasks like sorting, working with arrays, collections, and more.
Learn how to effectively use arrays in Java programming by discovering how to group data into arrays and exploring common methods and properties for working with them. Techniques for manipulating and optimizing arrays in real-world applications will also be examined.
Learn about String, a crucial data type in Java, and discover its many built-in methods and operations. Explore String and StringBuilder, understanding their basic methods and how to use strings effectively in Java.
Module 2 / Java Avanzato
Nel corso delle lezioni seguenti, verranno approfonditi i meccanismi interni di Java e saranno illustrate metodologie ottimizzate per lavorare con il linguaggio. Questo comporterà l'esplorazione delle operazioni di Java a livello di computer e l'adozione delle migliori pratiche per utilizzare in modo efficiente i concetti già noti.
Hai già incontrato i metodi e ora capirai finalmente cosa sono effettivamente, come creare i tuoi metodi e come lavorarci. Imparerai a restituire i valori desiderati dai metodi e a migliorare significativamente la qualità e la logica del tuo codice.
Preparati a immergerti nel mondo di String e a scoprire di più sul suo funzionamento interno e sui suoi metodi. Esploreremo le caratteristiche interessanti offerte da String, inclusa la possibilità di personalizzare il metodo "toString", suddividere le stringhe in sottostringhe e utilizzare gli indici per un recupero efficiente dei dati. Iniziamo questo entusiasmante percorso per ampliare la nostra conoscenza della manipolazione delle stringhe!
In questa sezione, imparerai come creare le tue classi e i relativi oggetti. Sarai in grado di utilizzare i metodi di una classe all'interno di un'altra e di stabilire relazioni tra di esse. Preparati a scoprire molti concetti interessanti e ad approfondire la programmazione OOP!
In questa sezione, continueremo il nostro studio delle classi. Esploreremo un utilizzo più avanzato degli oggetti di classe e approfondiremo i modificatori di accesso e il loro utilizzo efficace. Analizzeremo inoltre getter e setter, considerati best practice nella programmazione.
Finalmente, possiamo iniziare a studiare la programmazione orientata agli oggetti (OOP) in Java. Sarà impegnativo, ma sono certo che avrai successo! In questa sezione, tratteremo tutti i principi della OOP e spiegheremo perché la OOP è importante. Imparerai come ereditare le classi, sovraccaricare e sovrascrivere i metodi, incapsulare i dati rispetto ad altre classi e lavorare con l'astrazione. Inoltre, rafforzerai tutti questi concetti teorici con esercizi pratici, lavorando su compiti nel tuo IDE. Acquisirai una vasta conoscenza, sia pratica che teorica, quindi iniziamo!
Nella sezione precedente, abbiamo concluso che tutta la Programmazione Orientata agli Oggetti si basa principalmente sull'astrazione. Tuttavia, una classe astratta presenta una limitazione significativa: è possibile ereditare solo da una classe astratta. Ma cosa succede se abbiamo bisogno di più? Le interfacce vengono in aiuto. In questa sezione, scoprirai cos'è un'interfaccia, perché è necessaria, come utilizzarla correttamente e continuerai a esercitarti con la Programmazione Orientata agli Oggetti.
Module 4 / Strutture Dati in Java
Discover the concept of lists and explore the most commonly used types in Java. Learn how to create, modify, and manage lists efficiently. Understand their internal structure and discover when to use ArrayList vs. LinkedList based on performance. Implement your own singly linked list and reinforce key concepts through practical coding challenges.
Learn about data structures that are not as commonly used but are still valuable. Data structures like Set, Stack, Queue, and Deque will help you better understand how Java works and their various applications in databases.
Learn about key-value pair-based data retrieval, enabling the creation of structures similar to databases. Discovery of concepts like hashcode and exploration of data structures such as HashMap and HashSet are also included.
Module 5 / Java JUnit Library. Types of Testing
Let's talk about types of testing and which testing methods developers use. You will learn about the stages an application goes through before being delivered to the client and the specific tests you will need to write.
In this section, we're going to dive into unit testing — you'll get the rundown on its structure in Java and the ins and outs of crafting them the right way. Setting up your IDE, importing necessary libraries, and lots of hands-on practice.
In this section, we will enhance our coding skills by dealing with errors that can also be caught in unit tests. When testing an application, you may come across various errors, and sometimes they should be turned into exceptions. I will explain how to catch exceptions in your code, test them, and handle them properly.
Module 6 / Multithreading in Java
Questa sezione approfondirà i concetti fondamentali del multithreading in Java, concentrandosi sulla creazione e gestione dei thread e sull'uso di tecniche di sincronizzazione per evitare conflitti. Verrà inoltre illustrato come utilizzare parole chiave e metodi essenziali per garantire l'esecuzione accurata e affidabile dei programmi multithread, fornendo una solida comprensione di come gestire efficacemente la concorrenza nelle applicazioni.
Questa sezione esamina le collezioni sincronizzate in Java, spiegando il loro scopo e le comuni problematiche di concorrenza che sono progettate per risolvere. Verranno approfonditi il funzionamento di queste collezioni, la loro importanza negli ambienti multithread e il modo in cui contribuiscono a garantire una manipolazione sicura e coerente dei dati quando più thread accedono a risorse condivise.
Questa sezione tratta i meccanismi di sincronizzazione di alto livello in Java, come l'utilizzo di Lock e Condition, semafori, barriere, variabili atomiche e thread pooling con Executors. Ogni argomento è accompagnato da esercizi pratici progettati per rafforzare la comprensione e aiutare ad applicare le conoscenze teoriche a scenari reali.
Questa sezione esplora i principali pattern e pratiche di programmazione multithread come Producer-Consumer, Fork/Join, ThreadLocal e la programmazione asincrona con CompletableFuture. Verranno analizzati esempi pratici e i risultati concreti di questi approcci, offrendo un'esperienza diretta che consentirà di applicare efficacemente queste tecniche in applicazioni reali.
Scopri le diverse operazioni intermedie disponibili nello Stream API che consentono di manipolare e processare i dati in stile funzionale. Queste operazioni, come il filtraggio, la trasformazione e l'ordinamento, permettono di lavorare in modo efficiente con le collezioni ed eseguire attività come la rimozione dei duplicati, la limitazione dei risultati o la gestione di strutture annidate. Ogni operazione può essere combinata per creare pipeline di dati potenti, rendendo il codice più conciso e leggibile.
Scopri come applicare lo Stream API in scenari reali, migliorando la leggibilità e l'efficienza del codice. Impara a rifattorizzare il codice esistente, analizzare i compromessi sulle prestazioni e gestire correttamente le eccezioni. Aiuterà a scrivere codice Java più pulito e manutenibile utilizzando lo Stream API.
Requirements
  1. A computer with a browser - all browsers are supported.
  2. Your enthusiasm to enhance your tech skills.
  3. Everything else needed to start learning and practicing is already included in this course.
Over 200,000 5-star ratings and counting
Ruslan Kravchuk
La cosa principale è imparare e non arrendersi
Il materiale è buono, c'è tanto da imparare, tutto per migliorarsi, e la cosa principale è imparare ciò che desideri....
Matteo Comune
Grazie a loro sto imparando molto…
Grazie a loro sto imparando molto più rapidamente perché ti aiutano a comprendere tutto da zero. È il miglior sito web per chi non ha background in IT...
Yuliana Cadavid
ottimo corso per principianti
ottimo corso per principianti, mettono alla prova le tue conoscenze in ogni lezione...
Elpunzon
Sto apprezzando la mia esperienza su Codefinity…
Sto apprezzando la mia esperienza di apprendimento di Python con Codefinity. Il metodo di studio autodidatta è fantastico perché posso adattarlo al mio orario...
Alexandru Alexandru
È piacevole imparare da Codefinity
È piacevole imparare da Codefinity. È facile e offre buoni esempi di quanto appreso qui...
jacob Templet
Easy to follow along with and provides…
Facile da seguire e offre una sfida nella mia vita quotidiana. La sfida mi motiva a imparare giorno dopo giorno...
Elan
Codefinity è uno strumento di apprendimento completo…
Codefinity è uno strumento di apprendimento completo che ti aiuta a sviluppare le tue competenze come ingegnere del software o data scientist. Gli esercizi sono divertenti e un ottimo modo per affinare le tue abilità...
Thibault
Prima volta che impari a programmare
La prima volta che ho imparato a programmare e ci sono riuscito con Codefinity - Grazie...
Adrien Morel
Ben progettato per principianti assoluti
Ben progettato per principianti assoluti, con un progresso incrementale che mi dà fiducia....
_Gracy
è semplicemente perfettamente spiegato
È semplicemente perfettamente spiegato! Finora non ho incontrato alcuna difficoltà perché tutto è così ben organizzato....
Ruslan Kravchuk
La cosa principale è imparare e non arrendersi
Il materiale è buono, c'è tanto da imparare, tutto per migliorarsi, e la cosa principale è imparare ciò che desideri....
Matteo Comune
Grazie a loro sto imparando molto…
Grazie a loro sto imparando molto più rapidamente perché ti aiutano a comprendere tutto da zero. È il miglior sito web per chi non ha background in IT...
Yuliana Cadavid
ottimo corso per principianti
ottimo corso per principianti, mettono alla prova le tue conoscenze in ogni lezione...
Elpunzon
Sto apprezzando la mia esperienza su Codefinity…
Sto apprezzando la mia esperienza di apprendimento di Python con Codefinity. Il metodo di studio autodidatta è fantastico perché posso adattarlo al mio orario...
Alexandru Alexandru
È piacevole imparare da Codefinity
È piacevole imparare da Codefinity. È facile e offre buoni esempi di quanto appreso qui...
jacob Templet
Easy to follow along with and provides…
Facile da seguire e offre una sfida nella mia vita quotidiana. La sfida mi motiva a imparare giorno dopo giorno...
Elan
Codefinity è uno strumento di apprendimento completo…
Codefinity è uno strumento di apprendimento completo che ti aiuta a sviluppare le tue competenze come ingegnere del software o data scientist. Gli esercizi sono divertenti e un ottimo modo per affinare le tue abilità...
Thibault
Prima volta che impari a programmare
La prima volta che ho imparato a programmare e ci sono riuscito con Codefinity - Grazie...
Adrien Morel
Ben progettato per principianti assoluti
Ben progettato per principianti assoluti, con un progresso incrementale che mi dà fiducia....
_Gracy
è semplicemente perfettamente spiegato
È semplicemente perfettamente spiegato! Finora non ho incontrato alcuna difficoltà perché tutto è così ben organizzato....
Certificate of Completion
Data Engineer
Certificato di Completamento
Mostra le abilità che hai acquisite recentemente. Te lo sei guadagnato
Discover more
Learning tracks
traccia
lockSolo per Ultimate
track image

TEST TRACK 12

laptop1 Corso
pencil-with-line1 Progetto
list0 Task

Principiante

4.0
(15389)
traccia
lockSolo per Ultimate
track image

Sviluppo Web Full Stack

laptop7 Corsi
list345 Compiti

Principiante

4.5
(70)
traccia
lockSolo per Ultimate
track image

Diventa uno Sviluppatore React

laptop4 Corsi
list98 Compiti

Intermedio

4.8
(8)
traccia
lockSolo per Ultimate
track image

Padroneggiare la Visualizzazione dei Dati

laptop5 Corsi
list146 Compiti

Intermedio

4.4
(9)
traccia
lockSolo per Ultimate
track image

SQL da Zero a Eroe

laptop4 Corsi
list115 Compiti

Principiante

4.7
(102)
traccia
lockSolo per Ultimate
track image

Fondamenti di C++

laptop6 Corsi
list117 Compiti

Principiante

3.9
(31)
traccia
lockSolo per Ultimate
track image

Python da Zero a Eroe

laptop6 Corsi
list196 Compiti

Principiante

4.6
(328)
traccia
lockSolo per Ultimate
track image

Padronanza del Machine Learning

laptop8 Corsi
list259 Compiti

Intermedio

4.7
(9)
traccia
lockSolo per Ultimate
track image

Python Oltre l'Intermedio

laptop2 Corsi
pencil-with-line1 Progetto
list57 Compiti

Principiante

5.0
(2)
traccia
lockSolo per Ultimate
track image

Sviluppo di Giochi con Unity

laptop4 Corsi
list142 Compiti

Principiante

4.4
(8)
traccia
lockSolo per Ultimate
track image

Become a Django Developer

laptop5 Corsi
list178 Compiti

Avanzato

4.5
(33)
traccia
lockSolo per Ultimate
track image

Flask for Dummies

laptop5 Corsi
list165 Compiti

Intermedio

4.5
(37)
traccia
lockSolo per Ultimate
track image

Fondamenti Dello Sviluppo Frontend

laptop6 Corsi
list308 Compiti

Principiante

4.6
(59)
traccia
lockSolo per Ultimate
track image

Web Developer from Zero to Hero

laptop6 Corsi
list252 Compiti

Principiante

4.5
(68)
traccia
lockSolo per Ultimate
track image

Preparation for Data Science

laptop8 Corsi
pencil-with-line2 Progetti
list185 Compiti

Intermedio

4.1
(21)
traccia
lockSolo per Ultimate
track image

Odissea del Deep Learning

laptop5 Corsi
list184 Compiti

Avanzato

5.0
(3)
traccia
lockSolo per Ultimate
track image

Sviluppo Web con C#

laptop7 Corsi
list292 Compiti

Principiante

4.6
(109)
traccia
lockSolo per Ultimate
track image

TEST E2E TRACK BEGINNER

pencil-with-line1 Progetto
list0 Task

Principiante

traccia
lockSolo per Ultimate

Test Track

laptop2 Corsi
list21 Compiti
4.7
(3)
traccia
lockSolo per Ultimate
track image

Skilled Python BackEnd Developer

laptop5 Corsi
list139 Compiti

Avanzato

4.6
(301)
traccia
lockSolo per Ultimate
track image

Test Recalculate

laptop2 Corsi
list0 Task

Principiante

1.0
(1)
traccia
lockSolo per Ultimate
track image

Fondamenti di Excel

laptop4 Corsi
list81 Compiti

Principiante

4.4
(42)
traccia
lockSolo per Ultimate
track image

Full-Stack .NET Developer Journey

laptop13 Corsi
list556 Compiti

Intermedio

4.6
(141)
traccia
lockSolo per Ultimate
track image

Full-Stack .NET Developer Journey

laptop13 Corsi
list556 Compiti

Intermedio

4.6
(141)
traccia
lockSolo per Ultimate
track image

Test track with rating

laptop1 Corso
list0 Task

Avanzato

3.5
(8)
traccia
lockSolo per Ultimate
track image

TEST TEST TRACK

list0 Task

Principiante

traccia
lockSolo per Ultimate
track image

Fondamenti di Analista Dati

laptop6 Corsi
list180 Compiti

Principiante

4.7
(124)
traccia
lockSolo per Ultimate
track image

Padronanza di C++

laptop4 Corsi
list85 Compiti

Avanzato

traccia
lockSolo per Ultimate
track image

Java Web

laptop7 Corsi
list280 Compiti

Avanzato

4.5
(37)
traccia
lockSolo per Ultimate
track image

Diventa un Ingegnere QA

laptop5 Corsi
list237 Compiti

Principiante

4.5
(50)
traccia
lockSolo per Ultimate
track image

Produzione Video con Adobe

laptop4 Corsi
list123 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

Strumenti di Design UI/UX

laptop4 Corsi
list161 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

Test image upload track

laptop1 Corso
list20 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

Competenze Essenziali per l'Ufficio

laptop3 Corsi
list75 Compiti

Principiante

4.5
(31)
traccia
lockSolo per Ultimate
track image

GitHub from Zero to Hero

laptop3 Corsi
list41 Compiti

Principiante

4.5
(2)
traccia
lockSolo per Ultimate
track image

Sviluppo di Siti Web Senza Codice

laptop3 Corsi
list180 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

C Programming & Low-Level Development

laptop3 Corsi
list63 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

testes

laptop2 Corsi
pencil-with-line1 Progetto
list42 Compiti

Principiante

4.5
(4)
traccia
lockSolo per Ultimate
track image

Test translation track

laptop3 Corsi
list41 Compiti

Intermedio

4.0
(2)
traccia
lockSolo per Ultimate
track image

Test CMS Track

laptop2 Corsi
pencil-with-line1 Progetto
list42 Compiti

Principiante

4.5
(4)
traccia
lockSolo per Ultimate
track image

Python for Data Analysis

laptop5 Corsi
list135 Compiti

Intermedio

4.0
(13)
traccia
lockSolo per Ultimate
track image

Digital Marketing Essentials

laptop6 Corsi
list293 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

Complete Social Media Management

laptop5 Corsi
list206 Compiti

Principiante

traccia
lockSolo per Ultimate
track image

Business AI Toolkit

laptop3 Corsi
pencil-with-line2 Progetti
list60 Compiti

Principiante

4.5
(2)
Become a Development expert
  • Interactive exercisesInteractive exercises
  • Learning videosLearning videos
  • AI-assistant on all coursesAI-assistant on all courses
  • Workspaces for designing your own projectsWorkspaces for designing your own projects

Ready to get started?

ProBest intro offer
UltimateA complete experience to kickstart your career
85+ Top-Rated coursesBenefit accessBenefit access
Completion certificatesBenefit accessBenefit access
AI-Assistant in all coursesBenefit accessBenefit access
20+ hands-on Real-world projectsBenefit accessBenefit access
Personalized study tracksBenefit accessBenefit access
Unlimited workspacesBenefit accessBenefit access
Boost your Tech Skills!
with up to 55% off
What you'll get with our subscription:
  • Access to 85+ top-rated coursesAccess to 85+ top-rated courses
  • AI-driven LearningAI-driven Learning
  • Workspaces for practicing your skillsWorkspaces for practicing your skills
  • Personalized study tracksPersonalized study tracks
  • Certificates of completionCertificates of completion
Training 2 or more people?
Get your team access to Codefinity courses anytime, anywhere.
Try Codefinity Teams

Seguici

trustpilot logo

Indirizzo

codefinity
Siamo spiacenti che qualcosa sia andato storto. Cosa è successo?
some-alt