Javascript ES6 ITA 44: OOP, ES6 class - prima parte

Поделиться
HTML-код
  • Опубликовано: 9 фев 2025

Комментарии • 17

  • @dangg44
    @dangg44 6 лет назад

    Salve prof. Camuso, sto guardando adesso questa playlist le faccio i miei complimenti su tutte le sue playlist!
    Riguardo al minuto 6:31 ecco una possibile soluzione che ho trovato spulciando un po' su Internet
    Ecco come mettere dentro una "variabile statica" anziché dichiararla all'esterno (e quindi settarla a 0 in stile C#: (static int count = 0;)
    class Persona {
    constructor(cognome="non settato",nome="non settato") {
    this.id = Persona.personeCreate;
    this.cognome = cognome;
    this.nome = nome;
    }
    // non condivisa
    etichetta() {
    return `Egr. Sig. Lup. Mann. ${this.nome} ${this.cognome}`;
    }
    // condivisa
    static etichetta() {
    return `Static Egr. Sig. Lup. Mann. ${this.nome} ${this.cognome}`;
    }
    // la keyword get fa diventare personeCreate una property in stile C#
    static get personeCreate() {
    Persona.conta = (Persona.conta || 0) + 1;
    return Persona.conta;
    }
    }

    • @fcamuso
      @fcamuso  6 лет назад

      Interessante. Grazie per aver condiviso ;)

    • @fcamuso
      @fcamuso  6 лет назад

      Grazie. Due imperfezioni:
      1: += e non solo = che assegna solo l`ultimo valore
      2: l`incremento come terza parte del for viene eseguito DOPO il corpo del for per cui la stampa dentro il corpo è in ritardo e non terrebbe conto dell`ultimo valore.
      Soluzione 1:for (int contanumeri = a; contanumeri

    • @dangg44
      @dangg44 6 лет назад

      Perfetto, un immenso grazie a lei!

    • @shutdown1488
      @shutdown1488 5 лет назад

      oppure usare TypeScript. Tra i numerosi vantaggi che offre sulle classi c'e' anche il supporto per gli access modifiers come public, private e protected.

  • @darioslowww6337
    @darioslowww6337 6 лет назад

    Buongiorno professore, una domanda forse scontata ma è giusto per ribadire l'ovvio.. abbiamo detto che il costruttore di una classe può anche non essere specificato (utilizzando quello di default): vale lo stesso anche quando si creano delle "variabili espressione"? Perchè vedo che lei invece ha esplicitato il metodo costruttore in quel caso. Grazie per la sua attenzione e complimenti per i videocorsi.

  • @Crista183
    @Crista183 7 лет назад

    Perdonate la domanda, ma ho visto che hai cambiato colore a tutte le finestre di lavoro e le hai messe grigie, ora, io sono riuscito solo a cambiare quella dove si scrive il codice, ma le altre? come fai? qualcuno lo sa? non voglio diventare cieco :)

    • @fcamuso
      @fcamuso  7 лет назад

      Se stai usando Visual Studio Code: menu File, Preferenze, Tema Colori, Dark+

    • @Crista183
      @Crista183 7 лет назад

      No, scusa se non l'ho specificato, uso java eclipse, già che ci sono volevo chiederti, qual'è il metodo/programma migliore per imparare a programmare? il mio sogno è quello di poter creare un giochino gestionale, grazie come sempre x il lavoro che fai.

    • @fcamuso
      @fcamuso  7 лет назад +1

      Non c`è un metodo `migliore` in assoluto ma il migliore per le proprie caratteristiche. Se seguendo una playlist che introduce al mondo della programmazione semplicemente riesci a seguire allora quello è un buono stile per chi la segue. NB: seguire una playlist che spiega il linguaggio è solo il PRIMO (importante!) passo.
      È altrettanto importante mettersi continuamente alla prova con progetti di difficoltà crescente tenendo conto che è NORMALE fallire anche tante volte all`inizio. Molto utile anche studiare il codice scritto da bravi programmatori (purtroppo non è facile trovarne di non troppo complessi).
      Aiuta molto anche leggere qualche libro dei `guru` della programmazione (purtroppo spesso solo in inglese). Quindi mai avere fretta e godersi il viaggio che è comunque divertente anche se risultati sperati tardano ad arrivare (ci vogliono molti mesi se non anni per arrivare a certi livelli ma ne vale la pena)

    • @Crista183
      @Crista183 7 лет назад

      Grazie per la risposta, l'avevo già messo in conto, però già ti dico che come vado sui menù a tendina di eclipse per cercare di cambiare lo sfondo, cambio tutte le impsotazioni ma niente, alla fine mi viene solo un gran nervoso, perchè se devo fare una finestra colorata e programmarla con un colore il comando è semplice, mentre per il programma stesso no? vabbè ti ricordi come si fa?

  • @emilie1977
    @emilie1977 7 лет назад +1

    Ma il Persona.conta sicuro che sia una variabile statica e non globale?

    • @fcamuso
      @fcamuso  7 лет назад

      Se fosse globale si potrebbe stamparla semplicemente con:
      document.write(conta);
      che invece genera proprio `conta is not defined`

    • @fcamuso
      @fcamuso  7 лет назад

      Oppure se intendeva che è liberamente accessibile, questo sì; come accenno nel video di default il livello di accesso dei membri di un oggetto è `public`

    • @emilie1977
      @emilie1977 7 лет назад

      sto provando il codice cosi capisco meglio il mio errore di interpretazione

  • @vagnonivagnoni
    @vagnonivagnoni 6 лет назад

    Per usare variabili statiche in js6 basta usare nome classe nella definizione.
    class Root{
    constructor(nome="Armando"){
    Root.nome = nome;
    Root.cont ++;
    }
    static stampa(){
    console.log(Root.nome+"stampa:"+Root.cont);
    }
    }
    Root.cont =0;//veramente strano,ma funziona fuori classe evidentemente dipende dall ' interprete.
    var r = new Root("ronaldo");
    Root.stampa();
    Root.stampa();
    var d = new Root();
    Root.stampa();

  • @alessandrodeangelis9490
    @alessandrodeangelis9490 6 лет назад +1

    Ciao, il risultato del confronto delle etichette è TRUE e non false! hai sbagliato a scrivere,ovvero ha scritto la A maiuscola!!!