Migliorare la mia esperienza con Spring Boot 2

di il
30 risposte

30 Risposte - Pagina 2

  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Il comportamento che ti ho descritto è dovuto al fatto che la JVM crea delle istanze immutabili che vengono riutilizzate (per motivi di performance) ma per me resta comunque un grosso bug, se invece è una cosa voluta allora una pessima scelta, solo a mio avviso ovviamente.
    NO. Allora vuol dire che non l'hai proprio capito .... ok, te lo spiego, ho un attimo di tempo.

    Il codice che hai riportato esercita il meccanismo di "autoboxing" che è stato introdotto in Java 5 ("auto-boxing/unboxing"). In pratica da Java 5 i tipi primitivi e le corrispettive classi "wrapper" (java.lang.Integer, ecc...) sono molto più facilmente interscambiabili e in maniera più implicita rispetto al passato.

    Ora, se vivessimo in un mondo IDEALE e TEORICO, il autoboxing dovrebbe mantenere la "identità" dei valori. Cioè per una esecuzione della JVM, se in un punto del programma ho un int 12345678 e faccio il autoboxing, ottengo un oggetto X java.lang.Integer e se in un altro punto diverso del programma ho di nuovo un int 12345678 e faccio il autoboxing, in teoria, dovrei RI-ottenere di nuovo quello STESSO oggetto X java.lang.Integer.
    Insomma, per ciascun int ci dovrebbe essere il "suo" oggetto java.lang.Integer riottenibile ad ogni autoboxing in tutta una esecuzione di una applicazione. Questo purtroppo non si può realizzare, NON È fattibile a livello pratico! Vorrebbe dire realizzare un meccanismo di caching che mantiene in memoria 4 miliardi di oggetti java.lang.Integer (non contiamo i long ..). NON è praticabile.

    Un piccolo meccanismo di "caching" però l'hanno realizzato. Hanno deciso che il autoboxing di boolean, byte, i char da 0 a 127 e gli short/int da -128 a 127 godono di questa caratteristica.

    Quando fai:

    Integer a = 100;

    questo viene tradotto in:

    Integer a = Integer.valueOf(100);

    Ed è questo valueOf che applica il "boxing" automatico. Innanzitutto verifica se il valore int è tra -128 e 127. Se sì prende il java.lang.Integer da un array che contiene dei Integer pre-generati. Altrimenti ne genera uno nuovo e lo restituisce (senza tenerselo da alcuna parte).

    Il pezzo di codice che hai riportato serve solo per 2 scopi:
    - per dimostrare la questione
    - nei quiz/esami Java per cercare di "fregare" il candidato se non conosce la questione

    Per il resto, non serve. Gli oggetti NON si confrontano con ==, salvo situazioni ultra-super-particolari. Ma si usa equals().

    Quindi lo ripeto ancora: a) NON è un "baco", b) è una implementazione frutto di scelte ben precise di carattere "pratico". Insomma è un "compromesso" tra lo scenario ideale e .... il non fare nulla in quel senso.

    giannino1995 ha scritto:


    subtyping, bounds, wildcard non mi dicono nulla ma i generic servono per scrivere codice che sia riutilizzabile per classi differenti.
    Quindi non sai dirmi perché List<String> NON è il sottotipo di List<Object> (mentre invece String[] è un sottotipo di Object[] ).
    Vabbé .. non è proprio fondamentale ma è rilevante .... avrai (spero) tempo per approfondire.

    giannino1995 ha scritto:


    Comunque non mi hai spiegato quel HttpStatus.NOT_FOUND a che diavolo serve.
    L'avevo detto nell'altra tua discussione.

    giannino1995 ha scritto:


    Quindi alla fine cosa mi consigli di fare?
    Appena ho tempo verifico dei libri e ti dico.

    giannino1995 ha scritto:


    Tu per fare siti dinamici in ambito lavorativo quali strumenti usi? Boot Strap 2 + JPA + Ajax?
    Dipende dal contesto e lavoro. Dove sono ora mi occupo molto di web service/microservizi fatti con Spring Boot 2 dove però c'è poco/nulla di DB e invece molte chiamate a servizi verso "fuori". E a questo livello di interfacce grafiche/web non vedo ovviamente nulla.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Eccomi ritornato. Ho scoperto che esistono dei corsi di Spring Boot in italiano. Ne ho trovato uno che sembra essere interessante:
    https://www.udemy.com/course/impariamo-da-zero-lecosistema-spring-5/
    Mi dici cosa ne pensi?
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Qui ci sono tutti i corsi di questo esperto:

    Andbin appena riesci dammi una mano a scegliere cosa fare.
    Grazie
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Ecco, l'obiettivo è questo:
    https://www.udemy.com/course/sviluppare-full-stack-applications-con-spring-boot-e-angular/
    ma forse prima andrebbe visto questo corso:
    https://www.udemy.com/course/impariamo-da-zero-lecosistema-spring-5/
    Il mio obiettivo finale è usare Spring Boot 2, Angular e logicamente un DBMS ma usando Java, non voglio dipendere da un preciso database.
    ciao
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Ho scoperto che esistono dei corsi di Spring Boot in italiano.
    https://www.udemy.com/course/impariamo-da-zero-lecosistema-spring-5/
    Dagli argomenti, mi pare molto che sia un corso su Spring Framework 5 con "qualche accenno" a Spring Boot 2. Insomma, NON è un corso solo su Spring Boot 2.
    Questo comunque non vuol dire che sia "inutile" per Spring Boot. L'ho già detto sicuramente altre volte: Spring Boot 2 è Spring Framework 5.
    Quindi "potrebbe" effettivamente tornare utile. Ma non saprei dire altro, né giudicare la qualità dei contenuti, anche se potrei dire che a prima vista tira in ballo "troppa" roba che non necessariamente serve (es. Lombok, Docker ...)
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Quindi in definitiva cosa mi consigli di fare? Sono nelle tue mani.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Quindi in definitiva cosa mi consigli di fare? Sono nelle tue mani.
    Se vuoi fare quel corso .... puoi farlo, come si dice "male non fa". Però non ti saprei dire altro, né potrei dire se quel corso possa essere "poco" o al contrario "troppo" per le tue conoscenze attuali.

    Ma dei buoni libri ... no? (in inglese però ...)
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Tra un libro in inglese ed un corso in italiano credo che il secondo sia più semplice dato che l'inglese non lo conosco.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    l'inglese non lo conosco.
    Capisco ma ... l'inglese è fondamentale in questo ambito. Altrimenti la documentazione javadoc non la leggi, le reference ufficiali non le leggi, ecc....
    Quindi dovresti migliorare anche su questo fronte. Non so ... butto lì: prova a vedere se nella tua zona/città fanno dei corsi di inglese.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Accipicchia la cosa viene lunga...
    Ho trovato on-line questo testo:
    Beginning Spring Boot 2
    Applications and Microservices with the Spring Framework
    K. Siva Prasad Reddy

    in questi giorni provo ad iniziare a leggerlo usando Google Translate e ti faccio sapere come mi trovo.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Ho trovato on-line questo testo:
    Beginning Spring Boot 2
    Applications and Microservices with the Spring Framework
    K. Siva Prasad Reddy
    E' quello che ho io (ebook acquistato da Apress). E' valido MA presuppone di avere già conoscenza dei concetti di Spring Framework.
    Altrimenti uno potrebbe rischiare di "perdersi" ...

    giannino1995 ha scritto:


    in questi giorni provo ad iniziare a leggerlo usando Google Translate e ti faccio sapere come mi trovo.
    La vedo dura andare avanti a colpi di Google Translate ma prova pure ... tentar non nuoce ..

    P.S. comunque la cosa del corso d'inglese non sarebbe male.
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Giannino studia informatica in tutti i suoi aspetti da non so quanti anni... ha letto non so quante migliaia di pagine di tutti i libri acquistabili (ricordo tutti i suoi thread su html.it) e non conosce ancora un po' di inglese tecnico che per questi ambiti è necessario? Non ci posso credere... e quando si può pensare ad un lavoro nel settore in queste condizioni?
  • Re: Migliorare la mia esperienza con Spring Boot 2

    Mi fa schifo l'inglese e non riesco ad impararlo
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Mi fa schifo l'inglese e non riesco ad impararlo


    Beh ... allora l'informatica non fa per te, non hai futuro in questo campo
  • Re: Migliorare la mia esperienza con Spring Boot 2

    giannino1995 ha scritto:


    Mi fa schifo l'inglese e non riesco ad impararlo
    Ma serveeeee, è FONDAMENTALE!! Guarda che per leggere questi libri e altra documentazione (es. javadoc), NON serve essere dei provetti "traduttori". Io a scrivere in inglese riesco ma con qualche fatica (è per questo che ho il blog in italiano e non in inglese) e a parlare in inglese ancora molto meno solamente perché non ci sono abituato, non lo faccio normalmente.

    Ma a leggere libri/documentazione tecnica in ambito elettronico/informatico NON ho assolutamente problemi. Certo .. non devo mettermi a leggere un quotidiano o rivista inglese ... se non è in ambito tecnico, ci capirei solo il 40-30% se va bene ...

    Ma ad esempio dalla reference ufficiale di Spring Boot:
    Starters are a set of convenient dependency descriptors that you can include in your application. You get a one-stop shop for all the Spring and related technologies that you need without having to hunt through sample code and copy-paste loads of dependency descriptors. For example, if you want to get started using Spring and JPA for database access, include the spring-boot-starter-data-jpa dependency in your project.

    Quando leggo testi così, NON mi metto a tradurre le parole. Ho già notato che se mi fermo a tradurre mentalmente ogni singola parola, impiego molto più tempo e soprattutto (!) perdo il "filo" del discorso, specialmente quando ci sono più aggettivi di seguito che in italiano dovresti "invertire" di posto.
    No, leggo tutta la frase inglese di fila mentalmente e man mano che completo la frase è come se mi si accumulasse tutto in testa, anche il senso degli aggettivi ad esempio, e alla fine capisco tutta la frase. Ovvero: leggo direttamente l'inglese

    Ecco, a una cosa del genere dovresti arrivare ...
Devi accedere o registrarti per scrivere nel forum
30 risposte