Pregunta

Así que muchos del lado del servidor y las aplicaciones Java móviles utilizan el lenguaje Java nativo para Java. Podemos usar Jython en lugar de construir las aplicaciones empresariales, por ejemplo, sitios web, servidores de aplicaciones, etc.

También lo que se siente acerca de las aplicaciones Java ME en Jython.

P.S. Comentarios en cuestión también son bienvenidos.

¿Fue útil?

Solución

No, Jython no es un sustituto adecuado para Java. Consideremos, por ejemplo, que no proporciona ninguna manera de implementar interfaces sin necesidad de escribir la interfaz en Java y luego escribir una clase aprovechando que en Jython.

Lo que se necesita es un equivalente JVM orientada a Boo. Boo es un lenguaje dirigido al CLR .NET que está más o menos inspirada en Python, pero no es compatible, y que expone completamente la funcionalidad del CLR (siendo por tanto de características equivalentes con C #). Actualmente no existe una lengua Pythonic con paridad de funciones con Java - y tal lenguaje sería necesariamente incompatible con Python, como Python, simplemente no proporciona una manera de expresar algunos de los conceptos relevantes (como la información de la interfaz de escritura)


Dado que ha habido algunas preguntas sobre esto, sin embargo, quiero aclarar:

Jython no es un sustituto para Java en el sentido de que no se puede tener un proyecto Java arbitraria, decidir la aplicación de un subconjunto aleatorio de ese proyecto en Jython lugar, y no tener nadie en el equipo de desarrollo de saber o cuidado. Ciertamente, Jython es adecuado para muchas de las mismas clases de proyectos que Java es, , excepto cuando está la construcción de una interfaz que se llamará a partir de Java, y no al revés . Teniendo en cuenta como "aplicaciones empresariales" tienden a tener una gran cantidad de componentes que operan estrechamente entre sí, siendo capaces de construir una clase con una interfaz externa arbitraria es importante ... y es algo que no se hace fácilmente en pura Jython.

Otros consejos

Depende en gran medida cuáles son sus requisitos. Todas las lenguas tienen sus fortalezas y debilidades. No hay un lenguaje perfecto y tomar decisiones inteligentes acerca de la elección del idioma es una habilidad importante para un programador.

No estoy de acuerdo con Charles que Jython no puede reemplazar a Java porque no se puede implementar interfaces. En los lenguajes dinámicos, es visto como una característica que no necesidad Interfaces (véase la tipificación de pato).

Jython toma las grandes características del lenguaje de Python y lo combina con fácil acceso a la enorme colección de bibliotecas de Java. Sin embargo, tiene un precio en términos de gastos generales, y de ser un lenguaje bastante nuevo con menos programadores y apoyo a las copias de seguridad.

Lo bueno de Jython es que se puede volver a escribir módulos individuales en Java si el rendimiento es un problema. El tema de la velocidad es menos notable en los servidores donde se puede tirar de hardware en el problema. En los teléfonos móviles, el rendimiento sigue siendo la clave y no puedo ver Jython haciendo un gran impacto allí en un futuro próximo.

Así que va a sustituir a Jython Java? No, no creo que lo hará - el impulso de Java es demasiado grande. Pero vamos a ver cada vez más programas con partes escritas en Jython y otros idiomas dirigidos a la JVM.

No, no puede sustituir Jython Java, Python, porque se escribe de forma dinámica. Sí, Jython se puede utilizar para aplicaciones de servidor.

Jython no es bueno para Java ME, ya que Java ME tiene recursos muy limitados. Tal vez varios años más tarde.

Editar: tipos dinámicos, no débilmente

Sí. Los lenguajes dinámicos son el futuro. He oído esto desde representantes SUN hace aproximadamente un Yar. La parte más sorprendente de Jython es el uso de "nativo" de las bibliotecas de Java. Servicios y otros componentes pueden permanecer en Java, pero capa de integración se moverán con seguridad en la dirección lenguajes dinámicos. Creo que es nativa de Python orientado a objetos como Java es por eso que se ajustan tan bien. No espero algo así como la de otros lenguajes de programación como Perl, pero para asegurarse de Ruby y Groovy también son buenas alternativas.

Puede usar Jython para que los dominios. Obviamente, el mundo para el desarrollo web se está moviendo hacia las lenguas tipos dinámicos como Python o Ruby. Jython es agradable en este ámbito, ya que permite usar la completa "pila de Java" (infraestructura de servidor de aplicaciones, Tomcat, implementación y pruebas, ...) en las empresas. También puede implementar la lógica de negocio en Java.

Sin embargo, Jython no es un sustituto para Java, ya que es C #. Usted (posible) ganar la productividad del programador, pero se pierde rendimiento y compilar controles horarios. Las lenguas son muy diferentes y se "optimizado" para diferentes tareas. Yo propondría para evaluar Jython para tareas más pequeñas, que no son críticas, por ejemplo, al empezar a aplicar algunos casos de prueba en ella.

No creo que Jython es útil para el desarrollo de Java ME. Las razones se dan en los otros puestos:. Las limitaciones de recursos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top