You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Se le está dando a la clase DogNoISP un método que no tiene sentido que tenga, lo que en un caso más complejo afectaría a la implementación de las clases
6
+
7
+
*/
8
+
classAnimalNoISP{
9
+
constructor(name){
10
+
this.name=name
11
+
}
12
+
13
+
speak(){
14
+
console.log(`${this.name} emite un sonido`)
15
+
}
16
+
17
+
fly(){
18
+
console.log(`${this.name} vuela`)
19
+
}
20
+
}
21
+
22
+
classDogNoISPextendsAnimalNoISP{
23
+
constructor(name){
24
+
super(name)
25
+
}
26
+
27
+
speak(){
28
+
console.log(`${this.name} ladra`)
29
+
}
30
+
}
31
+
32
+
constpepe=newDogNoISP('Pepe')
33
+
34
+
pepe.speak()
35
+
pepe.fly()
36
+
37
+
/*
38
+
Correcto ✅
39
+
40
+
"Las interfaces deben ser específicas y enfocarse en los requerimientos de los clientes que las utilizan."
41
+
42
+
*/
43
+
classCanFly{
44
+
constructor(name){
45
+
this.name=name
46
+
}
47
+
48
+
fly(){
49
+
console.log(`${this.name} vuela`)
50
+
}
51
+
}
52
+
53
+
classCanSpeak{
54
+
constructor(name){
55
+
this.name=name
56
+
}
57
+
58
+
speak(){
59
+
console.log(`${this.name} emite un sonido`)
60
+
}
61
+
}
62
+
63
+
classDogextendsCanSpeak{
64
+
constructor(name){
65
+
super(name)
66
+
}
67
+
68
+
speak(){
69
+
console.log(`${this.name} ladra`)
70
+
}
71
+
}
72
+
73
+
constfirulais=newDog('Firulais')
74
+
75
+
firulais.speak()
76
+
77
+
//EXTRA
78
+
classPrinter{
79
+
print(document){
80
+
console.log(`Se ha imprimido ${document}`)
81
+
}
82
+
}
83
+
84
+
classColorPrinterextendsPrinter{
85
+
print(document){
86
+
console.log(`Se ha imprimido ${document} a color`)
87
+
}
88
+
}
89
+
90
+
classBlackAndWhitePrinterextendsPrinter{
91
+
print(document){
92
+
console.log(`Se ha imprimido ${document} en blanco y negro`)
93
+
}
94
+
}
95
+
96
+
classMultifuntionalPrinterextendsPrinter{
97
+
print(document){
98
+
console.log(`Se ha imprimido ${document} en multifunción`)
99
+
}
100
+
101
+
scan(document){
102
+
console.log(`Se ha escaneado ${document}`)
103
+
}
104
+
105
+
sendFax(document){
106
+
console.log(`Se ha enviado ${document} por medio de fax`)
0 commit comments