Foros del Web » Programación para mayores de 30 ;) » Java »

¿Qué me recomiendan?

Estas en el tema de ¿Qué me recomiendan? en el foro de Java en Foros del Web. Tengo que diseñar un sistema, usando Java como lenguaje de programación. Estoy pensando usar estas dos herramientas maven e hibernate. ¿Me recomiendan usar estas dos ...
  #1 (permalink)  
Antiguo 30/05/2017, 10:55
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Pregunta ¿Qué me recomiendan?

Tengo que diseñar un sistema, usando Java como lenguaje de programación.
Estoy pensando usar estas dos herramientas maven e hibernate.
¿Me recomiendan usar estas dos herramientas? teniendo en cuenta que no manejo muy bien las dos herramientas.
  #2 (permalink)  
Antiguo 30/05/2017, 14:57
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por manu205 Ver Mensaje
Tengo que diseñar un sistema, usando Java como lenguaje de programación.
Estoy pensando usar estas dos herramientas maven e hibernate.
¿Me recomiendan usar estas dos herramientas? teniendo en cuenta que no manejo muy bien las dos herramientas.
Alternativamente podes olvidarte de java y usar cualquier lenguaje moderno, lo cual significaría obtener el mismo resultado con menos de la mitad del código y el esfuerzo.

Hibernate en particular es ridículo y arcaico comparado con los ORMs modernos como NHibernate o Entity Framework.

Última edición por agleiva; 30/05/2017 a las 15:05
  #3 (permalink)  
Antiguo 30/05/2017, 15:41
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por agleiva Ver Mensaje
Alternativamente podes olvidarte de java
Me llevaria mucho tiempo aprender otro lenguaje, creo que dispongo unos 4 meses para entregar un mini sistema funcionando.
En realidad es un trabajo para la facultad y como que se nos dio la oportunidad de elegir las herramientas a utilizar, estaba pensando utilizar esas dos herramientas.
Maven por lo que leí, es muy bueno como gestor de proyectos entre otras cosas.
Con el uso de hibernate lo que tengo mis dudas, como que nunca lo use, no se si vadra la pena gastar mi tiempo aprender este framework, al menos para este pequeño proyecto.
  #4 (permalink)  
Antiguo 30/05/2017, 18:09
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por manu205 Ver Mensaje
Me llevaria mucho tiempo aprender otro lenguaje, creo que dispongo unos 4 meses para entregar un mini sistema funcionando.
En realidad es un trabajo para la facultad y como que se nos dio la oportunidad de elegir las herramientas a utilizar, estaba pensando utilizar esas dos herramientas.
Maven por lo que leí, es muy bueno como gestor de proyectos entre otras cosas.
Con el uso de hibernate lo que tengo mis dudas, como que nunca lo use, no se si vadra la pena gastar mi tiempo aprender este framework, al menos para este pequeño proyecto.
Igual vas a tener que aprender, o sea, si nunca usaste Hibernate vas a tener que aprender a usar el SQL falopero y deforme de Hibernate que no es SQL. Además de la ridiculez de hacer los mappings con XML, porque claro, java apesta y tener que hacerlo en java sería todavía peor que la basura esa de XML.

Entre eso y usar tecnología moderna yo no dudaría un segundo. En NHibernate por ejemplo, no existe nada de esa idiotez del XML, y para hacer queries usas LINQ y un modelo estático, en lugar de usar strings y tener que escribir el SQL vos mismo como si fuera 1999.
  #5 (permalink)  
Antiguo 30/05/2017, 18:45
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

Volviendo al fascinante mundo de java, en hibernate puedes hacer aplicaciones de escritorio y aplicaciones web además si nunca lo usaste te lo recomiendo primero antes que maven, si eso responde a tu pregunta manu205.
  #6 (permalink)  
