Тёмный

Java tutorial sui Generics: Sblocca i SEGRETI🔓Per Scrivere VERO Codice Robusto! Parte 1/5 

CodeBrothers
Подписаться 2,9 тыс.
Просмотров 2,4 тыс.
50% 1

Episodio 94:In questo tutorial del nostro CORSO JAVA in ITALIANO vediamo subito i Generics in Java e in particolare a come scrivere delle classi, dei metodi e delle interfacce generiche. Ci aiuteranno a risolvere diversi problemi che erano presenti nelle versioni più vecchie di Java in particolare renderanno il nostro sviluppo più Type-Safe e meno prono all'insorgere di Bug ed eccezioni.
_Capitoli_
0:00 Intro
1:55 Ma come sono nati?
3:45 Come si faceva in Java 1.4
7:20 Il primo di tanti problemi
8:08 Il secondo di tanti problemi
12:40 La nostra Sfera Pokè Generica
16:17 La Type Inference
17:55 Veramente Generica
18:46 Ma perchè tutto sto casino?
19:50 Posso inserire tanti TIPI
24:00 Scriviamo un metodo generico
29:55 Type Inference avanzata
31:30 Creiamo un altro metodo generico
35:37 Non possiamo iterare per bene!
39:07 Una Interfaccia Generica
44:38 Ultimissima cosa importante
_Credits in MLA Style_
"Space Jam - Vediamo se mi ricordo ancora come si fa", RU-vid, uploaded by Romano Vallese, 19 Oct 2011, • Space Jam - Vediamo s...
"Pikachu Moments ♥", RU-vid, uploaded by Vilma H, 21 Feb 2012, • Pikachu Moments ♥
"Psyduck’s Funny Moments", RU-vid, uploaded by Poke Cutie, 21 Feb 2021, • Video
"Il villaggio dei Wobbuffet! | Johto League Champions | Video ufficiale", RU-vid, uploaded by
Il Canale Pokémon Italiano Ufficiale, 18 Sept 2021, • Il villaggio dei Wobbu...
_Crediti canzoni utilizzate__
Blue Wednesday, Magnus Klausen - Runaway chll.to/01aa972e
The BREED - Canção chll.to/f4f2e0bc
Saib - Coral Dreams chll.to/b46d526b
Strehlow, Glimlip - Crema Cafe chll.to/a8be4695
Evil Needle - Cruising chll.to/e05d03f9
L’Indécis - Departure chll.to/0679d13e
Evil Needle - Dive chll.to/92b5eaa5
Brock Berrigan, Saib - Drifter chll.to/e0ba22f3
Ruck P - Early Morning chll.to/49a383af
Leavv - Flushing the Stairs chll.to/c15e849d
Evil Needle - Low Rider chll.to/071dff50
Yasper, Louk - Nightwatch chll.to/6887c4e2
Yasper, Louk - Playful chll.to/ea1a2b6d
L’Indécis - Sideways chll.to/74913862
Ian Ewing - Silver Glen chll.to/16a149bf
Nymano - Sleepover chll.to/699c338f
Ruck P - Soul Food chll.to/7b02d914
Ruck P - Spring In La Coruña chll.to/d0ba0b46
L’Indécis - Spleen & Malt chll.to/452ac9f6
Yasper, Louk - Welcome Back chll.to/593c3576
___Prima di andare___
Rimaniamo in contatto seguimi su Instagram: / ytcodebrothers
Iscriviti al mio canale: / @codebrothers
#java #javaprogramming #generics

Опубликовано:

 

