Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

293
Vistas
Capas de servicio y controlador, lógica de negocios y estructura de proyecto con Node.js

Vengo de una década de experiencia con Java EE, SE y Java con Spring. Si hay algo que me inculcaron otros desarrolladores y yo mismo, fue cómo hacer uso de patrones de diseño, separación de responsabilidades, separación de definición de implementación, segregación de interfaz, etc. Además, siempre nos preocupamos por el código comprobable (pruebas unitarias). y pruebas de integración).

Cuando estaba aprendiendo Java, no había un solo libro, revista o sitio web que no implementara cosas con esas reglas en mente, hasta el punto del aburrimiento. Por lo tanto, siempre sabemos cómo se deben hacer las cosas desde un punto de vista arquitectónico al comenzar cosas nuevas o mantener el código. Con el tiempo, proyectos como Spring Boot y JBoss Seams comenzaron a brindarle un diseño de proyecto básico listo para usar que simplemente siguió hasta el éxito (o al menos debería hacerlo...).

Ahora que profundizo en Node.js, lo extraño mucho. Parece que solo hay un puñado (¡y lo digo en serio! Búscalo en Google y verás...) de personas en la web preocupadas por eso y tratando de enseñar a los recién llegados cómo escribir un buen código de back-end con Node.js.

La gran mayoría de las personas le enseñan cómo iniciar express y poner todo su código (base de datos, registro, correo, manejo de errores, etc.) dentro de una ruta express y salen bien, como si hubieran hecho un gran servicio. a la humanidad, y supuestamente ya eres capaz de salir y encontrar un trabajo bien remunerado por ti mismo.

Por supuesto, cuando comencé a aprender Java, no había nada que te impidiera usar Servlets directamente con algún código JDBC incluido, o peor aún, Scriptlet dentro de JSP... Pero si hacías eso, eso significaba que eras tonto, tonto. , no apto para tareas serias, o sufrió algún tipo de daño cerebral. Los chicos geniales no querrían ser vistos en tu compañía, y almorzarías solo en la cantina todos los días, en una mesa reservada solo para ti.

Así que aquí estoy, preguntando por favor, ¿pueden indicarme la dirección correcta? O al menos, lejos de los equivocados. Apreciaría mucho saber cómo ustedes, por ejemplo, implementan una capa de servicio, ¿dónde colocan su lógica comercial? ese tipo de cosas... ¿Lo pones en clases o funciones que devuelven otras funciones? Cómo escribir código fácilmente comprobable por Mocha, por ejemplo... ¿Realmente necesito una capa de controlador o puedo confiar en mis rutas para cubrir esa responsabilidad? Estoy totalmente perdido en eso. Por supuesto, he encontrado algunas soluciones propias (algunas incluso tontas...), pero quiero saber de los profesionales, de las personas que lucharon, de los veteranos.

Estoy interesado en JavaScript solo en el backend, usando Express.js, Socket.io, RabbitMQ, Passport.js y GraphQL (en el futuro). No me interesa ningún motor de renderizado ni motores de plantillas, y mucho menos JavaScript en el navegador. Ya soy muy hábil con Sequelizer y Mongoose.

Muchísimas gracias chicos y chicas y perdón por mi frustración, espero que entiendan, y tal vez incluso puedan relacionarse.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Conozco la sensación de cambiar de Java Spring Boot a la pila de Node.js. También fue confuso para mí al principio, pero con el tiempo encuentras el conjunto de marcos que te gusta.

Probablemente no esté lo suficientemente calificado para responder a su pregunta completa, pero puedo darle algunos consejos sobre qué marco me ayudó más después de comenzar con Node.js.

Para mí, este marco es NestJS . Es un marco progresivo de Node.js para crear aplicaciones escalables del lado del servidor, basado en Express.js. Admite muchos patrones de diseño diferentes, pero yo personalmente uso un patrón que consta de controladores, servicios, repositorios y proveedores. Puede usar varias bases de datos diferentes, obviamente.

Nest.js se destaca para mí, porque no necesita ningún tutorial o documentación de terceros, porque su propia documentación está muy bien hecha y tiene básicamente toda la información que necesitará. Es realmente ampliable con dependencias adicionales (la mayoría de ellas están desarrolladas internamente y también tienen una excelente documentación).

Lo que también debe mencionarse es que, como desarrollador de Java, probablemente se perderá la programación orientada a objetos si cambia a JavaScript. En Nest.js, solo desarrollas con TypeScript y, en general, te da una sensación muy similar a Java Spring Boot.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda