Excavando en los datos en busca de ideas es siempre una actividad emocionante. Java EE Productividad Informe se centra en herramientas / tecnologías / normas en uso (selecciones exclusivos) y el tiempo de respuesta en Java (es decir, cuánto tiempo se dedica a volver a desplegar por hora / reinicio).

Java Productividad Informe ,  amplio la selección de tecnologías y herramientas disponibles para los equipos de desarrollo de Java para elegir, no  hicieron exclusiva, y cubrieron más áreas, por ejemplo, sistemas de control de versiones y el Código de Calidad Herramientas. También se enfocaron más en la pregunta, “¿Qué hace que los desarrolladores de garrapata?” Y aprendieron mucho sobre cómo los desarrolladores pasan su semana de trabajo, ¿qué elementos de los desarrolladores de vida laboral aumenta / disminuye la eficiencia, y lo que destaca a los desarrolladores. Encontraron una gran cantidad de tendencias y puntos de vista interesantes, y ellos se rompió en 4 partes:

Parte I: Herramientas de Desarrollo y Tecnologías Informe de Uso de
la cobertura de las versiones de Java, lenguajes JVM, IDEs, herramientas de generación, servidores de aplicaciones (contenedores), marcos de red de aplicaciones (del lado del servidor) Marcos, estándares de JVM, servidores de integración continua, Frontend Tecnología, Código Herramientas de Calidad, Sistemas de control de versiones

 Antes de que vayamos más profundo, vamos a revisar los datos en su conjunto.

Lo que se esta midiendo.

Popularidad se puede medir de diferentes maneras – número de usuarios, número de organizaciones, el número de líneas de código, etc En este estudio midieron la penetración de las herramientas y la tecnología en el mercado. Así el 10% de los encuestados quiere decir que probablemente el 10% de las organizaciones que hacen el desarrollo de Java utilizan esta herramienta o tecnología en alguna parte de la organización. No nos dice si es fundamental para ellos o no, si se utiliza mucho o sólo en casos excepcionales y si se utiliza por todo el mundo o sólo la parte demandada.

herramientas y tabla de líderes de tecnología

PARTE I

Herramientas y tecnologías utilizadas por el 66% + de encuestados

Java 6 es la versión aplastante de Java, utilizado por el 88% de los encuestados. Pero lo más interesante y emocionante es el hecho de que el 23%java2 de los encuestados ya están utilizando Java SE 7 Esta es la penetración increíble, teniendo en cuenta que salió menos de la mitad de un año antes del momento de esta encuesta. Esto da esperanza de que como Java SE 8, 9 y 10 de salir en los próximos 6 años más o menos, una gran cantidad de ingenieros será capaz de beneficiarse de los cambios rápidamente.

Las herramientas con más de dos tercios de los encuestados – Eclipse, Maven y Subversion – son ahora el estándar de facto en el entorno de desarrollo de Java. Esta popularidad universal no significa que no están exentos de reto – de hecho, Maven se complementa a menudoherramientas con Ant, sí utilizado por casi la mitad de los encuestados. Subversion está perdiendo terreno poco a poco a Git y en menor medida en Mercurial. En el espacio de IDE, tanto IDEA IntelliJ y NetBeans han hecho grandes progresos en el desafío de Eclipse desde el año pasado.

Herramientas y tecnologías utilizadas por ~ 50% de los encuestados

logosLas herramientas y tecnologías que se utilizan en alrededor de la mitad de los encuestados son JPA, Ant, Jenkins / Hudson, Tomcat, Spring y Hibernate. Estas son todas las tecnologías probadas y con la excepción de Jenkins han tenido una participación estable gran mercado durante años.Jenkins ha crecido mucho en los últimos años y probablemente seguirá ganando cuota de mercado a menos que emerja retador (s). Tomcat será muy probablemente se una al grupo estándar próximo año de facto (y ver el salto en popularidad detrás de Embarcadero en la sección Servidores de aplicaciones) y Primavera y Hibernate siguen sosteniendo suelo bien contra Java EE, pero será interesante ver lo que sucederá en el largo plazo, ya que mantiene Java EE conseguir más ligero, mientras que la primavera se pone cada vez más pesado.

Lenguajes de la JVM y marcos Web en movimiento hacia adelante

Es interesante ver que Groovy está ahora en el 17% y Scala en el 11%. Groovy ha convertido en el lenguaje de programación de elección en la plataforma Java y una gran cantidad de increíbles herramientas se basan en su uso en un entorno Java, por ejemplo Gradle y Spock. Scala se ha establecido como la alternativa de Java en la JVM y estágrovi ganando terreno, especialmente con aquellos que necesitan un entorno altamente distribuido o gran mensajería, pero no quieren usar Erlang. Akka y Levante son los dos marcos asesinas que permiten a dicho uso.