Antiguo 30/05/2017, 19:30
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje
Volviendo al fascinante mundo de java, en hibernate puedes hacer aplicaciones de escritorio y aplicaciones web además si nunca lo usaste te lo recomiendo primero antes que maven, si eso responde a tu pregunta manu205.
Algun argumento puntual mínimamente creible para recomendar tecnología arcaica, además del hecho completamente irrelevante de que "puedes hacer aplicaciones de escritorio y aplicaciones web", cosa que por supuesto es cierta para cualquier otra tecnología, sin la necesidad de sufrir la idiotez del lenguaje java?

En el "fascinante mundo de java", la gente hace las cosas en XML para evitar justamente tener que usar java. No te olvides por favor de mencionar este hecho siempre que recomiendes a la gente usar tecnología dinosaurio de 1999.
  #7 (permalink)  
Antiguo 30/05/2017, 21:04
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

Hey agly lo que pasa es que preguntó dentro del lenguaje java, cuya tecnología también la usa kotlin (está en la wikipedia) jeje...
  #8 (permalink)  
Antiguo 30/05/2017, 21:16
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje
Hey agly lo que pasa es que preguntó dentro del lenguaje java, cuya tecnología también la usa kotlin (está en la wikipedia) jeje...
Por eso justamente es que mencioné las contras de tener que usar Hibernate, que es patético e inservible comparado a cualquier ORM de .NET, o de cualquier otra tecnología que no viva en 1999 como java.

De hecho, Con Kotlin se pueden hacer cosas mucho mejores con mucho menos esfuerzo, demostrando efectivamente que java es basura patética, idiota e inservible.
  #9 (permalink)  
Antiguo 30/05/2017, 22:14
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: ¿Qué me recomiendan?

Hola:

Sin saberqué hace tu proyecto (web, escritorio, ....), no es fácil aconsejarte tecnologías concretas. Si es un trabajo para la facultad, quizás debieras saber qué cosas van a valorar, si el meterte en tecnologías más o menos novedosas o el usar/aprender tecnologías ampliamente extendidas.

Puedes usar maven o gradle. maven es más veterano y tiene bastantes más plugins más acabados, pero gradle está tirando bastante fuerte y también se usa mucho. Si no requieres demasiados plugins o cosas espaciales, quizás gradle sea más sencillo.

En cuanto a hibernate, también es de los más usados en java. Hay casos concretos en los que hibernate no está recomendado, por ejemplo, si necesitas una velocidad de inserciones muy rápida o si hay varios ejecutables distintos tocando la misma base de datos simultáneamente y necesitas que todos vean inmediatamente los cambios que hacen los demás. Pero si no es tu caso, hibernate es una buena opción. Como alternativas a hibernate puedes usar eclipselink, toplink, openjpa, ... o yendo a algo un poco distinto mybatis, pero lo que te comento, la más usada en general es hibernate.

Otra cosa que te daría puntos en el trabajo (igual lo vas a hacer ya), es subir tu proyecto a un control de versiones como github. Tendrías que aprender git, pero lo básico para usarlo son cuatro o cinco comandos y no te debería llevar mucho tiempo.

Saludos.
__________________
Apuntes Java
Wiki de Programación
  #10 (permalink)  
Antiguo 31/05/2017, 05:48
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por chuidiang Ver Mensaje
Hola:

Sin saberqué hace tu proyecto (web, escritorio, ....), no es fácil aconsejarte tecnologías concretas. Si es un trabajo para la facultad, quizás debieras saber qué cosas van a valorar, si el meterte en tecnologías más o menos novedosas o el usar/aprender tecnologías ampliamente extendidas.
Sería una proyecto de escritorio para una casa de Empeños (altas, modificaciones, calculos, reportes) y lo que la facultad va a valorar sería los siguientes:
Construcción del software
- Técnicas de programación
- Aplicación adecuada del motor de DB
- Programación total del diseño
- Funcionalidad óptima del sistema
- Entre otros
Analisis y diseño
- Relevamiento
- Analisis
- Diseño UML
- Diseño DER
- Balanceo, Prototipo de interfaces
- Entre otros.
El proyecto es más para demostrar todo lo que aprendimos durante el trayecto de la carrera.
  #11 (permalink)  