22 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 24   
@claudiocla5394
@claudiocla5394 Год назад
Ciao, complimenti per il video! Siete dei grandi!👍👍 Grazie ;)
@CodeBrothers
@CodeBrothers Год назад
Grazieeee siamo felici ti sia tornato utile è stato veramente impegnativo farlo 💥🙈
@yadiracrespo94
@yadiracrespo94 Год назад
Bravissimo!! Mio figlio (7 anni) apprezzerebbe tanto questa lezione ;)
@CodeBrothers
@CodeBrothers Год назад
Ciao Yadira 😄 sei gentilissima grazie mille!! I Pokemon piacciono ancora anche a me che di anni ne ho 4 volte tanto! 🤣 Non appena si sentirà pronto avrà un corso di Java completo dalla A alla Z!
@luigi6639
@luigi6639 Год назад
Finalmente 😍😍
@CodeBrothers
@CodeBrothers Год назад
Ormai stiamo giungendo alla fine della sintassi! Siamo entusiasti, è stato un percorso di quasi due anni ma come vedi ce n'era di roba 😆
@giovannisardisco4541
@giovannisardisco4541 Год назад
Oggi ho integrato i generics come acqua fresca. L'avevo fatto in passato, ma con un bel ripassone chiaro come il vostro è stato tutto più semplice. Grazie ragazzi, siete mitici. Canale preziosissimo.
@CodeBrothers
@CodeBrothers Год назад
Ciao Giovaaa!! Che bellissimo commento grazie davvero 😄 è una puntata che ci è veramente costata e non vediamo l'ora che tu veda le prossime a questo punto, i bounds, le wildcards e la type erasure 😊
@giovannisardisco4541
@giovannisardisco4541 Год назад
@@CodeBrothers non vedo l'ora!
@SimoneRN89
@SimoneRN89 6 месяцев назад
Ciao Michele, ti scrivo anche in questo video perché grazie alla parte sulle interfacce generiche sono riuscito finalmente a capire (però in una classe astratta) come poter mappare nelle classi concrete che ne derivano, la parametrizzazione di un tipo effettivo dopo che la classe astratta lo “generalizzava”, quindi così ad applicare correttamente il pattern Strategy usufruendo dei Generics. Ora però sono ancora più interessato nello specificare invece di comuni tipi di classi (per ora uso Long e String) i miei enums che predispongo ora solamente per suddividere il flusso dell’esecuzione nei vari problemi concreti. Li vorrei usare per riferirmi ancora meglio al contesto specifico nelle classi concrete coi Generics, quindi la domanda che ti faccio è questa: gli enums nei Generics, li posso trattare ad esempio come se fossero stringhe memorizzate in un Set? Cioè senza possibilità di molteplicità? Ti ringrazio in anticipo per la tua risposta. 😊
@CodeBrothers
@CodeBrothers 6 месяцев назад
Ciao Simone siamo felicissimi che ti stiano tornando utili i nostri video, specialmente in questi dei Generics di lavoro c'è n'è stato assai.. Tornando a noi, cosa stai cercando di fare? Dalla spiegazione ho come l'impressione tu stia mixando un po' di concetti come Set, molteplicità e scopo degli Enum. A presto e buon coding 😎🙌
@SimoneRN89
@SimoneRN89 6 месяцев назад
@@CodeBrothers è un po’ complicato da spiegare in un semplice commento su RU-vid perché il mio progetto per quanto semplice sia, comunque ha svariati packages con le varie classi, interfacce ed enumeratori che servono per trattare un pò tutti i vari aspetti, però dico che non è complicato perché attualmente si tratta solo di fare diversi ordinamenti di collections di diversi tipi di dati contestualizzati che possono essere numeri Long oppure parole singole o intere frasi. Nel caso che ti ho introdotto prima, praticamente allo stato attuale delle cose tratto sia le parole che le frasi come semplici nelle classi concrete che le rappresentano, però mi chiedevo se fosse possibile sostituirli con e che vanno a identificare ancor di più il contesto trattato dalla classe di appartenenza, però tieni conto che questi 2 non sono tipi di classi che determinano gli elementi delle collections, ma solo semplici valori di un Enum. I valori di un Enum visto che sono scritti in uppercase, non li si possono vedere come delle stringhe costanti memorizzate in un Set (valori univoci) e quindi trattasi di tipo String da poter essere usati anch’essi nei Generics?
@CodeBrothers
@CodeBrothers 6 месяцев назад
@@SimoneRN89 Ciao Simo! Allora se ho capito bene tu vorresti usare i valori degli ENUM come TIPI per i tuoi Generics? In questo caso ovviamente non è possibile, la cosa migliore sempre se ho capito il tuo obiettivo, è creare un ENUM per quel contesto di valori come ad esempio può essere "GiorniSettimana" e scriverli tutti e 7 e poi utilizzare List. In caso se è qualcosa che richiede screen e spezzoni di codice puoi entrare nel nostro gruppo Discord e chiedere agli altri CodeBrothers ;)
@SimoneRN89
@SimoneRN89 6 месяцев назад
@@CodeBrothers Ciao Michele! Ho terminato il progetto di cui ti ho parlato, però la strategia è rimasta pressoché la stessa nelle mie classi concrete che applicano il Pattern Strategy. Credo che ciò che volessi fare io andasse a travalicare il concetto di Enum, per questo non credo lo si possa fare. Praticamente come ti ho detto, la mia intenzione era quella di trattare le costanti dell’enumeratore che mappava il parametro inserito nella Command Line Arguments trattante la gestione di un contesto specifico di ordinamento (long, line, word) come se a loro volta fossero anch’esse di tipo String e quindi potessero sostituire la classe generale String quando nei Generics si indica il tipo effettivo del contesto trattato (lo dovevo fare solo per line e word che gestiscono dati di tipo String). Invece non ricordavo che fossero i loro names ad essere delle String. Quindi non potendo concretizzare il tipo generico ne con la chiamata al metodo name() delle costanti di mio interesse (LINE e WORD) perché il non te lo consente (però con .name().getClass() ? 🤔) e neanche come da te proposto nella risposta, con il nome della classe enum perché così mi avrebbe inglobato anche il trattamento della costante LONG che invece aveva già il suo contesto isolato di tipo Long nella sua classe concreta, non sono riuscito anche a isolare tra loro LINE e WORD nella concretizzazione del tipo come volevo fare coi Generics e ho lasciato i loro contesti trattati entrambi col tipo . Riassumendo, la parte long era già assestante con la sua classe wrapper, mentre invece volevo disaccoppiare i tipi di line e word che entrambi usano String per venirne concretizzato il contesto. È quindi impossibile poter isolare i 3 contesti tra loro indicando per ciascuno una classe diversa che li distingue se questi contesti sono semplicemente delle costanti di un enumeratore?
@albertocolautti2419
@albertocolautti2419 Год назад
Bellissimo tutorial!!! Un giorno porterai anche le Regular Expression?
@CodeBrothers
@CodeBrothers Год назад
Ma grazie mille Alb! 🙌 Certamente, ti confermo che cercheremo di portare sul canale OGNI SINGOLO ARGOMENTO. Non sarà una impresa facile ma questo è il nostro piano. Inoltre aggiungeremo anche altri linguaggi tra qualche mesetto 🧐 A presto!
@giovannisardisco4541
@giovannisardisco4541 Год назад
E alla fine manca proprio il Pokemon 😂 Alla prossima puntata 😉
@CodeBrothers
@CodeBrothers Год назад
Hahaha esatto abbiamo solo ottenuto String 🤣 "don't let them know your next move"
@ANDREALUIGIPALLADINO
@ANDREALUIGIPALLADINO Год назад
ciao, ottimo video i file classe di pikachu e wobbuffet in che lezione posso trovarli?
@CodeBrothers
@CodeBrothers Год назад
Ciao Andrea! Graziee sono felice ti sia piaciuto! I file al momento non sono disponibili, stiamo cercando un modo per metterli a disposizione per esempio tramite un Patreon o cose simili così da poterci dedicare al 100% al canale e portare contenuti di qualità ancora maggiore!
@ANDREALUIGIPALLADINO
@ANDREALUIGIPALLADINO Год назад
@@CodeBrothers hai una lezione dove scrivi le classi?
@CodeBrothers
@CodeBrothers Год назад
@@ANDREALUIGIPALLADINO La parte utile al video la puoi vedere attorno al minuto 28.25. Se invece volevi proprio la classe intera eccola a te Andrea! :) (Wobbuffet è analoga) public class Pikachu extends Pokemon implements Selvatico { public Pikachu() { } public void getSpecialMove() { System.out.println("Tuonoshock"); } public String getName() { super.setName("Pikachu"); return super.getName(); } @Override public String toString() { return "Pi-Ka-Chu ⚡⚡"; } @Override public String getVerso() { return "Hellooo I'm Pikachuuuuuuu"; } } A presto! 😄
@elzwin0044
@elzwin0044 Год назад
Mi passi il repository Git, oppure puoi pubblicare il codice, gratis grazie e pure 100 euro
@CodeBrothers
@CodeBrothers Год назад
La regola è 300 o niente, come gli spartani! ⚔️🗡️🛡️ Cercheremo di trovare un modo per distribuire il codice delle lezioni perché al momento non lo abbiamo e vorremmo anche sostenerci col canale. Nel frattempo se ne hai bisogno puoi entrare nel gruppo Discord e scriverci in privato ☀️
Далее
Generics In Java - Full Simple Tutorial
17:34
Просмотров 1 млн
БАССЕЙНЫ ПО ЦВЕТАМ ЧЕЛЛЕНДЖ !
38:20
Java Generics Tutorial
12:23
Просмотров 180 тыс.
JAVA DESIGN PATTERNS | Observer
8:23
Просмотров 458
Java Enums Explained in 6 Minutes
5:58
Просмотров 250 тыс.