1
00:00:00,420 --> 00:00:05,490
Vamos a modificar nuestro código para dejar toda la implementación de las interfaces en una sola interfaz

2
00:00:05,610 --> 00:00:07,830
utilizando herencia de interfaces.

3
00:00:08,220 --> 00:00:14,250
Entonces, ahora, por ejemplo, en vez de implementar tres interfaces en paralelo separado por coma,

4
00:00:14,310 --> 00:00:18,450
podríamos implementar una sola y que y de estas tres.

5
00:00:18,570 --> 00:00:21,900
Al final es lo mismo, pero juntamos todas en una sola.

6
00:00:22,020 --> 00:00:22,560
Se fijan?

7
00:00:22,650 --> 00:00:23,300
Veamos cómo.

8
00:00:23,970 --> 00:00:28,590
Entonces vamos a crear en repositorio una interfaz que agrupa a todas.

9
00:00:29,040 --> 00:00:31,180
Lleva class interfaces.

10
00:00:31,440 --> 00:00:35,390
Le vamos a llamar ordenarle páginas l crup repository.

11
00:00:40,860 --> 00:00:47,760
Un nombre que queramos pues ser ordenado de páginas de cruz repositorio o full repositorio completo

12
00:00:47,760 --> 00:00:49,980
repositorio con toda la implementaciones.

13
00:00:50,010 --> 00:00:50,260
En fin.

14
00:00:50,280 --> 00:00:50,940
Cómo queramos.

15
00:00:52,080 --> 00:00:57,630
Les toca tenemos, pero simple extend en una interfaz.

16
00:00:57,660 --> 00:01:04,740
También podemos heredar estender de otras interfaces y casi que el stents soporta herencia múltiple,

17
00:01:04,770 --> 00:01:07,950
pero de interfaces, ya que estamos trabajando solamente con interfaces.

18
00:01:08,070 --> 00:01:11,790
Entonces esta interfaz validar los métodos de las demás.

19
00:01:12,000 --> 00:01:22,500
Por ejemplo, ordenarle Koma voy a bajar páginas nable coma krug repositorio se fijan y listo.

20
00:01:23,040 --> 00:01:23,790
Acá tenemos.

21
00:01:25,010 --> 00:01:27,680
Al final es una sola interfaz que agrupa toda.

22
00:01:27,800 --> 00:01:33,950
Y ahora vamos a ir al list repositorio perdón clientelista repositorio.

23
00:01:34,070 --> 00:01:35,210
Vamos a eliminar esto.

24
00:01:35,390 --> 00:01:36,250
El implementas.

25
00:01:38,400 --> 00:01:46,170
Las tres y dejamos la completa ordenados de página de cruz repositorio se fijan, al final es lo mismo.

26
00:01:47,820 --> 00:01:53,820
De hecho, esto solamente para que lo visualicen nada más, no necesar que lo hagan, pero pueden quitar

27
00:01:53,820 --> 00:01:54,450
los métodos.

28
00:01:55,200 --> 00:01:59,640
Por ejemplo, voy a quitar el listar todos los off right.

29
00:02:02,210 --> 00:02:03,530
Eliminar listas.

30
00:02:03,860 --> 00:02:04,400
Listo.

31
00:02:04,580 --> 00:02:09,800
Listar hasta acá todo lo que tengan Overdrive lo voy a cortar solamente para ejemplo.

32
00:02:10,370 --> 00:02:15,830
Se fijan, heredÃ también el protocolo implementación, es decir, no pide implementar todos los métodos

33
00:02:15,920 --> 00:02:17,300
de cada una de la interfaces.

34
00:02:17,390 --> 00:02:18,860
Colocábamos, implementan métodos.

35
00:02:19,940 --> 00:02:21,260
Acá no se dicen a todo.

36
00:02:21,430 --> 00:02:26,690
Todos de cruz repositorio, todo de ordenarles repositorio y todo de páginas de repositorio.

37
00:02:27,500 --> 00:02:27,990
Ok.

38
00:02:29,450 --> 00:02:34,070
Y acá tenemos Thoromer, se fijan, bueno, sin implementar bien, volver atrás contra el Cetas y era

39
00:02:34,090 --> 00:02:36,580
solamente para demostrar el listo.

40
00:02:37,060 --> 00:02:41,110
Y así tenemos una sola interfaz principal que agrupa todo en la clase.

41
00:02:41,110 --> 00:02:42,250
Ejemplo Repositorio.

42
00:02:42,340 --> 00:02:45,850
Utilizamos esta interfaz ordenada de páginas de CRUD repositorio.

43
00:02:45,880 --> 00:02:48,400
Quizá el nombre un poco largo lo pudiéramos acortar.

44
00:02:48,490 --> 00:02:53,620
Le podemos colocar full de completo repositorio o simplemente repositorio.

