1 00:00:07,280 --> 00:00:25,839 Bueno, perfecto. Bien, buenos días. Hoy día 21 de enero a las 10 y 53 estamos convocados a través de la Jefatura de Departamento para la defensa del módulo profesional del proyecto de ciclo formativo de grado superior de desarrollo de aplicaciones web. 2 00:00:25,839 --> 00:00:39,520 Y informo de que esta defensa está siendo grabada y que dicha grabación se utilizará en el entorno cerrado de EducaMadrid con fines educativos y sólo estará a disposición de los profesores evaluadores en el aula virtual para llevar a cabo la evaluación y calificación de la defensa del proyecto. 3 00:00:40,439 --> 00:00:45,759 En el aula virtual de proyectos habéis sido informados de los criterios y de la rúbrica de calificación. 4 00:00:46,140 --> 00:00:55,700 El orden de la presentación del proyecto es el siguiente. Tendrás 15 minutos máximo para la defensa del proyecto. De ahí podrás dejar unos minutos si quieres enseñarme lo que has realizado. 5 00:00:55,840 --> 00:00:59,880 y luego habrá 15 minutos máximo para las preguntas por parte del tribunal. 6 00:01:00,600 --> 00:01:05,060 Dicho esto, tu tiempo de exposición comienza a partir de este momento. Adelante y mucha suerte. 7 00:01:07,180 --> 00:01:14,500 Vale, bueno, pues nada, el proyecto consiste en una aplicación, una aplicación web de una tienda de ciclismo. 8 00:01:16,319 --> 00:01:20,200 Entonces, bueno, pues básicamente vamos a empezar un poquito con el contenido. 9 00:01:20,200 --> 00:01:21,859 el nombre de la tienda es 10 00:01:21,859 --> 00:01:22,780 Vicio Bike Store 11 00:01:22,780 --> 00:01:25,480 y bueno, se contiene más o menos 12 00:01:25,480 --> 00:01:27,599 lo que se ha ido haciendo hasta llegar al 13 00:01:27,599 --> 00:01:29,780 paso que hemos ido siguiendo 14 00:01:29,780 --> 00:01:30,519 para llegar a 15 00:01:30,519 --> 00:01:33,579 al resultado final 16 00:01:33,579 --> 00:01:35,540 entonces bueno, tenemos la parte de análisis 17 00:01:35,540 --> 00:01:37,900 planificación, diseño, programación, pruebas 18 00:01:37,900 --> 00:01:39,079 implementación 19 00:01:39,079 --> 00:01:42,099 presupuesto, problemas encontrados y mejoras 20 00:01:42,099 --> 00:01:43,879 entonces pasamos a la parte 21 00:01:43,879 --> 00:01:44,500 de análisis 22 00:01:44,500 --> 00:01:47,379 el proyecto nace de un requerimiento 23 00:01:47,379 --> 00:01:48,640 de cliente que necesita 24 00:01:48,640 --> 00:01:54,980 darse mayor visibilidad, llegar a un mayor número de clientes y, por tanto, tener más ventas. 25 00:01:54,980 --> 00:02:02,280 Entonces, la opción de crear necesita una página web para poder llegar a más clientes. 26 00:02:03,040 --> 00:02:09,000 Entonces, bueno, después tras recopilar las necesidades o los requisitos y tal que el cliente, 27 00:02:09,099 --> 00:02:13,319 podemos dividirlos en funcionales, no funcionales, de hardware y de software. 28 00:02:13,319 --> 00:02:21,199 Los funcionales, por el trabajo que se hace con el cliente, necesitamos un registro autónomo 29 00:02:21,199 --> 00:02:28,319 de nuevos usuarios, que estos usuarios puedan iniciar sesión y además validar sus credenciales, 30 00:02:28,319 --> 00:02:35,259 que cualquier usuario pueda consultar el catálogo de productos por categorías y subcategorías, 31 00:02:35,259 --> 00:02:39,599 con esto también lleva a que hay que visualizar las categorías, las características y tallas 32 00:02:39,599 --> 00:02:44,560 de cada producto. Estos productos se deben también de poder añadir, eliminar y actualizar 33 00:02:44,560 --> 00:02:50,620 en una cesta de la compra para luego poder ser tramitada posteriormente. Y además, bueno, 34 00:02:50,800 --> 00:02:54,800 cuando un usuario esté registrado y logueado, pues bueno, pues además podrá consultar 35 00:02:54,800 --> 00:02:57,900 los pedidos que ha tenido, que ha realizado durante tiempo. 36 00:02:59,740 --> 00:03:03,719 Pasamos a los no funcionales. Bueno, pues en cuanto a usabilidad, pues bueno, habrá 37 00:03:03,719 --> 00:03:06,919 que diseñar una interfaz que sea, bueno, pues aplicable, que sea fácil de navegar 38 00:03:06,919 --> 00:03:15,379 por el usuario que se sienta cómodo. Es fácil de entender que pueda llegar a los objetivos que tenga 39 00:03:15,379 --> 00:03:25,039 tanto de loguearse, de acceder a los productos, incluso a mover más adelante preferencias y tal 40 00:03:25,039 --> 00:03:32,060 de su usuario. Para ello hemos creado unas secciones, una que es para login del usuario 41 00:03:32,060 --> 00:03:39,000 y eso se identifica con un icono característico que es una personita, que cuadra tanto en tu menú 42 00:03:39,000 --> 00:03:46,159 desplegable como se verá después. Pinzar sesión o registrarse. Al lado pues tendremos una cesta de 43 00:03:46,159 --> 00:03:51,879 la compra y ahí se irán acumulando los productos para luego poder ser tramitados al final de todo, 44 00:03:51,879 --> 00:03:57,680 una vez que el usuario esté también logueado. Y luego para navegar a los productos pues se ha 45 00:03:57,680 --> 00:04:03,680 quedado un menú en la parte superior y bueno irás navegando por las distintas categorías y se irán 46 00:04:03,680 --> 00:04:08,800 mostrando las subcategorías en las que podrás ir entrando para llegar a un producto de una 47 00:04:08,800 --> 00:04:15,060 categoría concreta y bueno básicamente esto se diseñará de una forma eficiente y bueno y aparte 48 00:04:15,060 --> 00:04:21,519 también de que sea también eficiente que sea fácil para el usuario pues también que la carga sea 49 00:04:21,519 --> 00:04:30,740 rápida y para ello por ejemplo de imágenes tenemos un poco poco espacio en cuanto a 50 00:04:30,740 --> 00:04:34,480 seguridad bueno pues aquí vamos a hacer uso de crecer para el usuario 51 00:04:36,600 --> 00:04:44,800 en la página web y bueno y aparte también se va a encriptar esta contraseña en base 52 00:04:44,800 --> 00:04:50,079 de datos para que para que no quede a la vista mantenimiento bueno suyo sería también tener 53 00:04:50,079 --> 00:04:53,180 esto sería más bien un desarrollo 54 00:04:53,180 --> 00:04:55,500 paralelo, que no está incluido en este 55 00:04:55,500 --> 00:04:57,319 y sería bueno, porque se pudieran 56 00:04:57,319 --> 00:04:59,079 mantener los productos, los precios 57 00:04:59,079 --> 00:05:01,019 de las imágenes, la gestión de los productos 58 00:05:01,019 --> 00:05:03,600 pero claro, ya te digo 59 00:05:03,600 --> 00:05:04,899 esto tendría que ser una 60 00:05:04,899 --> 00:05:07,120 web paralela, más bien para 61 00:05:07,120 --> 00:05:08,639 empleados sería 62 00:05:08,639 --> 00:05:11,120 en cuanto al rendimiento, bueno 63 00:05:11,120 --> 00:05:13,300 lo que comentaba antes, que las imágenes 64 00:05:13,300 --> 00:05:15,399 pues serán de poco peso 65 00:05:15,399 --> 00:05:17,379 y así podremos hacer una carga rápida 66 00:05:17,379 --> 00:05:18,399 de la web y que 67 00:05:18,399 --> 00:05:24,939 el usuario no se frustre tampoco. En cuanto al hardware, tenemos la parte del desarrollo 68 00:05:24,939 --> 00:05:31,079 y la parte del servidor. En cuanto al desarrollo, aquí vamos a utilizar como mínimo un PC 69 00:05:31,079 --> 00:05:39,240 o un portátil con 13 GB de memoria y un Intel, al menos un i5 o similar, un superior, y con 70 00:05:39,240 --> 00:05:44,839 250 GB de almacenamiento para el servidor. Hemos utilizado una Raspberry Pi modelo 4B, 71 00:05:44,839 --> 00:05:52,629 4 gigas de RAM y 64 de almacenamiento. En cuanto a software, para el desarrollo vamos a utilizar 72 00:05:52,629 --> 00:05:58,069 MySQL Workbench, que utilizaremos para el diseño y el modelado de la base de datos. 73 00:05:58,970 --> 00:06:05,269 Es un estudio de code para poder desarrollar la parte de control front como el back, HP, HTML, 74 00:06:05,410 --> 00:06:12,649 Javascript y todo. También tendremos un suite ofimático. También hemos utilizado Git para poder 75 00:06:12,649 --> 00:06:18,589 ser versionado según vayamos avanzando en el proyecto y aparte también tenemos un backup del mismo 76 00:06:20,149 --> 00:06:22,069 montaremos un entorno WMP 77 00:06:23,870 --> 00:06:30,230 ya que vamos a utilizar Windows entonces necesitamos un web y luego las aplicaciones 78 00:06:30,230 --> 00:06:35,449 Sputti y Filezilla para poder manejar luego el servidor de producción digamos la Raspberry 79 00:06:35,449 --> 00:06:41,029 para poder manejarla sin tener que estar conectados a IEA físicamente digamos y Filezilla 80 00:06:41,029 --> 00:06:45,850 para hacer la transferencia de lo que es la página web a esta Raspberry. 81 00:06:45,850 --> 00:06:51,990 Luego en el servidor, se ha optado por un servidor basado en Linux y correrá un servidor 82 00:06:51,990 --> 00:06:58,649 Apache con variada DB como base de datos y como lenguaje de servidor PHP. Además también 83 00:06:58,649 --> 00:07:04,569 utilizaremos Composer para poder hacer uso de plantillas para el tema de la vista de 84 00:07:04,569 --> 00:07:11,050 las páginas. Tenemos también los casos de uso. Una vez 85 00:07:11,050 --> 00:07:18,810 realizado un análisis, podemos extraer en este mono los casos de uso que se espera, 86 00:07:18,810 --> 00:07:26,769 que tendremos en el sistema. Un usuario puede ser un nuevo cliente o puede ser incluso un cliente 87 00:07:26,769 --> 00:07:34,170 registrado y luego dependiendo del tipo de cliente que sea, si es nuevo cliente obviamente 88 00:07:34,170 --> 00:07:38,649 primero se tendrá que ir a su usuario para que se tenga que validar, si es un cliente registrado 89 00:07:38,649 --> 00:07:40,829 pues tendría que estar en sesión, al mismo tiempo también 90 00:07:40,829 --> 00:07:42,970 se tendría que validar. Luego lo que son 91 00:07:42,970 --> 00:07:44,110 por ejemplo consultar productos 92 00:07:44,110 --> 00:07:46,870 por categorías y tal, ver artículos 93 00:07:46,870 --> 00:07:48,410 por ejemplo, eso es común 94 00:07:48,410 --> 00:07:50,850 poder hacerlo ambos tipos de usuario 95 00:07:50,850 --> 00:07:52,910 pero lo que viene siendo ya 96 00:07:52,910 --> 00:07:54,089 por ejemplo añadir productos a 97 00:07:54,089 --> 00:07:56,730 a la cesta o no, lo que viene siendo 98 00:07:56,730 --> 00:07:58,970 más bien finalizar la compra, consultar 99 00:07:58,970 --> 00:08:00,689 pedidos, eso obviamente sería algo exclusivo 100 00:08:00,689 --> 00:08:02,649 del cliente registrado. Entonces bueno 101 00:08:02,649 --> 00:08:04,389 al otro lado está siempre 102 00:08:04,389 --> 00:08:06,569 la aplicación vamos, que es la que irá dando 103 00:08:06,569 --> 00:08:07,670 la respuesta según 104 00:08:07,670 --> 00:08:10,269 el tipo de cliente según lo que vaya 105 00:08:10,269 --> 00:08:12,410 necesitando el cliente, lo que vaya 106 00:08:12,410 --> 00:08:14,250 pidiendo el cliente a la web 107 00:08:14,250 --> 00:08:18,449 la parte de la planificación 108 00:08:18,449 --> 00:08:20,910 hemos utilizado un modelo 109 00:08:20,910 --> 00:08:21,329 Kanban 110 00:08:21,329 --> 00:08:23,970 en el que hemos utilizado una aplicación de Jira 111 00:08:23,970 --> 00:08:27,009 esto nos permite, es flexible 112 00:08:27,009 --> 00:08:27,850 ya que hemos podido 113 00:08:27,850 --> 00:08:30,850 hemos hecho una planificación 114 00:08:30,850 --> 00:08:32,090 con las distintas partes 115 00:08:32,090 --> 00:08:34,250 del desarrollo 116 00:08:34,250 --> 00:08:35,429 hemos dividido 117 00:08:35,429 --> 00:08:38,750 cuánto desarrollo de categorías 118 00:08:38,750 --> 00:08:39,850 bueno, pantalla de inicio 119 00:08:39,850 --> 00:08:42,529 cuánto pantalla, si el desarrollo de la parte 120 00:08:42,529 --> 00:08:44,769 PHP de cada, que se vaya necesitando 121 00:08:44,769 --> 00:08:46,769 entonces bueno, según hemos ido avanzando 122 00:08:46,769 --> 00:08:48,529 nos permite un poquito de flexibilidad 123 00:08:48,529 --> 00:08:50,549 porque según vamos avanzando, vamos a ir marcando las tareas 124 00:08:50,549 --> 00:08:52,149 como si están en pruebas, en curso, o bueno 125 00:08:52,149 --> 00:08:54,590 incluso si se hubiera que ir hacia atrás, pues bueno, también podríamos 126 00:08:54,590 --> 00:08:56,870 llevárnosla 127 00:08:56,870 --> 00:08:58,529 a un punto, digamos, de desarrollo 128 00:08:58,529 --> 00:09:01,490 en el caso que hubiera que 129 00:09:01,490 --> 00:09:03,509 volver a 130 00:09:03,509 --> 00:09:04,149 probarlo 131 00:09:04,149 --> 00:09:33,210 Luego también lo que tenemos es otra planificación pero más lineal, por las mismas partes, digamos que tenemos la parte de Jira, la parte de Kanban, pero bueno, esto sería algo más lineal. Esto sería la estimación que se tiene en el tiempo, lo que duraría cada desarrollo de cada parte del proyecto. 132 00:09:33,210 --> 00:09:35,730 en cuanto al diseño 133 00:09:35,730 --> 00:09:38,309 pues bueno, aquí estamos en la arquitectura del cliente 134 00:09:38,309 --> 00:09:40,350 y servidor, el navegador web 135 00:09:40,350 --> 00:09:41,649 y tal, y bueno 136 00:09:41,649 --> 00:09:44,110 lo que vienen siendo estructuras de carpetas 137 00:09:44,110 --> 00:09:45,470 para poder alojar 138 00:09:45,470 --> 00:09:47,529 todos los fuentes 139 00:09:47,529 --> 00:09:49,950 y lo que es la aplicación web 140 00:09:49,950 --> 00:09:51,669 lo hemos dividido en 141 00:09:51,669 --> 00:09:53,210 básicamente en public y en 142 00:09:53,210 --> 00:09:55,669 carpetas de fuentes, en public pues bueno 143 00:09:55,669 --> 00:09:57,769 aquí tenemos todo lo que va a poder acceder a Apache 144 00:09:57,769 --> 00:10:00,720 y que básicamente tenemos 145 00:10:00,720 --> 00:10:02,960 en una parte de Ajax que nos envía 146 00:10:02,960 --> 00:10:04,899 de enlace con las clases que tenemos 147 00:10:04,899 --> 00:10:06,360 en deshacerse de router 148 00:10:06,360 --> 00:10:10,799 en CSS tenemos las hojas 149 00:10:10,799 --> 00:10:12,080 de estilos, en IMG 150 00:10:12,080 --> 00:10:14,440 aquí básicamente tenemos imágenes 151 00:10:14,440 --> 00:10:16,700 de los productos y tal 152 00:10:16,700 --> 00:10:18,580 en JS tenemos el javascript 153 00:10:18,580 --> 00:10:20,919 y luego con las distintas páginas que se divide 154 00:10:20,919 --> 00:10:22,840 la web 155 00:10:22,840 --> 00:10:24,419 en la que hay en fuentes 156 00:10:24,419 --> 00:10:26,779 es una carpeta config donde tenemos algunos archivos 157 00:10:26,779 --> 00:10:28,539 de configuración, en controles 158 00:10:28,539 --> 00:10:30,600 los controladores que se encargarán básicamente 159 00:10:30,600 --> 00:10:32,100 de acceder a los modelos 160 00:10:32,100 --> 00:10:33,379 y orquestar el tema 161 00:10:33,379 --> 00:10:36,240 ya las llamadas a la tinta y a la función entre los modelos 162 00:10:36,240 --> 00:10:37,460 los modelos 163 00:10:37,460 --> 00:10:40,519 aquí tenemos las clases que van a acceder 164 00:10:40,519 --> 00:10:41,700 directamente a la base de datos 165 00:10:41,700 --> 00:10:44,279 de la aplicación 166 00:10:44,279 --> 00:10:46,620 en router, pues aquí lo que 167 00:10:46,620 --> 00:10:47,179 tenemos es 168 00:10:47,179 --> 00:10:50,840 unas clases con ciertas funciones 169 00:10:50,840 --> 00:10:52,500 que va a llamar a los 170 00:10:52,500 --> 00:10:53,080 controladores 171 00:10:53,080 --> 00:10:56,500 va a servir de enlace 172 00:10:56,500 --> 00:10:58,480 entre la parte de IaaS 173 00:10:58,480 --> 00:11:00,779 con la parte de HP 174 00:11:00,779 --> 00:11:02,600 y en BIOS, bueno, pues aquí 175 00:11:02,600 --> 00:11:08,360 tenemos pues todas las todas las vistas que componen cada página de la web 176 00:11:09,500 --> 00:11:13,879 hemos ido dividiendo componentes plantillas 177 00:11:13,879 --> 00:11:19,600 que hacen falta pero bueno que son de marín de composer 178 00:11:21,000 --> 00:11:23,139 el diseño de datos 179 00:11:23,139 --> 00:11:42,740 Esto es lo que se ha diseñado, la tabla de usuario, tenemos una tabla principal que sería básicamente el usuario donde parte todo, parte de productos, luego producto, bueno, pues vemos que tenemos categorías, que además es una tabla recursiva, una categoría puede estar incluida, bueno, de hecho está dentro de otra. 180 00:11:42,740 --> 00:11:46,820 el usuario 181 00:11:46,820 --> 00:11:48,759 bueno, con sus pedidos, una vez que haya 182 00:11:48,759 --> 00:11:50,500 hecho algún pedido, que previamente 183 00:11:50,500 --> 00:11:52,220 debería haber entrado con la cesta 184 00:11:52,220 --> 00:11:54,539 el inventario de los productos 185 00:11:54,539 --> 00:11:56,840 el inventario final, bueno, se compone 186 00:11:56,840 --> 00:11:58,899 de un producto y las tallas 187 00:11:58,899 --> 00:12:01,039 que puede tener ese producto 188 00:12:01,039 --> 00:12:02,799 cuando se va a añadir algo 189 00:12:02,799 --> 00:12:04,700 a la cesta, pues bueno, básicamente se añade 190 00:12:04,700 --> 00:12:06,840 directamente del inventario puesto que debería estar disponible 191 00:12:06,840 --> 00:12:09,259 en una talla 192 00:12:09,259 --> 00:12:12,700 una vez que, bueno, el cliente hubiera tramitado la compra 193 00:12:12,740 --> 00:12:20,419 comprado, esta cesta pasaría a pedido, se generaría un nuevo identificador de pedido 194 00:12:20,419 --> 00:12:25,220 y los productos se alojarían en pedido producto. 195 00:12:25,220 --> 00:12:35,740 El diseño de las interfaces, esto básicamente sería una plantilla, básicamente ese componente 196 00:12:35,740 --> 00:12:40,659 del menú principal, que lo vemos aquí arriba, el menú de categorías, un pie y luego el 197 00:12:40,659 --> 00:12:51,980 principal que éste irá cambiando anteriormente tenemos un logo para el usuario que dependerá 198 00:12:51,980 --> 00:12:57,019 de si está logrado o no pues otras y la cesta de productos 199 00:12:59,899 --> 00:13:05,159 la navegación esta navegación en cuanto a los productos tenemos pues efectivamente una 200 00:13:05,159 --> 00:13:09,539 categoría digamos superiores que serían de bicicletas, equipación, accesorios y nutrición. 201 00:13:09,539 --> 00:13:18,159 Simplemente nos permitiría posicionarnos sobre ellas y se desplegarían las subcategorías que 202 00:13:18,159 --> 00:13:22,139 hay dentro de cada categoría. En este caso está desplegado lo que es equipación y se 203 00:13:22,139 --> 00:13:30,480 muestra con un subrayado inferior. ¿Contenido principal? Aquí esa parte central ya dependerá 204 00:13:30,480 --> 00:13:35,440 de dónde estemos pues irá irá cambiando digamos el contenido que te mostrará 205 00:13:36,779 --> 00:13:42,059 si vete acelerando un poquito si luego vas a enseñar la aplicación 206 00:13:42,059 --> 00:13:45,740 más rápido 207 00:13:45,740 --> 00:13:52,500 la página que está común a todos y luego tema de la navegación pues como decía antes 208 00:13:52,500 --> 00:13:58,419 segundo de que se accede se mostrarán los productos de textil se mostrarán todas las 209 00:13:58,419 --> 00:14:28,340 categorías, si se hace eso en una subcategoría pues se mostrarán solamente los productos de esa subcategoría, bueno, el producto dependiendo de lo que pulsemos pues se mostrarán una cantidad de unidades disponibles y tal, gestión de usuarios pues lo mismo, ese botoncillo dependiendo de si está registrado o no pues se mostrará una cosa u otra, si no está registrado pues se abrirá esta ventana, para hacer el login pues bueno, te darás tu usuario y se mostraría 210 00:14:28,419 --> 00:14:51,179 tu nombre de usuario, tu nombre y las opciones que tendrías, las preferencias, te llevaría a una página de preferencias donde podrías cambiar tus datos personales, el fin de contacto, el nacimiento, los pedidos que has hecho durante el tiempo, que lo puedes hacer al detalle de los mismos, productos, 211 00:14:51,179 --> 00:14:55,019 y esto ya sería el detalle 212 00:14:55,019 --> 00:14:56,940 digamos, por la dirección, número y tal 213 00:14:56,940 --> 00:14:57,740 y a ver que los productos 214 00:14:57,740 --> 00:15:00,840 la cesta, pues nada, vas añadiendo productos a la cesta 215 00:15:00,840 --> 00:15:02,879 a partir de, ya vas a ir solo 216 00:15:02,879 --> 00:15:03,399 al producto 217 00:15:03,399 --> 00:15:06,519 para realizar la compra, pues nada, botón de realizar la compra 218 00:15:06,519 --> 00:15:09,120 pasarías por una serie de pasos después 219 00:15:09,120 --> 00:15:10,960 datos personales, pues aquí confirmaría los productos 220 00:15:10,960 --> 00:15:12,899 vas a los datos personales, si quieres borrar 221 00:15:12,899 --> 00:15:14,559 alguno porque te hayas arrepentido 222 00:15:14,559 --> 00:15:16,059 pues bueno, lo puedes eliminar 223 00:15:16,059 --> 00:15:18,759 que no, pues continuas a datos personales, rellena el dato 224 00:15:18,759 --> 00:15:20,799 finaliza la compra, se te pregunta 225 00:15:20,799 --> 00:15:22,080 si quieres finalizarlo o no 226 00:15:22,080 --> 00:15:25,259 la confirmación y bueno, te hemos traído un mensajillo 227 00:15:25,259 --> 00:15:27,240 con el número de pedido y aparte 228 00:15:27,240 --> 00:15:28,820 un enlace para poder ir directamente ya 229 00:15:28,820 --> 00:15:30,460 al pedido que has realizado 230 00:15:30,460 --> 00:15:31,980 en lenguaje de programación 231 00:15:31,980 --> 00:15:34,960 para el lenguaje BAC 232 00:15:34,960 --> 00:15:37,019 pues tenemos el PHP y luego para la parte de Chrome 233 00:15:37,019 --> 00:15:38,720 tenemos el Javascript y el HTML 234 00:15:38,720 --> 00:15:39,840 junto con CSS 235 00:15:39,840 --> 00:15:42,139 todo eso programado utilizando 236 00:15:42,139 --> 00:15:44,740 la herramienta de desarrollo Visual Studio Code 237 00:15:44,740 --> 00:15:46,639 en cuanto a pruebas 238 00:15:46,639 --> 00:15:48,679 vale, pues la prueba la podemos dividir en 239 00:15:48,679 --> 00:15:50,980 unitarias e integradas 240 00:15:50,980 --> 00:15:53,620 y las unitarias, pues bueno, pues se ha creado un script 241 00:15:53,620 --> 00:15:55,139 para ir probando 242 00:15:55,139 --> 00:15:57,879 cada modelo, cada función de cada modelo 243 00:15:57,879 --> 00:15:59,600 y con los controladores, pues lo mismo 244 00:15:59,600 --> 00:16:03,659 he ido probando un script para probar 245 00:16:03,659 --> 00:16:05,159 cada función de cada controlador 246 00:16:05,159 --> 00:16:07,399 en los programas integrados, bueno, pues aquí ya 247 00:16:07,399 --> 00:16:09,279 ha sido una prueba, digamos, en conjunto 248 00:16:09,279 --> 00:16:11,000 de la parte de abajo a la parte del front 249 00:16:11,000 --> 00:16:13,379 para ver que todo va 250 00:16:13,379 --> 00:16:15,340 va sincronizado, digamos 251 00:16:15,340 --> 00:16:18,759 para implementarlo, bueno, pues 252 00:16:18,759 --> 00:16:20,500 lo que comentaba en un principio 253 00:16:20,500 --> 00:16:22,659 se ha hecho un RRP, hemos utilizado 254 00:16:22,659 --> 00:16:25,220 un sistema operativo Ubuntu Server 255 00:16:25,220 --> 00:16:27,100 en la versión 24.03 256 00:16:27,100 --> 00:16:29,200 y bueno 257 00:16:29,200 --> 00:16:31,320 esto realmente se ha hecho, bueno, esto ya está más extendido 258 00:16:31,320 --> 00:16:33,139 en un anexo 259 00:16:33,139 --> 00:16:35,340 con la aplicación Raspberry Pi 260 00:16:35,340 --> 00:16:37,000 y mayor, y bueno, y luego en cuanto 261 00:16:37,000 --> 00:16:37,940 al app software 262 00:16:37,940 --> 00:16:42,590 que hemos tenido que instalar junto con Ubuntu 263 00:16:42,590 --> 00:16:44,250 bueno, hemos tenido que instalar 264 00:16:44,250 --> 00:16:45,809 aparte en el servidor un Apache 265 00:16:45,809 --> 00:16:48,490 también hemos tenido que 266 00:16:48,490 --> 00:16:50,629 instalar y configurar y hacer una 267 00:16:50,629 --> 00:16:52,350 carga inicial de la base de datos MariaDB 268 00:16:52,350 --> 00:16:55,389 luego, bueno, posteriormente 269 00:16:55,389 --> 00:16:57,409 hemos tenido que hacer la instalación de la aplicación en el servidor 270 00:16:57,409 --> 00:16:59,269 y esto, bueno, esto lo haremos 271 00:16:59,269 --> 00:17:02,820 con FileZilla 272 00:17:02,820 --> 00:17:05,519 hemos implementado también seguridad en el servidor 273 00:17:05,519 --> 00:17:07,180 con SSL, con certificados 274 00:17:07,180 --> 00:17:08,660 bueno, luego 275 00:17:08,660 --> 00:17:11,299 como aquí decía antes, pues unas herramientas para poder hacer 276 00:17:11,299 --> 00:17:12,559 al servidor en remoto 277 00:17:12,559 --> 00:17:14,940 Compute y FileZilla, así que luego aparte 278 00:17:14,940 --> 00:17:16,200 la instalación de Compuser también 279 00:17:16,200 --> 00:17:18,720 a nivel de la aplicación 280 00:17:18,720 --> 00:17:21,279 vale, vale 281 00:17:21,279 --> 00:17:22,220 por supuesto, me resultaba 282 00:17:22,220 --> 00:17:30,539 Por supuesto, el presupuesto inicial que hemos realizado de lo que costaría en un comienzo el proyecto, 283 00:17:30,660 --> 00:17:39,799 tenemos lo que es el ordenador, un suelto afirmático, teclado, monitor, las herramientas de desarrollo, que son gratuitas, 284 00:17:41,420 --> 00:17:47,039 el hardware, que sería el servidor, que sería la red de repeat, el sistema operativo, Ubuntu, 285 00:17:47,039 --> 00:17:48,359 y bueno, luego si se quisiera 286 00:17:48,359 --> 00:17:50,599 comprar un dominio, pues bueno, pues sería 287 00:17:50,599 --> 00:17:53,079 por lo que he encontrado en esta página 288 00:17:53,079 --> 00:17:54,660 pues 10,99 al año 289 00:17:54,660 --> 00:17:56,779 el primer desembolso inicial sería de 290 00:17:56,779 --> 00:17:59,119 1.500, 1.775 291 00:17:59,119 --> 00:17:59,700 aproximadamente 292 00:17:59,700 --> 00:18:02,500 problemas, pues los problemas que he encontrado 293 00:18:02,500 --> 00:18:04,759 prácticamente han sido muchos 294 00:18:04,759 --> 00:18:07,319 con el tema de las vistas, hasta que he conseguido 295 00:18:07,319 --> 00:18:08,859 entender cómo funcionaban 296 00:18:08,859 --> 00:18:11,500 pues he tenido 297 00:18:11,500 --> 00:18:12,619 algunos problemas, pues bueno, como 298 00:18:12,619 --> 00:18:14,940 básicamente el tema de crear 299 00:18:14,940 --> 00:18:16,839 pistas dentro de vistas, que esto era por el tema de 300 00:18:16,839 --> 00:18:19,039 crear componentes, entonces va a tenerlo todo un poquito 301 00:18:19,039 --> 00:18:20,940 así diferenciado y cada cosa 302 00:18:20,940 --> 00:18:21,440 por su sitio 303 00:18:21,440 --> 00:18:24,819 pues vemos que costó un poquito 304 00:18:24,819 --> 00:18:25,920 digamos como implementar 305 00:18:25,920 --> 00:18:29,000 plantillas dentro de plantillas 306 00:18:29,000 --> 00:18:31,440 esto fue un problema 307 00:18:31,440 --> 00:18:32,799 que me llevó tiempo 308 00:18:32,799 --> 00:18:34,980 entender, luego una vez claro 309 00:18:34,980 --> 00:18:37,059 ese problema de haber 310 00:18:37,059 --> 00:18:39,220 solucionado, me salió otro 311 00:18:39,220 --> 00:18:41,119 que era el tema de compartir datos 312 00:18:41,119 --> 00:18:43,160 entre vistas, porque solamente conseguía 313 00:18:43,160 --> 00:18:44,480 llegar una vista, pero esa vista no 314 00:18:44,480 --> 00:18:46,539 digamos, no transfería esa información a la siguiente 315 00:18:46,539 --> 00:18:46,839 vista. 316 00:18:48,400 --> 00:18:50,339 Bueno, pues tras investigar 317 00:18:50,339 --> 00:18:52,119 al final encontré en la página de Arable que 318 00:18:52,119 --> 00:18:54,079 se hacía con esta función, con share, y entonces 319 00:18:54,079 --> 00:18:56,420 con esto puedes compartir, puedes llamar a la función share todas las veces 320 00:18:56,420 --> 00:18:58,319 que quieras y compartir así 321 00:18:58,319 --> 00:19:00,400 toda la información que necesites y pasa de una vista 322 00:19:00,400 --> 00:19:01,259 a otra. 323 00:19:02,880 --> 00:19:04,259 Esto luego aparte también metió 324 00:19:04,259 --> 00:19:06,200 otro error y era que, bueno, resulta que 325 00:19:06,200 --> 00:19:08,339 no se puede compartir estructuras de 326 00:19:08,339 --> 00:19:10,299 datos. Entonces había 327 00:19:10,299 --> 00:19:12,400 que mandarlo, digamos, como texto 328 00:19:12,400 --> 00:19:14,400 plano. Entonces, bueno, te conté eso en 329 00:19:14,400 --> 00:19:19,980 code pero decía que no podía tampoco podía mandar objetos así que al final la opción fue puede ser 330 00:19:19,980 --> 00:19:26,460 pues con serializarlos y así bueno se mandaba como un churrillo de caracteres y ya una vez que llega 331 00:19:26,460 --> 00:19:32,940 a la vista se deserializan y ya se puede tratar como si fuera un array normal y corriente en php 332 00:19:35,039 --> 00:19:42,240 vale este fue otro problema que me encontré también que era que bueno el tema de la descripción de los 333 00:19:42,240 --> 00:19:48,480 productos que luego estoy guardando en un campo de texto que básicamente guarda digamos lo que sería 334 00:19:48,480 --> 00:19:54,160 el texto con un formato html con los retornos de carro o los retornos de carro tipo de carro como 335 00:19:54,160 --> 00:20:01,200 br incluso las tablas con table idad lo que ocurre es que para poder hacer que no te pusiera que no 336 00:20:01,200 --> 00:20:07,019 te lo entrecomillara blade pues tienes que utilizar tienes que poner digamos ese campo 337 00:20:07,019 --> 00:20:12,539 entre las miraciones de esa forma digamos que no te lo entrecomillaba y directamente lo ponía 338 00:20:12,539 --> 00:20:19,180 en pantalla te lo añadía al código html como si fuera código html entrecomillarlo 339 00:20:20,819 --> 00:20:25,799 luego pues el login del usuario bueno login del usuario desplegable vale aquí otro problema que 340 00:20:25,799 --> 00:20:32,259 tuve por lo que utilicé ajax y tal era bueno que claro si llamabas a seguridad del formulario pues 341 00:20:32,259 --> 00:20:39,220 claro, obviamente se recargará la página. Para no recargar esa página he utilizado Ajax para poder 342 00:20:39,220 --> 00:20:45,400 hacer el tema de la validación de los datos de Logi. Si no son correctos, pues mostrar un 343 00:20:45,400 --> 00:20:49,720 mensajito sin que se recargue la página. Porque si no, en este caso lo que me ocurría es que desaparecía 344 00:20:49,720 --> 00:20:54,880 lo que es la ventanita. Pues va a ser un desplegable, pues desaparece, se vuelve a cargar, entonces el usuario 345 00:20:54,880 --> 00:20:59,799 realmente no iba a saber qué había ocurrido, a menos que volviera a desplegarlo. 346 00:20:59,799 --> 00:21:02,740 Otro caso 347 00:21:02,740 --> 00:21:03,440 que me encontré 348 00:21:03,440 --> 00:21:04,799 que lo solucioné 349 00:21:04,799 --> 00:21:05,240 con el tema 350 00:21:05,240 --> 00:21:06,079 con atributos data 351 00:21:06,079 --> 00:21:06,980 data guión 352 00:21:06,980 --> 00:21:07,980 y era que claro 353 00:21:07,980 --> 00:21:09,039 que a mí en formularios 354 00:21:09,039 --> 00:21:10,019 pues me ocurrió 355 00:21:10,019 --> 00:21:10,759 básicamente 356 00:21:10,759 --> 00:21:12,180 el tema de los productos 357 00:21:12,180 --> 00:21:13,140 cuando vas a añadirlos 358 00:21:13,140 --> 00:21:13,539 a la cesta 359 00:21:13,539 --> 00:21:16,259 tienes que guardar 360 00:21:16,259 --> 00:21:16,799 digamos el interfaz 361 00:21:16,799 --> 00:21:17,200 del producto 362 00:21:17,200 --> 00:21:17,779 en algún sitio 363 00:21:17,779 --> 00:21:18,839 entonces una opción 364 00:21:18,839 --> 00:21:19,500 hubiera sido 365 00:21:19,500 --> 00:21:20,460 utilizar 366 00:21:20,460 --> 00:21:23,480 utilizar campos 367 00:21:23,480 --> 00:21:24,140 en Haydn 368 00:21:24,140 --> 00:21:25,220 pero claro 369 00:21:25,220 --> 00:21:25,779 ya serían 370 00:21:25,779 --> 00:21:27,480 ya utilizar muchos campos 371 00:21:27,480 --> 00:21:29,119 entonces al final 372 00:21:29,119 --> 00:21:29,599 digamos que 373 00:21:29,599 --> 00:21:33,960 buscando por la web y que había una opción que era que podías añadir atributos data-guión y luego 374 00:21:33,960 --> 00:21:39,960 me dejaba escribir, podías acceder a ellos. Los he utilizado para poder, digamos, tener toda la 375 00:21:39,960 --> 00:21:48,099 información en un producto, digamos, y así tener, pues, tanto las tallas como, vamos, como todo, 376 00:21:48,099 --> 00:21:59,829 todo en una etiqueta. Y así luego poder enviar estos datos, pues, por red o por post. En cuanto 377 00:21:59,829 --> 00:22:01,450 mejoras, pues vale, aquí 378 00:22:01,450 --> 00:22:03,849 no ha dado tiempo, pero bueno 379 00:22:03,849 --> 00:22:05,369 hubiera gustado implementar un buscador 380 00:22:05,369 --> 00:22:07,990 y entonces poder buscar por marca, por ejemplo 381 00:22:07,990 --> 00:22:08,970 o buscar 382 00:22:08,970 --> 00:22:11,650 no sé, a poner un futuro sería buscar por 383 00:22:11,650 --> 00:22:12,549 colores quizás 384 00:22:12,549 --> 00:22:15,490 o por un nombre en concreto de un producto 385 00:22:15,490 --> 00:22:17,369 entonces así irías más rápido ahí 386 00:22:17,369 --> 00:22:19,569 y también haber implementado una 387 00:22:19,569 --> 00:22:21,529 paginación, porque claro 388 00:22:21,529 --> 00:22:23,549 a veces, bueno, en el proyecto pues hay 389 00:22:23,549 --> 00:22:24,349 pocos productos, entonces 390 00:22:24,349 --> 00:22:27,210 se mostrarían poquitos, pero claro, si 391 00:22:27,210 --> 00:22:29,130 esto crece mucho 392 00:22:29,130 --> 00:22:30,470 sea lo suyo 393 00:22:30,470 --> 00:22:33,670 pues entonces mostrar todos los productos 394 00:22:33,670 --> 00:22:36,069 de golpe pues cargaría 395 00:22:36,069 --> 00:22:37,289 sería de tiempo 396 00:22:37,289 --> 00:22:41,509 en cuanto al usuario pues sería 397 00:22:41,509 --> 00:22:43,809 serían unos tiempos de espera muy largos 398 00:22:43,809 --> 00:22:45,309 y al final 399 00:22:45,309 --> 00:22:47,950 empobrece la usabilidad de la página 400 00:22:47,950 --> 00:22:51,319 y la experiencia del usuario además 401 00:22:51,319 --> 00:22:53,539 y bueno, creo que 402 00:22:53,539 --> 00:22:54,480 con esto ya 403 00:22:54,480 --> 00:22:56,079 sería finalizada 404 00:22:56,079 --> 00:22:59,420 Si quieres muéstrame 405 00:22:59,420 --> 00:23:01,720 Sí, en la web funciona. 406 00:23:02,619 --> 00:23:05,059 Vale, a ver, por aquí. 407 00:23:08,779 --> 00:23:09,079 Vale. 408 00:23:10,039 --> 00:23:10,220 Bueno. 409 00:23:12,140 --> 00:23:12,960 O sea, la página de inicio. 410 00:23:13,539 --> 00:23:14,880 En principio no estamos registrados. 411 00:23:14,880 --> 00:23:16,559 No estamos registrados. 412 00:23:16,859 --> 00:23:18,599 Pero bueno, tú puedes hacer igualmente 413 00:23:18,599 --> 00:23:20,299 el producto que hubiera. 414 00:23:21,740 --> 00:23:22,940 Si estuviéramos registrados, 415 00:23:23,039 --> 00:23:23,279 pues bueno. 416 00:23:24,880 --> 00:23:31,700 A ver, algo personal. 417 00:23:37,400 --> 00:23:38,819 Bueno, esto sería 418 00:23:38,819 --> 00:23:40,740 el ejemplo de cuando das unas 419 00:23:40,740 --> 00:23:41,579 credenciales erróneas. 420 00:23:41,579 --> 00:23:44,000 si tenemos allá el mensajito 421 00:23:44,000 --> 00:23:47,299 ahora ya sí, correctamente 422 00:23:47,299 --> 00:23:49,019 ya estaremos registrados y tendríamos 423 00:23:49,019 --> 00:23:51,220 las opciones de preferencia pedidos en la sesión 424 00:23:51,220 --> 00:23:52,200 bueno 425 00:23:52,200 --> 00:23:54,880 como vemos aquí en un principio 426 00:23:54,880 --> 00:23:57,440 hemos accedido a la categoría 427 00:23:57,440 --> 00:23:59,539 de bicicletas que es una categoría 428 00:23:59,539 --> 00:24:01,319 principal y se nos muestra todo 429 00:24:01,319 --> 00:24:03,220 dentro de aquí tenemos 430 00:24:03,220 --> 00:24:05,500 por ejemplo bicicletas que son de doble suspensión 431 00:24:05,500 --> 00:24:07,299 que serían estas primeras y luego las rígidas 432 00:24:07,299 --> 00:24:09,400 entonces bueno, si fuéramos 433 00:24:09,400 --> 00:24:10,359 directamente a las rígidas 434 00:24:10,359 --> 00:24:12,299 pues solamente se muestran en las dirigidas 435 00:24:12,299 --> 00:24:14,880 también aquí en la amiga 436 00:24:14,880 --> 00:24:16,880 pues nos permite verlo 437 00:24:16,880 --> 00:24:19,160 en donde nos encontramos 438 00:24:19,160 --> 00:24:21,099 si queremos incluso ir hacia atrás pues podemos ir directamente 439 00:24:21,099 --> 00:24:22,059 a montaña y 440 00:24:22,059 --> 00:24:23,980 estaríamos en la montaña 441 00:24:23,980 --> 00:24:28,420 entonces, a ver 442 00:24:28,420 --> 00:24:30,720 si quisiéramos añadir un producto 443 00:24:30,720 --> 00:24:34,019 en el momento en que tenemos este disponible 444 00:24:34,019 --> 00:24:35,759 marcaríamos la talla 445 00:24:35,759 --> 00:24:37,579 luego aparte se nos muestran las unidades disponibles 446 00:24:37,579 --> 00:24:39,740 si quisiéramos añadir a la cesta 447 00:24:39,740 --> 00:24:41,519 más de las que están disponibles no nos dejaría 448 00:24:41,519 --> 00:24:44,519 y vamos a 449 00:24:44,519 --> 00:24:46,119 a una que hay menos unidades 450 00:24:46,119 --> 00:24:47,539 ya que ese auto 451 00:24:47,539 --> 00:24:49,480 nos refresca, digamos 452 00:24:49,480 --> 00:24:51,799 bueno, el que hemos elegido 453 00:24:51,799 --> 00:24:54,200 bueno, tenemos las fotos 454 00:24:54,200 --> 00:24:55,240 digamos 455 00:24:55,240 --> 00:24:58,660 vamos a ver las fotos, pues bueno, se nos iría mostrando 456 00:24:58,660 --> 00:25:02,259 luego, aquí abajo tenemos 457 00:25:02,259 --> 00:25:03,559 bueno, detalles, características 458 00:25:03,559 --> 00:25:05,819 vale, esta es la parte que me dio problemas 459 00:25:05,819 --> 00:25:08,579 con el tema de la excepción 460 00:25:08,579 --> 00:25:10,019 de las vistas 461 00:25:10,019 --> 00:25:12,079 porque me lo pegaba tal cual y entonces bueno 462 00:25:12,079 --> 00:25:13,900 me lo pegaba entrecomillado, entonces claro 463 00:25:13,900 --> 00:25:22,180 nos hemos tomado por ejemplo es un tipo es una tabla dejar mostraría lo que es las etiquetas 464 00:25:22,180 --> 00:25:28,019 no pondría el table y en fin con el ejército la historia entonces fue el problema que me encontré 465 00:25:28,019 --> 00:25:36,819 que se solucionó poniendo la admiración en el campo entonces lo que es añadir la cesta 466 00:25:36,819 --> 00:25:44,539 la actualizaría, aquí tendríamos la talla, el producto, si quisiéramos quitarlo, bueno, 467 00:25:44,539 --> 00:25:53,980 pues le daríamos al botoncillo correspondiente, si queremos añadirlo, lo añadimos, lo volveríamos 468 00:25:53,980 --> 00:25:59,000 a tener, podemos añadir más productos, equipación, por ejemplo, aquí en textil 469 00:25:59,000 --> 00:26:05,799 tenemos también, por ejemplo este, talla M tenemos disponibles, vamos a añadir dos, 470 00:26:05,799 --> 00:26:08,940 los actualizaría 471 00:26:08,940 --> 00:26:11,720 aquí tendríamos el nuevo producto que hemos añadido 472 00:26:11,720 --> 00:26:14,140 la cantidad y la talla 473 00:26:14,140 --> 00:26:15,880 entonces si quisiéramos realizar la compra 474 00:26:15,880 --> 00:26:17,539 pues bueno, básicamente iríamos a 475 00:26:17,539 --> 00:26:21,279 aquí tenemos el total 476 00:26:21,279 --> 00:26:23,380 de los dos productos 477 00:26:23,380 --> 00:26:25,759 si quisiéramos realizar la compra 478 00:26:25,759 --> 00:26:26,519 pues lo tendríamos aquí 479 00:26:26,519 --> 00:26:29,660 aquí tenemos el resumen de lo que vamos a 480 00:26:29,660 --> 00:26:31,859 comprar, el producto, los dos productos 481 00:26:31,859 --> 00:26:32,640 el total 482 00:26:32,640 --> 00:26:35,140 podríamos también eliminar los productos si quisiéramos 483 00:26:35,140 --> 00:26:42,880 aquí estamos estamos de acuerdo seguimos a datos personales aquí se actualizan los datos de las 484 00:26:42,880 --> 00:26:49,259 preferencias que que tendríamos del usuario si quisiéramos cambiarlo bueno pues podemos 485 00:26:49,259 --> 00:26:55,759 cambiarlo perfectamente un poco ahí el problema por ejemplo 486 00:26:55,759 --> 00:27:04,380 se podrían cambiar 487 00:27:04,380 --> 00:27:06,440 iríamos a finalizar la compra 488 00:27:06,440 --> 00:27:09,700 nos pregunta si estamos de acuerdo 489 00:27:09,700 --> 00:27:12,359 aquí tenemos 490 00:27:12,359 --> 00:27:15,119 el número de pedido que se ha creado 491 00:27:15,119 --> 00:27:18,900 podemos volver al inicio 492 00:27:18,900 --> 00:27:20,859 o si no podemos ir directamente a la sección de pedidos 493 00:27:20,859 --> 00:27:23,079 del usuario con el que estamos bloqueados 494 00:27:23,079 --> 00:27:48,859 Entonces nos muestra en orden descendente los pedidos y aquí tenemos el pedido número 11, que es el último que hemos hecho, que son dos unidades, el maillot, la fecha, el día de hoy, el total de la compra, el pedido que se ha adoptado, que está de momento ya registrado, el producto, dos unidades, el precio por unidad de 199, el total sería este, la bici. 495 00:27:48,859 --> 00:27:56,740 entonces bueno así que seamos ver los detalles que nos iríamos a mostrar los detalles digamos 496 00:27:56,740 --> 00:28:03,240 personales correo el número de teléfono que hemos cambiado aquí también se puede ver que hemos 497 00:28:03,240 --> 00:28:11,539 cambiado la localidad y el código postal y bueno y los productos también vamos a volver y bueno 498 00:28:11,539 --> 00:28:18,619 aquí tenemos los productos que hemos hecho durante el tiempo y bueno esto por ejemplo fue entregado 499 00:28:18,619 --> 00:28:21,039 no lo mostraría como tal, en el estado de pedido 500 00:28:21,039 --> 00:28:21,680 registrado 501 00:28:21,680 --> 00:28:25,059 también el usuario 502 00:28:25,059 --> 00:28:26,599 podemos ir a las referencias 503 00:28:26,599 --> 00:28:29,180 aquí lo tendríamos, de aquí es de donde nos lo ha recogido 504 00:28:29,180 --> 00:28:31,099 cuando hemos ido a finalizar la compra 505 00:28:31,099 --> 00:28:32,619 pues de aquí es donde nos ha recogido los datos 506 00:28:32,619 --> 00:28:35,160 bueno, de aquí es lo mismo 507 00:28:35,160 --> 00:28:37,059 si queremos cambiarlo, bueno, vamos a cambiarlo 508 00:28:37,059 --> 00:28:41,299 preferencias guardadas correctamente 509 00:28:41,299 --> 00:28:42,519 nos da mensajillo, de que ha ido bien 510 00:28:42,519 --> 00:28:44,980 y bueno 511 00:28:44,980 --> 00:28:47,849 bueno 512 00:28:47,849 --> 00:29:14,559 Nos quedaría, bueno, pues la página de registro, que bueno, podemos poner aquí Antonio, lo registraríamos y automáticamente además se logra también. 513 00:29:14,559 --> 00:29:27,279 Vale, pues muy bien. Pasamos ahora a las preguntas. Deja de compartir si quieres. 514 00:29:27,279 --> 00:29:40,220 A ver, primero, ¿por qué has elegido Raspberry Pi para...? 515 00:29:41,279 --> 00:29:53,079 Sí, pues esto ha sido porque hace un mes y medio más o menos me di cuenta de que tenía una Raspberry por casa y la he utilizado para otras cosas. 516 00:29:54,220 --> 00:30:00,220 Pero sabía que se podía instalar en un servidor y como trabajo y tal me parecía interesante añadirlo. 517 00:30:01,220 --> 00:30:13,740 No sé por qué no muestra ahora. 518 00:30:16,559 --> 00:30:18,140 Como está con el móvil, no sé si es por eso. 519 00:30:18,140 --> 00:30:21,380 A ver si compartís cámara. 520 00:30:23,240 --> 00:30:29,000 Y luego, en cuanto a las pruebas unitarias, ¿qué sacaste en claro? 521 00:30:29,220 --> 00:30:30,339 Me has dicho que has hecho un script, ¿no? 522 00:30:30,339 --> 00:30:44,900 Sí, sí, sí, bueno, me he dado un esquiz para cada modelo, para cada controlador y bueno, claro, lo bueno es que se me está yendo, no sé por qué, ah, que está demasiado caliente me dicen, joder, vale, me está dando problemas 523 00:30:44,900 --> 00:30:48,299 No te preocupes, nada, sí, sí, no te preocupes 524 00:30:48,299 --> 00:30:50,740 Sí 525 00:30:50,740 --> 00:30:54,160 Bueno, he sacado claro 526 00:30:54,160 --> 00:30:55,960 que tenía que hacerlas porque sí que es verdad 527 00:30:55,960 --> 00:30:57,960 que aunque al principio 528 00:30:57,960 --> 00:30:59,640 lo he hecho todo un poco, digamos, más bien 529 00:30:59,640 --> 00:31:01,359 todo en conjunto 530 00:31:01,359 --> 00:31:04,319 es verdad que luego probándolo por separado 531 00:31:04,319 --> 00:31:05,380 pues había errores que no tenía 532 00:31:05,380 --> 00:31:06,519 que no había controlado 533 00:31:06,519 --> 00:31:09,940 entonces digamos que me ha venido bien para poderlo 534 00:31:09,940 --> 00:31:12,180 controlarlo mejor en las pruebas 535 00:31:12,180 --> 00:31:12,700 integradas 536 00:31:12,700 --> 00:31:15,500 me ha permitido 537 00:31:15,500 --> 00:31:17,779 más que nada ver fugas 538 00:31:17,779 --> 00:31:19,539 de errores que tenía 539 00:31:19,539 --> 00:31:21,359 que no tenía que ir a otro lado 540 00:31:21,359 --> 00:31:24,660 ¿Y cómo adaptarías 541 00:31:24,660 --> 00:31:26,359 este proyecto, por ejemplo, a una empresa más grande? 542 00:31:26,799 --> 00:31:28,579 ¿Cómo lo...? 543 00:31:28,579 --> 00:31:30,059 ¿Adaptarlo? Bueno, lo primero 544 00:31:30,059 --> 00:31:31,740 obviamente una Raspberry no podría 545 00:31:31,740 --> 00:31:33,700 alojar una página web 546 00:31:33,700 --> 00:31:36,619 una página pequeña, esto ya habría que pasar a otro nivel 547 00:31:36,619 --> 00:31:38,160 y 548 00:31:38,160 --> 00:31:40,200 bueno, a ver, a una empresa más grande 549 00:31:40,200 --> 00:31:40,700 a ver, esto 550 00:31:40,700 --> 00:31:43,640 habría faltado, lo que decía también 551 00:31:43,640 --> 00:31:46,099 uno de los puntos, habría faltado una parte 552 00:31:46,099 --> 00:31:46,819 digamos de 553 00:31:46,819 --> 00:31:54,799 de los empleados y que ellos pudieran manejar toda esta información pero añadir subir los 554 00:31:54,799 --> 00:32:00,500 productos y claro subir inventario porque claro el tema de inventario pues tampoco está tampoco 555 00:32:00,500 --> 00:32:07,400 está controlado yo creo que eso cogería de eso falta esa parte por el resto yo creo que más o 556 00:32:07,400 --> 00:32:15,500 menos las funcionalidades están más o menos son las básicas y se debería de permitir una página 557 00:32:15,500 --> 00:32:17,759 de compras. Bueno, claro, también le faltaría 558 00:32:17,759 --> 00:32:19,640 el tema de, bueno, de que pongas una tarjeta de crédito 559 00:32:19,640 --> 00:32:21,519 y puedas pagar con Paypal o tal, 560 00:32:21,579 --> 00:32:23,660 pero bueno. O sea, sería 561 00:32:23,660 --> 00:32:25,099 otro punto a añadir 562 00:32:25,099 --> 00:32:28,690 en una situación real. Y luego, 563 00:32:28,869 --> 00:32:31,049 ¿el problema más importante de todos los temas 564 00:32:31,049 --> 00:32:32,710 detallados? ¿Cuál es el que más guerra te dio? 565 00:32:33,230 --> 00:32:35,029 El de las vistas, sobre todo el de las vistas 566 00:32:35,029 --> 00:32:36,609 y, bueno, el de las vistas 567 00:32:36,609 --> 00:32:38,970 y el tema de los atributos 568 00:32:38,970 --> 00:32:40,769 de data. El de poder llevar toda la información 569 00:32:40,769 --> 00:32:42,710 del producto cuando vas a añadirlo a la cesta. 570 00:32:43,710 --> 00:32:45,069 Ese fue, eso fueron de los que más 571 00:32:45,069 --> 00:32:46,690 tiempo me llevo. Vamos. 572 00:32:46,809 --> 00:32:49,170 sobre todo el de las vistas, eso me frustró bastante 573 00:32:49,170 --> 00:32:51,289 porque como lo estuve dividiendo 574 00:32:51,289 --> 00:32:53,349 en componentes hasta que conseguí que encajaran 575 00:32:53,349 --> 00:32:53,789 entre ellos 576 00:32:53,789 --> 00:32:56,789 que no sabía cómo hacerlo en un principio y al final 577 00:32:56,789 --> 00:32:58,509 bueno, no sé, pensando y tal, digo bueno, pues 578 00:32:58,509 --> 00:33:01,029 igual que llamo aquí a uno con sección 579 00:33:01,029 --> 00:33:03,150 digo pues bueno, intento crear otro y que lo llame 580 00:33:03,150 --> 00:33:05,190 también con un shield y lo enganche ahí 581 00:33:05,190 --> 00:33:07,130 al final vamos, conseguí enganchar uno 582 00:33:07,130 --> 00:33:09,089 con otro, pero eso me llevó 583 00:33:09,089 --> 00:33:10,589 me llevó tiempo, sí 584 00:33:10,589 --> 00:33:12,269 y luego 585 00:33:12,269 --> 00:33:15,150 la elección de la arquitectura modelo vista controlador 586 00:33:15,150 --> 00:33:16,769 porque lo has usado 587 00:33:16,769 --> 00:33:46,130 Pues por tenerlo todo bien dividido, las vistas por un sitio, los modelos que se encarguen solamente de su parte, que sería el acceso a las tablas y los controladores para que sean los que se encarguen de ir llamando a los distintos modelos y poder orquestar, por ejemplo, lo que viene siendo una compra, porque necesitas bajar inventario, añadir productos al usuario, generar un pedido, 588 00:33:46,130 --> 00:33:51,609 Entonces, era la manera de tener a todo más, digamos, cada cosa en su sitio. 589 00:33:52,890 --> 00:34:01,329 Vale. Bueno, pues yo creo que no, creo que hemos terminado. No te voy a hacer ninguna pregunta más. Ya puedes respirar. 590 00:34:01,930 --> 00:34:02,130 Vale. 591 00:34:03,890 --> 00:34:09,289 Y, vale, pues con esto concluimos. Esto será una libia ya para ti. 592 00:34:10,190 --> 00:34:11,469 Sí, jo, la verdad que sí. 593 00:34:13,869 --> 00:34:15,530 Estaba esperando que ya se terminaba ya. 594 00:34:16,130 --> 00:34:25,250 Vale, y nada, pues nada, mucha suerte y nada, enhorabuena, me gustó el trabajo y poco más. 595 00:34:26,050 --> 00:34:32,190 Le he puesto bastante tiempo y horas y sueño, bueno, o falta de sueño. 596 00:34:32,309 --> 00:34:36,710 Ya, se ve, se ve. Vale, pues nada, encantado Ángel y nada, suerte. 597 00:34:37,269 --> 00:34:38,110 Muchas gracias. 598 00:34:38,590 --> 00:34:38,949 Gracias. 599 00:34:39,949 --> 00:34:40,349 Hasta luego.