El premio fresco recién llegado va a Clojure, que logró ganar rápidamente casi tanto apoyo como JRuby en un corto período de tiempo. El mercado framework web permanecerá como fragmentada como siempre, con Spring MVC, JSF y Struts líder del rebaño.

Una cosa interesante es que estos números cambian poco si elegimos un sector en particular: grandes empresas, medianas empresas, pequeñas empresas, industrias verticales. Hay algunas correlaciones aquí y allá (por ejemplo, las pequeñas empresas tienen más preferencia por las herramientas y tecnologías libres), pero el panorama no cambia mucho. Para nosotros esto dice que la comunidad tiene un papel más importante en la determinación de las herramientas y tecnologías utilizadas que el negocio lo hace, lo que significa que es un buen momento para ser un ingeniero de software.

Alternativas de JVM Idiomas

Alternativas de JVM Idiomas

Groovy ha sido la lengua JVM dinámica de elección para los años y este hecho se refleja en los resultados de la encuesta, aunque hay que admitir que siento un poco de suspicacia a los números. Groovy también está tratando de atraer a los fanáticos de tipos estáticos con Groovy ++, pero Scala parece haberse consolidado como la alternativa Java tipos estáticos en la JVM – una posición que los idiomas más nuevos como Kotlin y Ceilán encontrarán difícil adelantar considerando ventaja de Scala

Clojure, JRuby y Jython permanecen como bastante agradables idiomas nichos, aunque Python y Ruby son muy populares fuera de JVM. Sin embargo, teniendo en cuenta la gran cantidad de lenguajes de la JVM por ahí, la captura rápida de Clojure de hasta el 1% de los desarrolladores de JVM es algo impresionante.

IDE’s

El número de usuarioeclipses de Eclipse ha sido alrededor de la marca de las dos terceras partes (68%) por un tiempo. Es, con mucho, el IDE más popular entre los desarrolladores de Java, y recibe un montón de pequeñas mejoras cada año – el diablo está en los detalles. IntelliJ IDEA cuenta con un número de usuarios que confían en él y nunca cambiar a Eclipse, y parece que ha ganado más terreno también (28%) en comparación con la última encuesta donde vimos el 22% de los desarrolladores de Java utilizando IDEA. La libre Community Edition podría tener algo que ver con el aumento de la adopción.

NetBeans se mantiene en el tercer lugar entre los IDEs de Java gratis.

Las dos opciones comerciales, MyEclipse e IBM Rational Application Developer sostienen pequeñas pero presumiblemente dedicados cuotas de mercado también. Con MyEclipse azul posiciona como una alternativa más liviana a RAD, será interesante ver si MyEclipse será robando lejos más usuarios RAD durante el próximo par de años.

Construir Herramientas

No hay Maven paliza – aunque algunos detestan sus archivos XML detallados y capacidad de descarga de Internet de vez en cuando – dos terciosant (67%) de los desarrolladores de Java encuestados utilizarlo. Ant no se queda atrás, con casi la mitad de la base de usuarios (48%).

Esto demuestra que tanto con guión construye (Ant) y declarativa construye con gestión de la dependencia (Maven) tienen su lugar y ni construir historia desaparecerá. Es probable que muchas compilaciones siguen siendo migrado de Ant a Maven, sin embargo, ya que algunos estudios anteriores que han demostrado ser más o menos igual jerarquía Mientras que en la sección de idiomas Alternativa JVM, es algo sorprendente que mientras más encuestados reportaron haber usado Groovy (17%) que Scala (11%), SBT es ligeramente por delante de Gradle (6% vs 5%). Suponemos que viene del alto porcentaje de proyectos Scala que utilizan SBT, y el uso de Groovy es probablemente más como lenguaje de scripting que herramientas de construcción no son necesarios.

 

Servidores de aplicaciones y contenedores

Sin sorpresa, Apache Tomcat sigue siendo el servidor de aplicaciones de código abierto más utilizado. JBoss sigue siendo popular, pero el mayor aumento el uso que vemglassfishos
aquí es con el embarcadero, que anotó sólo el 8% de los usuarios en el último informe.

Teniendo en cuenta la popularidad de los servidores de aplicaciones de código abierto, es lógico ver Tomcat, JBoss y embarcadero llenar las filas, pero hay pequeños aumentos en el uso de todos los servidores de aplicaciones, y Weblogic es un buen ejemplo para ver. Hablando con los clientes en todo el mundo, estamos viendo cada vez más el uso de varios servidores de aplicaciones en los equipos de desarrollo en una sola organización. Es decir, utilizando un contenedor ligero (Tomcat, Espolón) durante el desarrollo y el despliegue de un servidor de aplicaciones en toda regla – como Weblogic – en entornos en vivo.

 

 

Web Frameworks