Antiguo 31/05/2017, 06:09
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por chuidiang Ver Mensaje
Hola:
Otra cosa que te daría puntos en el trabajo (igual lo vas a hacer ya), es subir tu proyecto a un control de versiones como github. Tendrías que aprender git, pero lo básico para usarlo son cuatro o cinco comandos y no te debería llevar mucho tiempo.

Saludos.
La verdad es que no se me había ocurrido, muchas gracias por la información.
  #12 (permalink)  
Antiguo 31/05/2017, 06:18
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje
Volviendo al fascinante mundo de java, en hibernate puedes hacer aplicaciones de escritorio y aplicaciones web además si nunca lo usaste te lo recomiendo primero antes que maven, si eso responde a tu pregunta manu205.
Muchas gracias por tomarte tu tiempo para responder mi pregunta.
  #13 (permalink)  
Antiguo 31/05/2017, 19:32
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

De nada manu205 por lo que veo tu sistema sería POO (programación orientada a objetos), te pregunto si se puede saber: ¿tienes hecho la investigación preliminar (anteproyecto)?

Saludos.
  #14 (permalink)  
Antiguo 01/06/2017, 21:43
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje
De nada manu205 por lo que veo tu sistema sería POO (programación orientada a objetos), te pregunto si se puede saber: ¿tienes hecho la investigación preliminar (anteproyecto)?

Saludos.
si, justamente estoy haciendo el anteproyecto, por eso lo que pregunte, ya que tengo que pener todas las herramientas que voy a usar.
El problemas es que no me decidí todavía si voy a usar o no esas dos herramientas que mencione, principalmente hibernate.
Como que nunca trabaje con hibernate, no se si me va a dar ventaja alguna en este proyecto.
  #15 (permalink)  
Antiguo 01/06/2017, 22:58
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

Hola manu205 entonces tendría que decirte 2 cosas:

Hibernate tiene algo llama HQL que hace que tenga su propio sql haciendo que dejes un poquito de lado la base de datos, además de tener una comunidad activa e utiliza mucho anotaciones, también es ágil para programar y es puro POO.

Por otro lado debería decir que tienes escogida una metodología para tu proyecto, quieres un consejo: "No uses el ciclo en cascada" porque hará lento el transcurso de tu proyecto.

Es sólo una opinión, saludos.
  #16 (permalink)  
Antiguo 02/06/2017, 05:47
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 9 meses
Puntos: 78
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por agleiva Ver Mensaje
Además de la ridiculez de hacer los mappings con XML
Intentemos no dar información equivocada, el chico está pidiendo ayuda.

Para odiar tanto JAVA, te veo muy pendiente de todas sus actualizaciones/noticias. Me encanta ver tu dedicación tan completa a este lenguaje.

manu205:
La configuración puede hacerse con Anotaciones o XML. Lo que más te guste.

MAVEN: Es meramente un repositorio, en seguida te harás con este FrameWork.
HIBERNATE: No es para nada dificil, si conoces SQL verás como HQL lo dominas en seguida.

No ser dificil no quiere decir que no tengas que esforzarte, con esfuerzo y persistencia lo manejarás rápido. Ya verás.

Saludos!
  #17 (permalink)  
Antiguo 02/06/2017, 07:50
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 10 meses
Puntos: 52
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por ElAthlit Ver Mensaje
Para odiar tanto JAVA, te veo muy pendiente de todas sus actualizaciones/noticias. Me encanta ver tu dedicación tan completa a este lenguaje.
Yo no "odio" nada, capo, simplemente expreso LA VERDAD: java apesta.
Ademas no tengo ninguna "dedicación". Veo las noticias en reddit y las posteo acá para la gente que vive en un tupper y no se entera de nada.

