¿Qué marco sería mejor para construir una aplicación web empresarial?

Quiero usar marcos front-end basados ​​en JS. Si es así, ¿puedo usar Java como lenguaje de programación de fondo? ¿Cómo encaja Java en el desarrollo de Full stack? Por lo general, Python o PHP se utilizan como lenguaje del lado del servidor.

Puede usar prácticamente cualquier front-end con prácticamente cualquier back-end. Algunos son más fáciles que otros.

Hay mucho que puedes hacer con Java, pero parece que en este caso querrías usarlo en el back-end, y sí, probablemente lo estarías usando en lugar de donde Python / PHP se usa generalmente en este contexto. .

Creo que el valor de Java en este contexto (como ha especificado la empresa) puede depender más de la máquina / servidor en el que lo está ejecutando, cualquier sistema grande que necesite vincular (que a menudo es mucho más fácil o básicamente solo accesible a través de Java), y la estabilidad del lenguaje / biblioteca (que algunas tecnologías más nuevas como Node encuentran difícil de igualar).

Por lo que dices, parece que tu pila probablemente se vería así, para que puedas entender cómo se juntan las piezas (explicado a continuación):

Básicamente, en el frente, tienes un servidor que sirve HTML que está conectado a un marco CSS / JS como Angular o incluso solo un poco de jQuery y un trabajo CSS decente.

Luego, su front end pide cosas del back end en formato JSON, y el back tiene estos puntos finales configurados para que el front pueda hacer un HTTP POST. Luego solo sirve las cosas que quiere.

Esto también podría ser (y con frecuencia es en situaciones empresariales) datos o ejecutar comandos en una infraestructura más grande (por lo que todo esto básicamente se convierte en un contenedor web para esa infraestructura), o podría aprovechar un DB que Java está configurado para manejar.

Al menos eso es lo que parece lo que estás buscando.

Java encaja perfectamente y se usa principalmente para esa puprose. Hay varios marcos que pueden ayudar enormemente. El más famoso es Spring Framework [1], pero recomendaría probar CUBA Platform [2], que es un marco de código abierto de fullstack, donde puede crear fácilmente backend: defina visualmente el modelo de relación de entidad, administre automáticamente las tablas db , interfaz de usuario administrativa de andamio, use REST listo para usar para comunicarse con su interfaz personalizada. Además, eche un vistazo a la parte de la interfaz de usuario, es posible que ni siquiera necesite usar ningún marco JS y los componentes visuales de CUBA cubren sus requisitos. Aquí se publican algunos de ellos y la forma de usarlos.

Notas al pie

[1] spring.io

[2] Marco web Java para el desarrollo rápido de aplicaciones

Cuándo podría administrar con JavaScript y sus marcos.

Sugeriría MEAN / MHAN Stack.

  • Mongo DB
  • Express.js / Hapi.js
  • Angular.js
  • Node.js

Mongo DB

Base de datos NoSQL que toma cada documento en formato BSON. BSON significa Binary JSON y JSON significa JavaScript Object Notation.

Express.js

Express.js es un marco para crear servidores web y puntos finales HTTP. De nuevo, funciona con JavaScript y está escrito encima de Node.js

Hapi.js

Hapi.js es similar a Express.js pero tiene la capacidad de hacer más que Express. Podría ser una buena opción y obtener el visto bueno que Express.

Angular.js

Marco frontal y es muy fácil de construir cuando conoce las plantillas HTML. Esto tiene la capacidad de configurar MVC y se prefiere principalmente cuando desea crear una aplicación de página única.

Node.js

Lenguaje de script del lado del servidor. Un mejor reemplazo para PHP. Dado que escribe aquí su propio servidor (en lugar de servidores web previamente escritos como Apache), es mucho más liviano y bastante rápido.

Por lo general, los desarrolladores de pila MEAN / MHAN tienen un alto precio, al igual que los servidores.

Por lo tanto, la segunda opción podría ser usar,

Apache – para servidor

PHP : para secuencias de comandos del servidor

Angular.js : para el extremo frontal

MySQL : para fines de base de datos.

Esto requerirá un servidor de alojamiento Linux compartido normal que sea asequible para cualquiera.

Espero que esto ayude. Gracias.

Java encaja muy bien. Estamos utilizando Java 8 con frameworks de primavera como backend.

Spring frameworks es impresionante, de verdad. Para declarar un punto final REST, solo tiene que anotar un método como ese:

@RequestMapping (value = “/ api / coincide”, método = RequestMethod.GET, produce = MediaType.APPLICATION_JSON_VALUE)

Si el método devuelve un objeto (o una lista de objetos), se serializará automáticamente a json usando jackson.

