Creo que el tema está en volver microservicios, aquellos puntos que son transversales entre proyectos. Por ejemplo, si quieres un sistema de login de usuarios único y centralizado. En vez de convertir todo tu proyecto en microservicios, pueden crear un monolito distribuido para las funcionalidades generales y que el backend se encargue de la suscripción de eventos al microservicio de autenticación. En vez de convertir todo a microservicio, identificar los puntos críticos que podrían ser utiles al desacoplarlos.
Antonio muchas gracias por compartir tus experiencias, sin ninguna línea de código. Honestamente creo que con la emergencia de los asistentes de programación IA gran parte del valor de los programadores se va a desplazar a precisamente prestar mucha más atención a estos aspectos técnicos pero no sobre la codificacion en si misma. Dicho lo cual, si nos pudieses compartir los puntos clave sobre cómo pasar desde estos prerrequisitos (correctamente tomados) a la toma de decisión de la arquitectura a implementar sería de muchísimo valor. Muchas veces no se tiene una idea clara de lo que significan términos que son relativos como pequeño/grande o mucho/poco respecto por ejemplo a número de usuarios de la aplicación, o más en términos de codificación por ejemplo el número de tablas, clases, componentes,etc involucrados en el proyecto. Espero que se me entienda, muchas gracias y enhorabuena por tu trabajo de divulgación.
Antonio excelente video….Ojo con los monolitos modulares, porque los módulos deberían estar desacoplados, hasta de cómo enviamos los eventos ….podemos empresar con eventos de JS y puede que cuando comenzamos a sacar los microservicios estemos usando un SQS o Pub/Sub etc, así luego es solo crear un cascarón de proyecto y tirar el code de microservicio con los adaptadores correspondiente etc etc….. Pero los monolitos modulares no es solo tener separado modularmente las carpetas, si luego en 7 u 8 módulos tenemos un espaguetis de uno q usa otro ya luego será un dolor terrible migrarnos a microservicios… ojo hay que saber hacer monolitos modulares …. Que Ojooo en mi experiencia los algunos de los Arquitectos Cloud de hoy en día resuelven todo con lo que aprendieron en su curso de Cloud ** A caballo y con los micromonolitos súper acoplados en la mano ** 😅…..Los verdaderos Arquitectos de Software están en extinción … Las empresas simplemente contratan lo que está de moda…😅
yo personalmente para proyectos intermedios me gusta usar la arquitectura orientada a servicios con un api gateway intermedio y un frontend monolítico, de esta forma te permite paralelizar más fácilmente el desarrollo del back
Gracias! Si, la iluminación estoy intentando ajustarla, me trae de cabeza si te digo la verdad, tengo que seguir trabajando en esos detalles, un saludo!
depende, MVC es una manera de organizar tu codigo en 3 capas, puedes tener un monolito MVC o un conjunto de microservicios MVC. piensa que cada sigla representa una capa de tu aplicación, M significa modelo y aquí defines todo lo que viene siendo reglas de negocio, V significa vista en el backend lo puedes ver como toda la información que envias o recibes dtos de entrada y salida del app como peticiones y respuestas. y C es el controlador que se encarga de manejar esas peticiones que vienen en la vista y organiza el modelo para darte la respuesta que esperas
@@cmvargas ahí lo que haces es separar segun ciertos criterios, aunque si, puede serlo sin problemas, al menos a mi entender, mientras mantengas un classpath que te lo encuentre el programa lo puedes hacer, por ejemplo en spring si tu application se encuentra bajo el classpath x.y.z si tu modulo tiene el classpath x.y.z.modulo1 te va a encontrar automaticamente los beans declarados, pero cuidado que puedes llegar a tener problemas con eso. Igualmente si no tienes de todo claro esto, centrate en las bases de lo que es la arquitectura MVC, MVVM, MVP, la arquitecutura limpia y por ultimo domain driven design.
@@cmvargasDeja de usar MVC es una arquitectura muy simple que en el mundo real no se suele usar, aprende la arquitectura hexagonal, que es la mas usada del mundo.