Cita:
Iniciado por ElAthlit Ver Mensaje
La configuración puede hacerse con Anotaciones
Lo cual implica ensuciar el modelo de datos con cuestiones que son propias de la persistencia (alto leaky abstraction). Genial, ahora tu modelo tiene una dependencia dura a la librería de Hibernate. Buena suerte tratando de reutilizar ese código.

De todas formas, tanto el approach de XML como el approach de anotaciones demuestra con claridad mi punto: java es un lenguaje idiota y se requieren todo tipo de workarounds para hacer las cosas: las "anotaciones" no son sino HACKS para compensar la idiotez del compilador de java, con las cuales herramientas externas al compilador generalmente modifican el bytecode (es decir, el resultado del propio compilador). Fijate que en lenguajes modernos no se usa nada de esa basura, sino que el propio lenguaje tiene la capacidad de expresar lo que uno necesita. Despues de todo de eso se trata un lenguaje justamente, de poder expresar las ideas. java es insuficiente como lenguaje y por eso se recurre a herramientas externas para compensar su idiotez.

Por cierto, el primer resultado de google a "getting started with maven" lo primero que te muestra es un XML espantoso, seguido de un dibujito de un arbol de directorios infinito porque claro, el compilador de java es tan idiota que te obliga a que el nombre del package sea igual a la estructura de directorios. Ni hablar de que java es tan retrasado que no soporta mas de una clase por archivo. A que clase de imbécil se le puede ocurrir una idiotez semejante es algo que escapa de mi comprensión. Ah, si, es de oracle. Cierto.
  #18 (permalink)  
Antiguo 02/06/2017, 07:55
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje

Por otro lado debería decir que tienes escogida una metodología para tu proyecto
Para ser honesto, no estoy utilizando ninguna metodología (que yo sepa). ¿Qué me recomendas?
Ahora que lo pienso bien, solo conozco el modelo scrum y según tengo entendido, ese modelo es más para un equipo de trabajo.
  #19 (permalink)  
Antiguo 02/06/2017, 19:31
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

Hola manu205, te diré lo siguiente:

Cita:
Para ser honesto, no estoy utilizando ninguna metodología (que yo sepa). ¿Qué me recomendas?
Si buscas mi opinión cualquier metodología que tenga incrementos es mejor que el ciclo en cascada debido a q en el cascada sólo avanzas a la sgte etapa si concluyes del todo la anterior, además la detección de un requerimiento tardio le puede hacer costar caro al proyecto y que el cliente sólo tendrá conocimiento de tu sistema cuando este terminado.

Cita:
Ahora que lo pienso bien, solo conozco el modelo scrum y según tengo entendido, ese modelo es más para un equipo de trabajo.
Scrum es conocida cómo una metodología ágil, porque en el equipo de proyecto además de los que realización todo el trabajo del sistema también participa el cliente (product owner), un intermediario del cliente y uds (scrum manager) y los incrementos son sprints que ahí según lo que armen debe de tener la participación del cliente (en especial en la parte de V&V -> validación y verificación).

Desarrollo ágil de software

Metodología Scrum

Espero que te sirva de algo, Saludos
  #20 (permalink)  
Antiguo 04/06/2017, 18:52
 
Fecha de Ingreso: febrero-2015
Ubicación: ifyhfhhj
Mensajes: 34
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: ¿Qué me recomiendan?

Cita:
Iniciado por detective_jd Ver Mensaje

Espero que te sirva de algo, Saludos

Muchas gracias! me sirvio muchisimo tus consejos.
  #21 (permalink)  
Antiguo 06/06/2017, 22:30
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: ¿Qué me recomiendan?

De nada manu205, sólo por las si te interesa:

http://plantuml.com/

Te servirá mucho para la parte de análisis y diseño del proyecto.

Saludos.

Etiquetas: sistema
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:32.