Spring Rest se encargará de los puntos finales, la seguridad de Spring la autenticación, los datos de Spring asignarán sus objetos a la base de datos …

Hola.

Por experiencia, recomendaría TypeScript. con React para el front-end.

¿Por qué TypeScript ? Bien :

  • Está altamente tipado, lo que ayuda MUCHO al depurar aplicaciones grandes.
  • Transpile a ES3, Es5 y ES6!
  • Simplemente puede escribir Javascript plano y “escribirlo” como desee (ideal para principiantes).
  • La integración de React es genial.

En cuanto al lado del servidor, ¡puede usar TypeScript totalmente en NodeJS! Express es un marco realmente bueno para API (que es básicamente lo que necesita para un SPA). Pero cualquier cosa que pueda recibir y enviar JSON a través de HTTP debería hacer el trabajo.

Como no hay menciones sobre ninguna base de datos en la pregunta, propondré algunas opciones con NodeJS:

  • Mongoose (MongoDB): Realmente podría recompensar tomar su tiempo para construir una capa de datos sólida. Nunca usé mangosta en el pensamiento de producción.
  • mssql (SQL Server): he usado SQL Server en producción, y todos los controladores de SQL Server realmente funcionan muy bien.
  • node-postgres (PostgresSQL): nunca se usó personalmente, pero si desea usar (o ya está usando) un RDBMS de código abierto, ¡PosgresSQL es el camino a seguir!

Eso es todo. Diviértete codificando!

Si está creando una aplicación web empresarial, primero debe evaluar sus requisitos.

No hay acoplamiento con el extremo frontal y el lado del servidor. Están bastante desacoplados. Puede usar Javasctipt en FE y JS en el lado del servidor. O Java / PHP en el lado del servidor. No mezcles estos dos.

¿Piensa qué necesita que haga su servidor? ¿Es IO pesado o CPU pesado? Suponiendo que usted es nuevo en el desarrollo web (también lo soy yo), un NodeJS para su servidor facilitaría mucho las cosas.

Una vez que elija su lado del servidor, debe pensar en su back-end. La base de datos. ¿Necesita uno basado en SQL? ¿O puedes usar algo basado en un objeto como Mongo?

Si está comenzando, Angular / React para frontend, Node para servidor y Mongo para backend le permitirán ponerse al día muy rápido.

Básicamente, primero debe decidir si necesita una pila LAMP o una pila MEAN.

Hola,

IDE:

Puede usar webstorm (producto increíble de jetbrains) para js (incluido JavaScript del lado del servidor).

Para el backend, puede usar el nodo js, ​​luego webstorm es suficiente para manejar ambos. Si no está familiarizado con él, vaya con intellij (de jetbrains nuevamente)

Llegando a la respuesta:

Sí, Java se puede utilizar en el desarrollo completo de la pila. En mi proyecto, usando react js como tecnología front-end y Java como middleware y Oracle como backend. Hacemos una llamada Ajax para descansar servicios expuestos en Java.

JavaScript, API y marcado

More Interesting

¿Cuáles son algunos de los problemas de la vida real que enfrenta alguien ahora que se pueden resolver desarrollando una aplicación web / sitio web?

Cómo crear un inicio de sesión con Facebook o Gmail para mi aplicación web usando ASP.Net MVC 5

¿Cuáles son las ventajas y desventajas entre cobrar a los usuarios de forma continua y el pago único a tanto alzado para una cuenta premium bajo un modelo freemium?

¿Qué aplicaciones web tienen un programa integrado de afiliación / recarga en la aplicación?

¿Cuáles son algunas herramientas (aplicaciones, software, web) que siempre pueden motivarnos?

Si tuviera que comenzar desde cero, ¿usaría Ruby on Rails o Laravel para una aplicación web?

¿Cómo puedo aprender J2EE paso a paso con JDBC?

Cómo integrar BigBlueButton en mi aplicación de rieles

¿Por qué es tan difícil unificar el desarrollo web?

Al desarrollar una aplicación, ¿es una mala forma o es ampliamente aceptada e incluso alentada a emular las características de la interfaz de usuario de otras aplicaciones exitosas?

¿Qué aplicaciones web realmente podrían mejorar su sección de preguntas frecuentes / ayuda?

¿Cuáles son algunas metodologías de diseño empleadas antes de comenzar la codificación en una aplicación web?

¿Cuál es la necesidad de Spring MVC a pesar de que tenemos Spring Core para desarrollar aplicaciones web?

¿Existe un navegador web que le permita iniciar y guardar sesiones separadas personalizadas?

¿Cuál es la mejor aplicación de procesamiento de texto para documentos que contienen muchas imágenes y formato pesado?