La verdad no soy de comentar vídeos de YT, pero los tuyos son de una calidad y un contenido excelente. Muchas gracias por compartir tu conocimiento. Me uno a los que dicen que deberías crear cursos en Udemy o en alguna plataforma de esas. Realmente quede impresionado con la calidad de tus contenidos, he hecho cursos de pago pero no se asemejan al nivel ni si quiera de este único vídeo.
Gracias. Pude asimilar muchos conceptos que leí en libros de ingeniería de software. Esto seria como un resumen y un ejemplo práctico. Saludos desde Argentina.
INDICE 00:00 Introducción 00:47 Responsabilidades de capas (Presentación/Negocio/Datos/Transversal) 08:42 Capa transversal de entidades 10:20 Guía rápida/Capas para sistemas complejos 14:40 Tipos de estratificación(dependencias) 16:40 Un poco de historia 19:02 Modelos comunes de la arquitectura en capas 24:05 Metodología - DDD 26:48 Arquitectura tradicional en capas 27:07 Capas/ infringe el Principio de Inversión de Dependencia(DIP) 29:04 Evoluciones 32:13 Arquitectura moderna en capas 34:41 Sumario 35:25 Ejemplo- Capas flexible/DDD/DIP
Excelente... gracias. procura continuar con este tema.. de arquitecturas, buenas practicas, los mejores videos que he visto ya que conbina la teoria bien referenciada con la practica, incluyendo buenas practicas como el nombramiento de variables, metodos y clases, entre otras cosas.. en fin.. creo que todo es cuestion de tiempo y practica para llegar un nivel de entendimiento de esa manera. gracias.
Muy, pero muy buen contenido, sin embargo a ratos cuesta entender debido a la falta de expresividad del Loquendo. Estoy de acuerdo en que quedaría mucho mejor si los explicaras tu mismo. Gracias por el aporte y Felicidades.
Good evening and greetings from Greece. Your lessons are wonderful and very understandable. I would like to ask you when you will add to Chapter 5 the methods (combobox and inner join for many tables) like tutorial (CRUD P1). Thanks in advance. Buenas tardes y saludos desde Grecia. Tus lecciones son maravillosas y muy comprensibles. Me gustaría preguntarle cuándo agregará al Capítulo 5 los métodos (combobox and inner join - y combinación interna para muchas tablas) como tutorial (CRUD P1). Gracias por adelantado.
Quizás.. Cada vez salen más y más tecnologías por lo que los sistemas estarán desactualizados, quizás llegue a algún punto en el cual el sistema se deba migrar a una tecnología más actualizada. Mi opinión
Excelente tutorial...tengo una duda, cual sería la diferencia entre el uso de DTO y ViewModel? DTO lo usarias por ejemplo si trabajas con WCF y allí irían los DataContracts?
Bueno aquí el tema se pone un poco más denso. Se aprende mucho. Una humilde opinión, como usas Loquendo pensé que el contenido que subes no era serio. Por esta razón esquive tus series un tiempo. Luego, me decidí darle una oportunidad a la serie porque youtube me lo sugirió varias veces debido a que estaba estudiando la arquitectura de tres capas. Me dí cuenta que el contenido es muy bueno en verdad.
Hay temas de esas 4 capas referente a la factura y Reportes ? Me sería de gran ayudo amigo , ante todo aparte del like gracias por dar tu conocimento y tú arte al diseño de la programación
Si se trabaja con una arquitectura en capas, el principal objetivo es separar responsabilidades, para el caso de reportes: La capa de datos se encarga de la comunicación con la base de datos, por lo tanto se encarga de ejecutar el procedimiento almacenado o transact sql para obtener los datos del reporte, este retorna los datos, y se le envía a la capa de negocio, donde carga el objeto entidad factura(por ejemplo), se aplica la lógica de negocio si es necesario(como cálculos). En capa de presentación: el diseñador de reportes (rdlc) obtiene los datos del objeto de negocio(entidad factura) y reporte viewer se encarga de mostrar el rdlc. De esa manera se cumple los principios de capas(la separación de responsabilidades).
Saludos. Tus vídeos son de alta calidad en cuanto a edición y sobre todo en contenido, pero el hecho de que uses Loquendo es un poco molesto. Me gustaría que en los vídeos hablaras tu mismo. Éxito.
Opino igual, muy pero muy bueno el contenido, pero a ratos cuesta entender debido a la falta de expresividad del Loquendo. Estoy de acuerdo en que quedaría mucho mejor si los explicaras tu mismo.
GRacias por tu video, en que casos podriamos pensar que la capa ENTIDADES no es buena o no ayuda o mas aun, retrasa el trabajo??? no entiendo esa parte.
En si agiliza el trabajo, ya que los atributos de la entidad se declaran una sola vez y es posible utilizar desde cualquier capa, por lo tanto tampoco es necesario estar convirtiendo y pasando los datos en listas de objetos para las capa superiores e inferiores, la lista de objetos o un solo objeto se crea una vez para todos. Sin embargo, es visto como mala practica y viola algunos principios, tambien sería como un antipatron de modelo dominio (modelo anímico) , pero Funciona super bien para aplicaciones pequeñas y con poca lógica de negocio, por ejemplo un minimarket, tendrá un buen rendimiento. No es recomendable para aplicaciones de gran tamaño, complejo o contiene muchas lógica de negocio. Si tratas de usar la capa entidades en un sistema como ese, el mantenimiento se ve afectado o será inmantenible, de acuerdo a las circunstancias.
hola @@RJCodeAdvance muchas gracias por tus videos. Pregunta: En el ultimo ejemplo, cuando ya empiezas a codificar, siendo yo alguien que recien empieza con estos temas, sin experiencia, veo que las entidades estan en el dominio y las usará la capa de infraestructura y la capa de aplicacion; volviendo al principio, al tema de hacer una capa entidades, no se veria afectado el mantenimiento tambien en éste?
@@davidlopez8251 De echo no, ya que en la capa de presentación se crea los *modelos de vista* (Clases con las propiedades necesarias para mostrar en el cristal), asi que es muy fluido y flexible para cualquier cambio. El inconveniente de utilizar la capa de entidades es que limita muchas cosas, principalmente para mostrar los datos en la pantalla(Datagridview), muchas veces solamente es necesario mostrar 5 datos de 10, o en muchas ocaciones es necesario agregar otras propiedades. Aquí es donde las cosas se enredan y limita muchas cosas, y terminamos mostrando datos no necesarios en la pantalla, ocultando columnas, creando datatables, operaciones listas temporales con linq, dejamos los principios la programación orientada a objetos, no respetamos las responsabilidades de las capas, etc. Normalmente en un proyecto complejo, cada capa debería tiene su propia modelo entidad, es decir: Capa de Acceso a datos -> Entidad de acceso a datos (//atributos) Capa de Dominio o Negocio -> Modelo de dominio o entidad de dominio (//atributos) Capa de Presentación ->Modelo de Vista o entidad de vista (//atributos) Así que muchas cosas dependen de otras, no siempre usaras un único modelo. El modelo de la arquitectura mostrado de este vídeo es algo *básico* para aplicaciones complejas con mucha lógica de negocio. Una entidad puede tener muchas clases, así que también están agrupados en carpetas, entonces algunas cosas de la estructura cambiaran según lo necesario. bueno es un tema muy largo. 😅😅 Saludos
Me aparece un error cuando trato de retornar el viewModel, en la clase ClientController. El error es este = "No se puede convertir implicitamente el tipo "System.collections.generic.List en "System.collections.Generic.IEnumerable
Hola, no compartir el proyecto de este vídeo, quise subirlo hace unos, pero no encontré el proyecto. Los nombres de los libros están en el articulo que se comparte en el enlace en la descripción del vídeo.