Como  Spring se espera es el primero con el 30% de la cuota de mercado. 30% es gran caída de 48%, pero que proviene de la separación de Spring MVC y la primavera. JSF-s le sigue con un 23% que es 1% inferior al del año pasado y puede explicarse por un defecto de medición. Struts es tercero este año, pero los resultados de Struts incluye tanto Struts 1 y Struts 2 por lo que la suma es la misma que la última vez. El primer marco que se ha levantado es GWT con 2% de aumento al 14%, pero esto no es mucho.

Omitimos Play! y Vaadin (sin intención) desde el informe del año pasado, pero los dos tienen puntos medios cómodos en la distribución.

La falta de grandes cambios en esta área potencialmente puede explicarse por el hecho de que el cambio de marcos web es un poco difícil, lento y costoso proceso. Hay una gran cantidad de legado, aplicaciones críticas de negocio por ahí, que no pueden arriesgarse a un interruptor si su aplicación será roto por unos meses debido a una gran refactorización.

Por lo tanto, cualquier cambio en el uso del marco ocurrirían en nuevos proyectos donde hay libertad en la elección de las diferentes tecnologías, pero parece que los nuevos proyectos tienen demasiado poco peso o las preferencias no han cambiado.

spring

Los entornos de aplicaciones

En la categoría de los entornos de aplicaciones, Spring(56%) y Hibernate (54%) siguen siendo los más populares. Después de una gran caída viene AspechibernatetJ con sólo el 13% del uso. Según los usuarios de esta encuesta otros marcos no se utilizan mucho.

El% de la Spring y Hibernate es casi la misma, ya que se utilizan generalmente juntos. Y en comparación con los resultados de la encuesta del año pasado (48% y 45%) que todavía están en la parte superior. Así que esperamos ver los mismos resultados de ellos en el año que viene también, y 3er lugar será posiblemente cambiar también.

Normas de Java

La lección de Java EE aprendido en ser liviana está dando sus frutos – tanto EJB 3.0, CDI y JPA han visto mejoras rápidas en la adopción.

JPA está funcionando excepcionalmente bien, pero eso es debido a la falta de una verdadera competencia. JPA es apoyada tanto por Hibernate y EclipseLink y es más fácil de instalar que “puro” Hibernate.ejb1

Servidores de integración continua

Estos resultados muestran Jenkins / Hudson sea el método estándar de facto para la construcción de un entorno de integración continua. Las razones detrás de eso están siendo, de código abierto, multiplataforma, más o menos fácil de usar y fácil de instalar.jenkins

Front End Technologies

netbeans

Podemos decir de estos resultados que Java es todavía muy fuertemente posicionada para el desarrollo de aplicaciones web y habla bien para el éxito continuo de Java como lenguaje primario y el medio ambiente para el desarrollo empresarial como la tendencia de mover aplicaciones a la nube continúa.

Cuando miramos a las otras respuestas en la sección, vemos que el RCP se está convirtiendo cada vez más importante y se utiliza como una tecnología de front-end. Si combinamos los puntos de datos de NetBeans y Eclipse PCR vemos SWT paliza RCP y casi adelantamientos Swing.Esto habla de balancín continuó tendencia a la baja y el uso de la creciente importancia de la modularidad en toda la base de código de la aplicación.

Código de Herramientas de Calidad

Findbugs y PMD buscan errores en el código y Checkstyle comprueba que el código fuente se adhiere a las reglas de codificpmdación. Sonar es en realidad una suite de herramientas de calidad de código, que es algo de un animal diferente, e incluye las herramientas antes mencionadas, que ofrece los mismos resultados, pero observable como tendencias en el tiempo. En el próximo informe, también planeamos 29% incluye herramientas de cobertura de código, como Cobertura y Emma.

A partir de los resultados, no podemos decir mucho más que el ecosistema Java definitivamente confía en el análisis de código estático y utiliza herramientas para encontrar “errores que importan” temprano.

Sistemas de control de versiones

Como ha sido el caso desde hace varios años, Subversion es, con mucho, el sistema de control de versiones más utilizado para el desarrollo de Java. Esto es generalmente debido a la transición razonablemente suave entre CVS (el titán histórico de control de versiones) para Subversion.

La parte más interesante del conjunto de resultados es la forma prevalente Git y Mercurial están convirtiendo. Git es la introducción de la mayoría de la gente a un sistema decvs control de versiones distribuido. Subversion todavía tiene la ventaja debido a las extensas historias que la gente tiene en sus repositorios de subversión existentes. A medida que el utillaje para Git mejora y la cultura alrededor de control de origen se mueve a un paradigma distribuido, es probable que sigamos para ver CVS y Subversion dando paso lentamente a Git y Mercurial.

Fuente zeroturnaround.com

About Author

Gerardo Guerrero

0 0 votos
Article Rating
Suscribir
Notificar de
guest
0 Comments
Comentarios.
Ver todos los comentarios
0
¿Te gusta este articulo? por favor comentax
()
x
Abrir chat
¿Quieres aprender a programar?
Hola 👋,
¿Te interesa información de nuestros cursos?