Que bueno es saber que hay tan buenos referentes en este mundo del desarrollo de softaware y sobre todo con tantas ganas de enseñar, un video chill, muy buen contenido, y sobre todo entendible; Muchas Gracias
gracias por el tutorial carlos, estuve haciendo uno de node con express el cual termine ayer, quiero repasar y me siento conforme al pausar tu video y hacer todo antes que lo hagas vos... y ver que el resultado es similar y FUNCIONA es un sentimiento de p*ta madre, nuevo sub
muchas gracias, me sirvio mucho este video, soy programador pero la mayor parte de mi vida he usado python. Hace 2 dias una empresa me envio una prueba de codigo en javascritp para hacer un blog con base de datos, front end y backend, este video me sirvio muchisimo :D xD acepte el reto porque me dijeron que nadamas querian ver mi capacidad (si les dije que no se javascript) y porque honestamente mi github estaba muy vacio.
Amigo esta guia esta muy buena, explicas muy bien y el video se pasa volando, veo que aun le das like a los comentarios recientes asi que voy a aprovechar de dar la unica falla que le encuentro al video, es que no tienes la siguiente parte (al parecer 4) en la descripcion o con un nombre que sea facil de encontrar, aun asi agradesco tu trabajo
Muchas gracias Koltuz! Revisaré estos vídeos para que desde cualquier se pueda seguir toda la serie. Mientras, en esta playlist los tienes todos ordenados, incluso la versión que hice hace ya unos cuantos años. ua-cam.com/play/PLUdlARNXMVkk7E88zOrphPyGdS50Tadlr.html
Ey tengo que decir que este es uno de los mejores tutos que ye haz lanzado, me gusto mucho... Espero que sigas dándole seguimiento por ejemplo, pata consumir esa api desde React por ejemplo, y guardar la info con MySql... O mongo..
Pregunta existencial de buena práctica (soy oldschool Java). ¿Por qué no cerrar el if con un else en la validación de datos de la BD Workout.js? Saludos, excelente tuto :D
Hola! muy bueno el video! Lo que llamas Data access layer sería la capa repositorie del patrón de repositorio? Osea: router ---> controller --> service --> repositorie --> BD (mySql)? En la capa de repositorie se desarrollarían todas las funciones (del ORM) que operan en forma directa con la BD? Gracias!
Hola Carlos, una pregunta, si estas comenzando ha desarrollar un e-commerce o un sitio web que permita hacer compras en linea es recomendable separar en backend del frontend en el proyecto o bastaria con usar next.js?
Hola que tal? Muy buen video, consulta. En el caso de hacer un get teniendo una api rest y la respuesta devuelva ejemplo 50.000 registros, conviene hacer una sola llamada y luego manejar la data desde el front end , hacer paginacion en el Backend y al hacer la llamada que nos diga cuantas páginas y registros tenemosbe ir haciendo una llamada por página o que otro método? Muchas gracias
Una pregunta si quiero meter esas carpetas de back-end en angular como las puedo ingresar..Se puede agregar todas las carpetas en src en angular solamente o cual seria en si la buena practica?
El error que tiene en el minuto 46.34 es porque había un paréntesis extra y hacía que isAlreadyAdded no tenga el valor esperado: const isAlreadyAdded = (lo que retorna del findIndex) y la sintaxis correcta era: const isAlreadyAdded = (lo que retorna del findIndex) > -1 o sea que al mismo tiempo que se hace el findIndex se hace la validación de si es mayor a -1 y eso se le asigna a la variable, no sé si me expliqué bien xd
Saludos, tengo una pregunta, este tipo de estructura de carpeta, archivos, dependencias y demás tiene algún nombre como arquitectura? es decir, se puede definir esto como una arquitectura X para trabajar el backend con Node y Express? De antemano, muchas gracias.
Hola amigazo, estoy en una tragedia tamaño megalodonte, estoy configurando mi API rest pero no tengo respuesta del server en la terminal. Alguna buena alma q me ayuda??
hola, no tengo claro lo de los templates, como puedo hacer para conectar mi header y menu de html con otros documentos sin nesesidad de copiar el codigo en los otros documentos?. buen video gracias.
usa "ejs", es un motor de plantillas que te permite meter lógica de js en tu front, alli si que puedes incluir todas esas porciones de codigo que se repiten en cada hoja tales como: head, navbar, footer, scripts, etc. es muy facil de usar.
Quizás hubieras dedicado más en explicar que normalmente aun aplicando las n capas (ya ni hablando de 3) se puede seguir teniendo código espagueti y acoplado entre capas y seguir teniendo un mogollón de mas las practicas y que incluso lo unico por lo que estan ahi es para distribuir entre las capas el desorden, lo cual en lugar de encapsular lógica lo que hace es distribuir complejidad que es más difícil en ocasiones de seguir (dependiendo también de que tan grande sea el proyecto). ¿A qué me refiero con esto? Pues si honramos un poco aunque sea la intención por la que alguien se le ocurrió la arquitectura por capas rápidamente veremos donde se falla, incluso tú mismo tocaste el tema. Mi respuesta: ¿Para qué queremos una capa de servicio? ¿Qué queremos conseguir con ello? ¿Qué es un servicio en realidad? Con respecto al dominio de mi problema, ¿qué parte atacan los servicios? ¿Qué dependencia tiene mi capa de servicio de la capa de acceso a datos? ¿Cómo encapsulo mi servicio del exterior? Habría que refactorizar mi servicio por un cambio en mi capa de acceso a datos? ¿Estoy invirtiendo la dependencia? ¿Cómo de fácil es doblar las dependencias de esta capa? Aquí muchos fallan! ¿Para qué queremos una capa de acceso a datos? Dentro de qué límites se deben mover esta capa? ¿Qué dependencias tiene esta capa? Está acoplada a un ORM o librería? ¿Qué pasa si un nuevo cambio llega? Aquí muchos fallan! Hints: OCP DIP. ¿Para qué queremos una capa de presentación? ¿Qué misión debe cumplir? Debo refactorizar esta capa por un cambio en la última capa (acceso a datos)? ¿Cómo de fácil puedo testear esta capa? Y si mañana no es express.js sino otro? ¿Me dolerá o le dolerá la billetera a mi cliente? Los patrones de diseño y principios de diseño de software en estos escenarios son casi muy intuitivos de aplicar, pero en realidad muchos aplican arquitecturas de capas solo porque todos los demás lo hacen sin detenerse a pensar la razón de ello. Los principios muchas veces vienen de la reflexión y del análisis más que de la experiencia, puedo intuir un principio fácilmente con análisis continuo de mis diseños. Que por cierto antes se solía escuchar mucho el rol de "analista programador", porque será que ya casi no se ven las ofertas con ese título? ¡Curioso! xD Una cosa: existen muchas opciones, unas con más complejidad pero que el precio lo vale, y otras que no tanto. Depende de tu análisis llevarás a tu equipo o proyecto por el camino correcto.
como hace para que le previsualice el codigo que va a poner? que no sea copilot. Porque en mi VSC no lo hace y tampoco me agrega los () al final. Alguien me puede ayudar?
Que bueno es saber que hay tan buenos referentes en este mundo del desarrollo de softaware y sobre todo con tantas ganas de enseñar, un video chill, muy buen contenido, y sobre todo entendible; Muchas Gracias
Gracias Daniel!! Me alegro que te guste el vídeo y agradezco tus comentarios ☺️
Muchisimas gracias Carlos!!! Estoy iniciando en backend y con esto ayudas muchisimo. Es super clara y entretenida tu explicación 😁
gracias por el tutorial carlos, estuve haciendo uno de node con express el cual termine ayer, quiero repasar y me siento conforme al pausar tu video y hacer todo antes que lo hagas vos... y ver que el resultado es similar y FUNCIONA es un sentimiento de p*ta madre, nuevo sub
Que bueno!! Me alegro mucho!
Explicas todo perfectamente, se entiende rápido y se ve que realmente sabes lo que estás haciendo, brutal. Gracias por el curro y por compartirlo.
Muchísimas gracias Ancor!! 🤩
No me canso de ver este video! PERFECTO! Gracias Carlos!!!!
Muchas gracias Nahuel! Me alegra!
muchas gracias, me sirvio mucho este video, soy programador pero la mayor parte de mi vida he usado python. Hace 2 dias una empresa me envio una prueba de codigo en javascritp para hacer un blog con base de datos, front end y backend, este video me sirvio muchisimo :D xD acepte el reto porque me dijeron que nadamas querian ver mi capacidad (si les dije que no se javascript) y porque honestamente mi github estaba muy vacio.
Me alegro que te haya servido! Gracias por suscribirte :) Espero que encuentres contenido de tu interés
Amigo esta guia esta muy buena, explicas muy bien y el video se pasa volando, veo que aun le das like a los comentarios recientes asi que voy a aprovechar de dar la unica falla que le encuentro al video, es que no tienes la siguiente parte (al parecer 4) en la descripcion o con un nombre que sea facil de encontrar, aun asi agradesco tu trabajo
Muchas gracias Koltuz! Revisaré estos vídeos para que desde cualquier se pueda seguir toda la serie.
Mientras, en esta playlist los tienes todos ordenados, incluso la versión que hice hace ya unos cuantos años.
ua-cam.com/play/PLUdlARNXMVkk7E88zOrphPyGdS50Tadlr.html
Pera xD , voy a tu directo de 3 horas o a este video ? Esta todo ? LOLO me quede anonadado. Felicidades :)
Aquí está el tutorial en si y al grano. En el directo de Twitch además de esto hay partes en las que contestó preguntas del chat, por eso es más largo
Excelente contenido! en unas 4hs aprendi una gran parte de node con excelentes practicas gracias a vos!
Que bueno Franco! Me alegro mucho :)
Carlos! Estaría genial que cuando acabases estas guías dieras otras buenas prácticas de un nivel más senior. Gracias!
¿Clean Architecture?
Volviendo a ver este video para aprender a diario
Ey tengo que decir que este es uno de los mejores tutos que ye haz lanzado, me gusto mucho...
Espero que sigas dándole seguimiento por ejemplo, pata consumir esa api desde React por ejemplo, y guardar la info con MySql... O mongo..
Gracias Carlos! 😁excelente video. Mi parte favorita está en el minuto 33:42 🤣 Saludos desde Ecuador.
Es lo que buscaba muchas gracias por la aportaion
Eres el P*to amo, muchas gracias y saludos desde Colombia!!!!
Esto es excelente, realmente me ayudó un montón el video. Mil gracias Carlos!
Un placer! ☺️
Tienes más videos en la playlist, y ordenados aquí: carlosazaustre.es/cursos/nodejs-gratis
Pregunta existencial de buena práctica (soy oldschool Java). ¿Por qué no cerrar el if con un else en la validación de datos de la BD Workout.js? Saludos, excelente tuto :D
Gracias por este contenido!!!
A ti! Espero que te sea útil!
Excelente video Carlos
tremendo video!
Gracias Alexis!
45:19 podría ser también un `array.some()` esto devuelve true o false y te ahorras el `> -1` 😁😁
Si esa era mejor opción
Hola! muy bueno el video! Lo que llamas Data access layer sería la capa repositorie del patrón de repositorio? Osea: router ---> controller --> service --> repositorie --> BD (mySql)? En la capa de repositorie se desarrollarían todas las funciones (del ORM) que operan en forma directa con la BD? Gracias!
Que lindo canal Carlos!! Gracias!
Esta excelente el video
Hola Carlos, una pregunta, si estas comenzando ha desarrollar un e-commerce o un sitio web que permita hacer compras en linea es recomendable separar en backend del frontend en el proyecto o bastaria con usar next.js?
Buenisimo , estuve en el directo ajajaj
Ahora a ver las mejores jugadas 😄
@@CarlosAzaustre claro ajajjaja 😂😂
Mas tutoriales con Nodejs porfa
Execelente contenido. Esto me ha ayudado a entender muchas cosas que ignoraba. 🚀
Muchas gracias, la clase está genial una duda, cómo se pone el cohete?
En Mac, la combinación de teclas Cmd + Alt + space me muestra los emojis del sistema. No se si otros sistemas operativos tienen algo similar
Hola que tal? Muy buen video, consulta. En el caso de hacer un get teniendo una api rest y la respuesta devuelva ejemplo 50.000 registros, conviene hacer una sola llamada y luego manejar la data desde el front end , hacer paginacion en el Backend y al hacer la llamada que nos diga cuantas páginas y registros tenemosbe ir haciendo una llamada por página o que otro método? Muchas gracias
Muchas gracias por el Video Carlos, una pregunta, las validaciones del cliente se hacen en el router directamente o en el controlador?
Yo diría que en el controlador. Es el encargado de recibir y enviar desde/hacia la vista (en este caso un JSON)
Holaa, muy buen video, gracias por la explicación 😃
Disculpa, cual es el theme que usas en el vscode? 😅
Gracias!! El theme se llama Lucy, aunque ya no está en el marketplace de VSCode
I need to thank you, really good video
Carlos que fuente usas esta muy clara y legible!!
Se llama Lilex. Es Open Source, la puedes encontrar en Github :)
15:05 a eso llamo yo argumentar 🤣
Una pregunta si quiero meter esas carpetas de back-end en angular como las puedo ingresar..Se puede agregar todas las carpetas en src en angular solamente o cual seria en si la buena practica?
Hola pregunta cuando retornas el.json se puede poner otro nombre que no sea data para retornar la data
El error que tiene en el minuto 46.34 es porque había un paréntesis extra y hacía que isAlreadyAdded no tenga el valor esperado:
const isAlreadyAdded = (lo que retorna del findIndex)
y la sintaxis correcta era:
const isAlreadyAdded = (lo que retorna del findIndex) > -1
o sea que al mismo tiempo que se hace el findIndex se hace la validación de si es mayor a -1 y eso se le asigna a la variable, no sé si me expliqué bien xd
¿Cómo o con qué se hace para colocar los iconos en el código que se esta escribiendo en VSCode? no encuentro ese plugin
Hola Carlos, me encanto tu video.
Como se llama ese theme de visual studio code?
Hola José! Se llama “Oh Lucy”
Que tal, cual es ese complemento que se autocompleta y ayuda?
Hola Carlos, cual es el tema de VSCode que estas usando en este video? Gracias.
“oh Lucy” mi favorito :)
@@CarlosAzaustre Gracias!
Que tipografia / font usas Carlos??
Hola Nicolás!
Se llama Lilex. La puedes encontrar aquí: github.com/mishamyrt/Lilex
Amigo, que extension usas para Autollenar tan rapido todo? gracias
Github Copilot y Tabnine :)
Saludos, tengo una pregunta, este tipo de estructura de carpeta, archivos, dependencias y demás tiene algún nombre como arquitectura? es decir, se puede definir esto como una arquitectura X para trabajar el backend con Node y Express?
De antemano, muchas gracias.
Arquitectura de 3 capas o Arquitectura de 3 niveles, lo dice al principio cuando esta explicando qué arquitectura va a utilizar xd
Que extencion usas para que salgan sugerencias de codigo?
Es GitHub Copilot. Es de pago pero, uf, merece mucho la pena
Como haces para que la terminal te de hints como el init del npm init?
Carlos una pregunta, como haces para colocar los iconos al escribir el codigo que se abre todo un panel de ellos?
En Mac se abre ese panel con Ctrl + CmD + space
Hola amigazo, estoy en una tragedia tamaño megalodonte, estoy configurando mi API rest pero no tengo respuesta del server en la terminal. Alguna buena alma q me ayuda??
Pueden ser muchas cosas… problemas de asincronía, que te falte algún módulo como bodyparser,….
hola, no tengo claro lo de los templates, como puedo hacer para conectar mi header y menu de html con otros documentos sin nesesidad de copiar el codigo en los otros documentos?. buen video gracias.
usa "ejs", es un motor de plantillas que te permite meter lógica de js en tu front, alli si que puedes incluir todas esas porciones de codigo que se repiten en cada hoja tales como: head, navbar, footer, scripts, etc. es muy facil de usar.
Quizás hubieras dedicado más en explicar que normalmente aun aplicando las n capas (ya ni hablando de 3) se puede seguir teniendo código espagueti y acoplado entre capas y seguir teniendo un mogollón de mas las practicas y que incluso lo unico por lo que estan ahi es para distribuir entre las capas el desorden, lo cual en lugar de encapsular lógica lo que hace es distribuir complejidad que es más difícil en ocasiones de seguir (dependiendo también de que tan grande sea el proyecto).
¿A qué me refiero con esto? Pues si honramos un poco aunque sea la intención por la que alguien se le ocurrió la arquitectura por capas rápidamente veremos donde se falla, incluso tú mismo tocaste el tema. Mi respuesta:
¿Para qué queremos una capa de servicio? ¿Qué queremos conseguir con ello? ¿Qué es un servicio en realidad? Con respecto al dominio de mi problema, ¿qué parte atacan los servicios? ¿Qué dependencia tiene mi capa de servicio de la capa de acceso a datos? ¿Cómo encapsulo mi servicio del exterior? Habría que refactorizar mi servicio por un cambio en mi capa de acceso a datos? ¿Estoy invirtiendo la dependencia? ¿Cómo de fácil es doblar las dependencias de esta capa? Aquí muchos fallan!
¿Para qué queremos una capa de acceso a datos? Dentro de qué límites se deben mover esta capa? ¿Qué dependencias tiene esta capa? Está acoplada a un ORM o librería? ¿Qué pasa si un nuevo cambio llega? Aquí muchos fallan! Hints: OCP DIP.
¿Para qué queremos una capa de presentación? ¿Qué misión debe cumplir? Debo refactorizar esta capa por un cambio en la última capa (acceso a datos)? ¿Cómo de fácil puedo testear esta capa? Y si mañana no es express.js sino otro? ¿Me dolerá o le dolerá la billetera a mi cliente?
Los patrones de diseño y principios de diseño de software en estos escenarios son casi muy intuitivos de aplicar, pero en realidad muchos aplican arquitecturas de capas solo porque todos los demás lo hacen sin detenerse a pensar la razón de ello.
Los principios muchas veces vienen de la reflexión y del análisis más que de la experiencia, puedo intuir un principio fácilmente con análisis continuo de mis diseños. Que por cierto antes se solía escuchar mucho el rol de "analista programador", porque será que ya casi no se ven las ofertas con ese título? ¡Curioso! xD
Una cosa: existen muchas opciones, unas con más complejidad pero que el precio lo vale, y otras que no tanto. Depende de tu análisis llevarás a tu equipo o proyecto por el camino correcto.
Algun tutorial para personalizar el prompt de la terminal como lo tienes?
Lo tengo pendiente, es Oh my Zsh con PowerLevel. A ver si saco tiempo y lo preparo :)
Buenn video, pero muy bajito el audio
como hace para que le previsualice el codigo que va a poner? que no sea copilot. Porque en mi VSC no lo hace y tampoco me agrega los () al final. Alguien me puede ayudar?
En mi anterior trabajo enviaban parametros por URL cuando hacian peticiones POST! XD
Echo de menos lidiar con los problemas de las promesas al hacer la querys a la db
Síndrome de Estocolmo 😂
La api no está habilitada para Cors y los navegadores la bloquean si uno hace una petición fetch hacia su url , como se puede solucionar eso?
vos lo estas diciendo, es cors, no podes cruzar datos entre distintos servidores, por medida de seguridad, almenos que lo permitas explicitamente
Pero parte de que sea con buenas practicas es que incluya typescript...
Que onda openAPI?
Hacés cosas que después borrás mil veces. Imposible seguirte el paso.
Ya lo siento…
El código está completo en este repositorio: github.com/carlosazaustre/crossfit-wod-api
@@CarlosAzaustre si, lo vi, gracias
esto no tienen nada de buenas practicas ni codigo actualizado bro
¿Alguna recomendación de alguien que tenga buenas practicas con código actualizado según tú?
@@jhondelahoz-mx3evyo diría que implementar middleware’s, errores custom, validate data, concurrencias, tamaño de data, cors, entre otros
Muy rapida la explicacion ... es dificil seguir el flujo
Puedes poner la reproducción a 0.75x o pausarlo cuando necesites
Me parece un tutorial bastante regular. No explicas con mucho detalle el error solo copias y pegas