Press "Enter" to skip to content

Composition over Inheritance


oggi parleremo di
composizione sull’ereditarietà ereditaria
è quando disegni i tuoi tipi in giro
cosa sono mentre la composizione è quando
progetti i tuoi tipi attorno a loro
facciamo stiamo andando a conoscere
limitazioni di comparativi e come
risolvili usando la composizione questo è un
spettacolo settimanale quando cerchiamo di diventare di più
fiducioso ed entusiasta della programmazione
imparando cose intriganti che noi
non sapeva prima di un suggerimento è che si
otterrà di più da questo video se tu
ho visto l’episodio precedente
funzioni di fabbrica è possibile farlo da
cliccando lì parliamo di
di successione un po ‘diciamo che siamo
progettare un gioco e ho bisogno di una droga cosa
dopo un po ‘ci rendiamo conto che il nostro
software come tutto ha bisogno di gatti così
creiamo una cat cat e perché natura
chiama aggiungiamo cacca al gatto e al cane
classe che è una duplicazione che non possiamo avere
che così alziamo cacca in un condiviso
classe di animali e bene ora abbiamo a
molti animali che si accalcano ovunque così noi
bisogno di un robot di pulizia in grado di guidare e
pulito, abbiamo anche bisogno di un robot assassino
può guidare e uccidere tutti i cani e gatti
che ti stanno care le tue bellezze
Pavimenti bianchi scandinavi
dal momento che il disco è ora duplicato tra
pulizia robot e omicidio robot noi
crea una classe genitore robot per inserirla
un paio di mesi di sviluppo vanno a comprare
il tuo cane il tuo omicida robot e amici
sono cresciuto in un sistema maturo stabile
ti senti bene a questo
punto nel progetto senza fallire il
project manager dirà questo il nostro
i clienti chiedono un omicidio
cane robot il cane del robot assassino può uccidere
guida e abbaia ma non ha un
sistema digestivo quindi non può whoo e
ora siamo fregati, semplicemente non possiamo adattarci
il cane assassino bot 9
scegliere questa gerarchia ereditaria
voglio dire che potremmo creare un nuovo
oggetto genitore dove metti tutto il
funzionalità che è condivisa quindi forse a
oggetto di gioco con un metodo port come questo
ma questo significa che i tuoi oggetti lo faranno
avere un sacco di funzionalità che loro
non usare finisci con una sorta di
problema della banana gorilla dove richiesto
una banana ma ottieni un gorilla che tiene un
banana e l’intera giungla con esso o
forse invece di un oggetto genitore possiamo
basta duplicare la funzionalità come
questo diamo la corteccia di uccidere il cane Robo dentro
Oltre al cane che non è così male
ma le nostre madri non approverebbero ancora
quindi composizione per il salvataggio di nuovo
l’eredità è quando progetta il tuo
tipi attorno a ciò che sono mentre
la composizione è quando disegni il tuo
tipi attorno a quello che fanno usando
composizione lo faremmo invece a
il cane è un’erba cacca che è anche un marcatore
un gatto è un poliziotto che è anche un me nostro
un robot di pulizia è un autista e a
pulitore e un cane robot omicidio è semplicemente
un autista e un assassino e Barker ora io
sto per mostrarti come farlo
pratica usando javascript che stiamo per
fai questo usando le normali funzioni e
questi sono normali oggetti letterali
le definizioni di Barker e driver
Ti lascerò contemplare questi due
funziona in solitudine per un minuto
prima di continuare
l’astuto di voi potrebbe averlo notato
queste funzioni sono come le fabbriche
dal video precedente ma invece di
creando il proprio stato internamente loro
accetta il loro stato come una funzione
parametro questo è così che possono condividere
lo stesso stato dare un’occhiata a ciò che il
guarda la fabbrica del cane robot omicidio reale
come prima crea un oggetto stato e
assegnare alcuni valori predefiniti alla velocità e
posizione assegna anche il nome da
l’argomento della funzione che quindi usa
qualcosa che potresti non aver visto
prima
l’oggetto assegna ciò che fa il design dell’oggetto
che ci vuole un oggetto in questo caso a
solo un nuovo e l’oggetto e assegna
le proprietà dagli altri oggetti
in questo modo in questo caso crea un
Indica un autista un killer e poi si unisce
tutti loro nel nuovo oggetto e ritorna
quell’oggetto abbiamo il nostro cane robot assassino
DC un oggetto spia è assegnato a un punto
funzione integrata nello script di Natale sei ma
tutte le librerie sottolineano che il lodash ha il suo
è anche molto semplice lo fa quasi
niente se ti senti vivace
puoi scriverne uno da solo è come
sette righe di codice in sintesi che abbiamo
guardato un esempio di un’eredità
albero il rokda e poi abbiamo guardato come
ristrutturarlo usando composizione e
finalmente abbiamo visto come effettivamente
comporre oggetti utilizzando JavaScript la
domanda che è probabilmente nella tua mente
in questo momento è quando usi l’ereditarietà
e quando uso bene la composizione
la stragrande maggioranza degli sviluppatori direbbe
che dovresti favorire la composizione
eredità me personalmente fare un passo
più lontano non vedo il punto di utilizzo
l’eredità a tutti non penso che sia un
buona parte
e non penso che dovrebbe essere usato a
molte persone stanno per dirvi che
se qualcosa è un è una relazione
allora dovrebbe usare l’ereditarietà per
esempio me Matias è una mappa così posso
ereditare dalla classe map se il
la relazione è più di una natura
come un’auto che ha un motore allora
dovresti usare la composizione ma penso
quel ragionamento è sottosopra mentre lo fa
è vero che io sono un uomo anch’io ho le braccia
e ho anche competenze culinarie mentre
è corretto che una macchina ha un motore che
è anche un veicolo che puoi interpretare
praticamente qualsiasi concetto in entrambi i modi quando
si riduce ad esso penso che il
problema con l’ ereditarietà è questo
ti incoraggia a predire il
l’eredità futura ti incoraggia a
costruire questa tassonomia di oggetti molto
all’inizio del progetto e tu sei più probabile
andando a fare grandi errori di progettazione mentre
facendo ciò perché gli umani non possono prevedere
il futuro anche se ci sentiamo come noi
posso e una volta che ti costruisci
quella tassonomia ereditaria è davvero
difficile uscirne penso che sia giusto
meglio usare la composizione dall’inizio
è più flessibile è più potente
ed è davvero facile da fare così perché non
e questo è il mio pensiero su
composizione ma quali sono i tuoi commenti
giù sotto o forse solo colpito come se
non sei essere messa a fuoco se il tipo in questo spettacolo
cerchiamo di diventare più fiduciosi e
entusiasta di programmare apprendendo
nuove cose intriganti che non abbiamo fatto
sapere prima che non ci sarà un episodio
lunedì prossimo perché sarò a Jay s
Kampf a Berlino se anche tu stai andando
essere lì assicurati di twittarmi su MP
Jamie in modo che possiamo dire ciao nella vita reale
se non stai andando a fare J’s comm
sicuro di essere iscritto
che non ti perdi il prossimo
rimani fino al prossimo lunedì
curioso
Please follow and like us: