Cuando necesitas un sistema que sea mantenible y escalable en el tiempo tener una arquitectura es de gran ayuda. Para mí lo más difícil fue entender la abstracción de la lógica de negocios y no tender a sobre abstraer. Saludos Héctor
Me tocó leer el código de un compañero de trabajo (yo como Junior y él como Senior) y juro que fue una experiencia traumática el ver tantas abstracciones para algo que podría ser mucho más simple.
Gracias a los frameworks fue que vi que había cierta estructura de carpetas que permitían o facilitaban muchas cosas entre módulos, inclusive conocía el MVC por laravel pero no sabía que era un arquitectura de software, de ahí tomé la costumbre de separar por responsabilidades los directorios en mis proyectos, ahora estoy estudiando a fondo arquitecturas de software y es una maravilla la cantidad de problemas que te ahorra aplicarlas en tus proyectos.
Yo utilizo el concepto "BackofBackend". Trabajo en BackEnd Django y claro, aparte de crear Endpoint se necesita más allá para crear software. Y ahora viendo tu video me he dado cuenta que estoy aplicando arquitectura de software.
Hola Hector!! . Buenos dìas desde Argentina , si tal cual como decis , primero conceptos bien firmes de POO, luego Principios SOLID y luego si puedes comprender MVC o DDD etc , yo de grande aprendí la secuencia y el orden de los conceptos recién en la Universidad donde si bien te dan un conocimiento global , tenes las herramientas que te ayudan a comprender mejor. Saludos
Saludos desde Colombia parcero, me gustan mucho sus videos realmente, le agradezco por todo el contenido academico que comparte... En cuanto a por que el gusto por los regaños: En mi opinión (puede que este bien o mal) no es tanto el "regaño" en si sino mas bien quien es el que regaña, que experiencia ha tenido y como hace el regaño... ¿Por que lo digo? Por que he vivido pésimas experiencias en donde nisiquiera supuestos profesores saben que es la Arquitectura de Software...
Un saludo Héctor. Sería muy interesando un video con Tips, Recomendaciones o Ejemplos de problemas y el patrón seleccionado para atender esta situación.
Este video es el que masme gusto de tu canal Pero creo que hay que matizar un poco, no es que a la gente no le interese aprender los fundamentos de POO. Desde mi experiencia, creo que el problema radica en que son muy pocas personas las que lo enseñan bien. Como tu mismo dijiste, todos sabemos como se usa una interfaz (que es un contrato el cual debe ser implmentado y bal bla) ese es el ejemplo que siempre dan, pero nunca te dicen para que sirven, en que casos se utulizan y en cuales es mejor no usarlas , tampoco dan ejemplos practicos y reaes donde se vea su utilidad. Pero bueno, son conceptos que uno aprende a medida que va haciendo cosas y creo que no esta mal no enterderlas al principio. En mi caso apenas ayer (sin exagerar) pude comenzar a entender el uso de la interfaz y fue cuando me pregunte: ¿Qué pasa si quiero que mi clase de servicios no interactue con la BD, sino que simplemente simule los datos para hacer pruebas? ¿Debería crear otra clase "servicio-pruebas" y asegurarme de que todos los metodos tengan exactamente la misma firma ademas de estar pendiente de cambiar la depencia a cada rato en el controlador? Pues resulta que no, para eso esta la chingada interfaz
Uy que bien, yo llevo un tiempo leyendo cosas de arquitectura y diseño de software, me gusta mucho, el problema es saber cuando se debe implementar una cosa o la otra.
Podrias hacer un ejemplo de estructura de microservicios con api gateway en nest y explicando como implementar discovery service para balanceadores de carga usando nginx? veo que hay muchos videos de teoria y diagramas de estos temas pero no como conectar o implementarlos
La arquitectura de software es una de las cosas más menospreciadas actualmente debido sobretodo al agilismo, kent Beck y martin fowler son agresivos con este concepto y la figura de arquitecto de software, por tanto, cada vez se desprecia más, tanto la disciplina de arquitectura de software como el rol de arquitecto dentro de una empresa. Sin embargo, demasiados proyectos se ven afectados por la falta de una arquitectura y, por tanto, se convierte en software rígido, frágil, viscoso...etc, y en lugar de prestar atención a la arquitectura se prefiere realizar interminables jornadas de refactorizacion. Por otro lado, la arquitectura de software es la organización estructurada de los paquetes/modulos/name space... De un proyecto y sus relaciones, bajo determinadas Abstracciónes, por lo regular siguiendo algún patrón arquitectonico como mvc, mvp etc, por tanto, cuando se hace es muy fácil navegar por todo el software y aislar errores, realizar cambios, y agregar nuevas funcionalidades. Aunque los framework te obligan a seguir un patron arquitectonico mv*, esto no significa que tienes arquitectura sino solo un patron que te da una estructura, aun falta determinar como mencione los paquetes, abstracciones y relaciones.
*La arquitectura de software es importante. Vital diría.* No solo ser programador y/o desarrollador se basa en frameworks, tools, visual scripting, gidiscripting y ya, hay que aprender la arquitectura, es por esta razón que las empresas ahora solicitan Título Universitario, dado a que muchos aplican sin conocimientos, no conocen absolutamente nada de Arquitectura de Software, pasó en Argentina con una mujer que la despidieron por falta de compresión frente a este tipo de analogías. Excelente vídeo.
dijera un maestro del tec... no todos somos ingenieros... tambien habemos muchos licenciados¡¡¡ con la IA y un monton de frameworks que con poco codigo hacen una app funcional... hace que los nuevos programadores siempre quieran eso.. (y no picar piedra) hacer el trabajo duro, trabajo dificil explorar o ver las opciones optimas... implementar arquitecturas¡¡¡ unas ballenas o minervas para don deleon por estos videos¡¡
Algo curioso que he notado en las nuevas generaciones de programadores es su odio injustificado hacia la programación orientada a objetos. Este odio se debe a que ignoran el porqué de conceptos básicos como clases abstractas, interfaces, polimorfismo y como usar herencia bien. Creen que la programación funcional es siempre superior, influenciados por youtubers y el fracaso de las clases en JavaScript y especialmente las class components en frameworks/libraries como ReactJS. Esto ha contribuido a un rechazo injusto hacia un paradigma que funciona bien especialmente en software extenso.
Este video es dedicado para todos esos eruditos de la programación que piensan que eres mal desarrollador por no saber cómo funciona un compilador internamente o porque usas librerías/paquetes/frameworks/arquitecturas, besos en el nudo para todos ellos 😘😘😘
Hola Héctor, me encanta tu canal y tus videos me han ayudado en muchas ocasiones. Mil gracias. Pero siento que este video es bastante confuso se mezcla arquitectura, con diseño, con POO, con un concepto concreto como componentes, interfaz... Me encanta tu trabajo
Mis Cursos de Programación: hdeleon.net/cursos-premium/
Mi Nuevo Libro: hdeleon.net/libro-aprender-a-programar-con-c-hector-de-leon/
System design interview es un libro que ayudo bastante a como generar los requerimientos y luego proponer una arquitectura
Nada como empezar jornada laboral y escuchar un video nuevo de Héctor 👍
Ya estoy cansado de este Tipo, cada vez que creo que ya soy un desarrollador, viene Hector con un video y arruina mi día.
Nada mejor que te motive que escuchar a hector hablando de arquitectura de software
Siempre andas con todo Héctor, oír tus videos refresca el día. 👌
Gracias Chayanne del C#, por fín entendí muchas cosas de Frameworks👍🏻👍🏻👍🏻🏆🏆🏆🏅🏅🏆
Nada como despertar a medio día en home office y recibir mi regaño diario de Hector de León
No dejan teletrabajar al prójimo
Cuando necesitas un sistema que sea mantenible y escalable en el tiempo tener una arquitectura es de gran ayuda. Para mí lo más difícil fue entender la abstracción de la lógica de negocios y no tender a sobre abstraer. Saludos Héctor
Me tocó leer el código de un compañero de trabajo (yo como Junior y él como Senior) y juro que fue una experiencia traumática el ver tantas abstracciones para algo que podría ser mucho más simple.
Gracias a los frameworks fue que vi que había cierta estructura de carpetas que permitían o facilitaban muchas cosas entre módulos, inclusive conocía el MVC por laravel pero no sabía que era un arquitectura de software, de ahí tomé la costumbre de separar por responsabilidades los directorios en mis proyectos, ahora estoy estudiando a fondo arquitecturas de software y es una maravilla la cantidad de problemas que te ahorra aplicarlas en tus proyectos.
Queremos mas de arquitectura de software si es posible en c#
Yo utilizo el concepto "BackofBackend". Trabajo en BackEnd Django y claro, aparte de crear Endpoint se necesita más allá para crear software. Y ahora viendo tu video me he dado cuenta que estoy aplicando arquitectura de software.
Siempre es valioso tu aporte querido Héctor
Excelente tus videos Héctor , siempre compartes ideas para mejorar. Se te agradece un “MONTÓN”. Saludos desde Panamá.
Hola Hector!! . Buenos dìas desde Argentina , si tal cual como decis , primero conceptos bien firmes de POO, luego Principios SOLID y luego si puedes comprender MVC o DDD etc , yo de grande aprendí la secuencia y el orden de los conceptos
recién en la Universidad donde si bien te dan un conocimiento global , tenes las herramientas que te ayudan a comprender mejor. Saludos
Este es un tema que siempre me ha costado
Tambien las interfaces nos facilitan la inversion de dependencia
¡Muy valioso tu contenido amigo Héctor, saludos!
Gracias Hector!
Más videos de como elegir una Arquitectura, saludos H
Saludos desde Colombia parcero, me gustan mucho sus videos realmente, le agradezco por todo el contenido academico que comparte... En cuanto a por que el gusto por los regaños: En mi opinión (puede que este bien o mal) no es tanto el "regaño" en si sino mas bien quien es el que regaña, que experiencia ha tenido y como hace el regaño... ¿Por que lo digo? Por que he vivido pésimas experiencias en donde nisiquiera supuestos profesores saben que es la Arquitectura de Software...
La Arquitectura de Software debería proporcionarte la pauta del recurso económico (Infraestructura) y habilidades técnicas del recurso humano.
Un saludo Héctor. Sería muy interesando un video con Tips, Recomendaciones o Ejemplos de problemas y el patrón seleccionado para atender esta situación.
A veces nos nublamos mucho a la hora de elegir un patrón, entonces ver otros casos de referencia puede ayudar mucho
Este video es el que masme gusto de tu canal
Pero creo que hay que matizar un poco, no es que a la gente no le interese aprender los fundamentos de POO.
Desde mi experiencia, creo que el problema radica en que son muy pocas personas las que lo enseñan bien.
Como tu mismo dijiste, todos sabemos como se usa una interfaz (que es un contrato el cual debe ser implmentado y bal bla) ese es el ejemplo que siempre dan, pero
nunca te dicen para que sirven, en que casos se utulizan y en cuales es mejor no usarlas , tampoco dan ejemplos practicos y reaes donde se vea su utilidad.
Pero bueno, son conceptos que uno aprende a medida que va haciendo cosas y creo que no esta mal no enterderlas al principio.
En mi caso apenas ayer (sin exagerar) pude comenzar a entender el uso de la interfaz y fue cuando me pregunte:
¿Qué pasa si quiero que mi clase de servicios no interactue con la BD, sino que simplemente simule los datos para hacer pruebas?
¿Debería crear otra clase "servicio-pruebas" y asegurarme de que todos los metodos tengan exactamente la misma firma ademas de estar pendiente de cambiar la depencia a cada rato en el controlador?
Pues resulta que no, para eso esta la chingada interfaz
Uy que bien, yo llevo un tiempo leyendo cosas de arquitectura y diseño de software, me gusta mucho, el problema es saber cuando se debe implementar una cosa o la otra.
Encantadooo, arquitectura es lo que me falta. A darle!!
Qué libros recomiendan par aprender Arquitectura y diseño de software ?
Que buen video! estoy aprendiendo Java y esto ayuda mucho
Excelente, ese punto es crucial cuando se inicia, usualmente te enseñan de una vez los fundamentos sin decir para que y por que. Buen video
Que buen video amigo, que Dios te bendiga
Podrias hacer un ejemplo de estructura de microservicios con api gateway en nest y explicando como implementar discovery service para balanceadores de carga usando nginx?
veo que hay muchos videos de teoria y diagramas de estos temas pero no como conectar o implementarlos
Excelente❤
Para cuando el curso de arquitectura bro?
buen video Hector
La arquitectura de software es una de las cosas más menospreciadas actualmente debido sobretodo al agilismo, kent Beck y martin fowler son agresivos con este concepto y la figura de arquitecto de software, por tanto, cada vez se desprecia más, tanto la disciplina de arquitectura de software como el rol de arquitecto dentro de una empresa. Sin embargo, demasiados proyectos se ven afectados por la falta de una arquitectura y, por tanto, se convierte en software rígido, frágil, viscoso...etc, y en lugar de prestar atención a la arquitectura se prefiere realizar interminables jornadas de refactorizacion.
Por otro lado, la arquitectura de software es la organización estructurada de los paquetes/modulos/name space... De un proyecto y sus relaciones, bajo determinadas Abstracciónes, por lo regular siguiendo algún patrón arquitectonico como mvc, mvp etc, por tanto, cuando se hace es muy fácil navegar por todo el software y aislar errores, realizar cambios, y agregar nuevas funcionalidades.
Aunque los framework te obligan a seguir un patron arquitectonico mv*, esto no significa que tienes arquitectura sino solo un patron que te da una estructura, aun falta determinar como mencione los paquetes, abstracciones y relaciones.
Bien dicho!!
*La arquitectura de software es importante. Vital diría.* No solo ser programador y/o desarrollador se basa en frameworks, tools, visual scripting, gidiscripting y ya, hay que aprender la arquitectura, es por esta razón que las empresas ahora solicitan Título Universitario, dado a que muchos aplican sin conocimientos, no conocen absolutamente nada de Arquitectura de Software, pasó en Argentina con una mujer que la despidieron por falta de compresión frente a este tipo de analogías. Excelente vídeo.
Buen video hector.
hola hector, algún curso de arquitectura hexagonal para backend si utilizo php ó node ?...saludos
Excelente..por ahi es la cosa..la abstraccion
Saludos hector🤟🏼
¿ Porque armo bien los programas en clase en mi casa pero siempre fallo en los parciales ?
Libros para empezar aprender arquitectura de software?
dijera un maestro del tec... no todos somos ingenieros... tambien habemos muchos licenciados¡¡¡ con la IA y un monton de frameworks que con poco codigo hacen una app funcional... hace que los nuevos programadores siempre quieran eso.. (y no picar piedra) hacer el trabajo duro, trabajo dificil explorar o ver las opciones optimas... implementar arquitecturas¡¡¡ unas ballenas o minervas para don deleon por estos videos¡¡
Algo curioso que he notado en las nuevas generaciones de programadores es su odio injustificado hacia la programación orientada a objetos. Este odio se debe a que ignoran el porqué de conceptos básicos como clases abstractas, interfaces, polimorfismo y como usar herencia bien. Creen que la programación funcional es siempre superior, influenciados por youtubers y el fracaso de las clases en JavaScript y especialmente las class components en frameworks/libraries como ReactJS. Esto ha contribuido a un rechazo injusto hacia un paradigma que funciona bien especialmente en software extenso.
Me excitan los regaños jaja saludos Héctor más contenido de arquitectura
Este video es dedicado para todos esos eruditos de la programación que piensan que eres mal desarrollador por no saber cómo funciona un compilador internamente o porque usas librerías/paquetes/frameworks/arquitecturas, besos en el nudo para todos ellos 😘😘😘
Cada día mas sabio y mas gordo. Gracias por todo ❤
Que tipo de arquitectura lleva maven?
Definitivamente hay que aprender arquitectura, dejen de chatgptear...
jaja "java con scripts", y los "cursos que no sirven para nada" las frases ganadoras de hoy
no hay nada mejor que te regañen y te peguen XD, saludos!
Arquitectura de que?
Hay que regañar a los que desprecian la arquitectura de software, pero al resto también!!! Ningún día sin regañina. 🎉🎉🎉
Me recuerda
Dross con luna de Plutón...
Hola Héctor, me encanta tu canal y tus videos me han ayudado en muchas ocasiones. Mil gracias. Pero siento que este video es bastante confuso se mezcla arquitectura, con diseño, con POO, con un concepto concreto como componentes, interfaz... Me encanta tu trabajo
Todo es parte de lo mismo, no existiria uno sin el otro.
Jajaja, ya quítame tus cookies personales!!
Siempre sacas un video justo de algo que ando viendo o investigando jaja.
Un saludo.
Los regaños son buenos siempre y cuando te formen como una mejor persona/programador :D
por que no quiere h de leon ser mi mentor ? por que no se de java
Hay una diferencia de contenido entre tus cursos gratuitos y de pago?
Los de pago duran varias horas
Para favorecer el algoritmo
Hablas mal de Javascript y me acuerdo de midu
Epale Hector
Pensó que java era java con script jajajaja.
No entendi nada, una lastima
AJAJAJAJAJAJA JAVA con Scripts
necesito hacer un meme de eso
Bro te presto a mi novia
Que hacemos en el cementerio? 💀
que asco
viva la 4T!