45
00:02:53,710 --> 00:02:54,940
No sé cómo lo queremos manejar.

46
00:02:57,060 --> 00:03:05,550
Pero ahora usamos esa interfaz como tipo genérico y listo, ya no es necesario tener que estar acá haciendo

47
00:03:05,550 --> 00:03:06,090
el cast.

48
00:03:06,270 --> 00:03:07,720
Así que también tiene su ventaja.

49
00:03:08,030 --> 00:03:14,430
Entonces, en vez de hacer el cast necesario, porque ya tiene estos métodos, ya que incluye todo ese

50
00:03:14,430 --> 00:03:14,760
tipo.

51
00:03:16,140 --> 00:03:22,710
Acá tampoco necesario simplemente repo y donde hacemos un cast no necesario.

52
00:03:24,660 --> 00:03:29,070
Ah, y vamos a comentar el eliminar había faltado hacer ese cambio.

53
00:03:29,790 --> 00:03:31,760
Ahí tenemos completamente el ejemplo.

54
00:03:35,660 --> 00:03:40,490
Bien, y siguen funcionando igual que antes, pero como digo, está más organizado.

55
00:03:40,580 --> 00:03:41,430
Queda un poco mejor.

56
00:03:41,690 --> 00:03:42,740
Entonces es la diferencia.

57
00:03:42,860 --> 00:03:43,880
Dime un poco vuelta.

58
00:03:43,940 --> 00:03:50,570
En vez de heredar o implementar en cliente el repositorio, en vez de implementar múltiples interfaces

59
00:03:50,570 --> 00:03:57,700
separador coma con el IMPLEMENTAS implementamos una sola y en esta heredamos de las demás con stent,

60
00:03:57,950 --> 00:04:01,040
ya que tenemos herencia múltiple de interfaces.

61
00:04:01,250 --> 00:04:01,820
Eso es todo.

62
00:04:02,180 --> 00:04:05,990
Y quizá para nuestro repositorio para que esté completo.

63
00:04:06,050 --> 00:04:12,380
Faltaría un comt saber cuantos registros tenemos claro en la mayoría de los cruz repositorios, ya sea

64
00:04:12,380 --> 00:04:15,650
con basea tono, necesitamos saber cuántos registros tenemos.

65
00:04:15,740 --> 00:04:17,930
Por lo tanto hacemos un conteo, pero super simple.

66
00:04:18,020 --> 00:04:19,820
Entonces vamos a crear esa interfaz.

67
00:04:19,910 --> 00:04:22,970
La agregamos acá en repositorio.

68
00:04:23,060 --> 00:04:26,480
Vamos a crear una interfaz con table.

69
00:04:29,150 --> 00:04:35,720
Va a tener el método int total y listo.

70
00:04:35,810 --> 00:04:44,030
Un solo método total o count en inglés total o count puede ser contable o mejor como lo tenemos contable

71
00:04:44,120 --> 00:04:44,840
repositorio.

72
00:04:45,260 --> 00:04:48,830
Entonces lo voy a renombrar con refractor Rinzai.

73
00:04:49,970 --> 00:04:54,730
Debemos agregar contable repositorio mejore.

74
00:04:55,010 --> 00:04:55,670
Ahora se que sí.

75
00:04:55,820 --> 00:04:58,280
Y en ordenarle páginas le cruz repositorio.

76
00:04:58,400 --> 00:05:03,910
Vamos a agregar acá el contable contable repositorio acá.

77
00:05:04,760 --> 00:05:08,570
Perfecto y en la clase cliente list repositorio.

78
00:05:08,690 --> 00:05:10,170
Vamos a implementar este método.

79
00:05:11,120 --> 00:05:11,530
Ok.

80
00:05:12,840 --> 00:05:18,600
Pero es super simple, disputo DataSource punto 6.

81
00:05:19,440 --> 00:05:24,930
El tamaño que retorna un entero primitivo con el total y eso es todo, se fijan.

82
00:05:25,080 --> 00:05:25,980
Ahí lo tenemos completo.

83
00:05:26,700 --> 00:05:27,510
Nos vamos a la clase.

84
00:05:27,510 --> 00:05:28,140
Ejemplo.

85
00:05:30,190 --> 00:05:32,080
Podríamos tener el total.

86
00:05:44,180 --> 00:05:45,730
Rebo punto total.

87
00:05:51,800 --> 00:05:52,240
3.

88
00:05:54,130 --> 00:05:55,090

89
1:3 4.

90
00:05:55,120 --> 00:05:59,680
Pero recuerden que eliminamos a Bea a 2, así que tenemos 3, perfecto.

91
00:05:59,830 --> 00:06:01,300
Ahora sí que sí está completo.

92
00:06:01,480 --> 00:06:02,110
Nada más.

93
00:06:02,170 --> 00:06:04,050
Continuamos en la siguiente clase.
