Tenemos una base de código Java existente donde usamos intellij idea para el desarrollo.
Estamos creando una aplicación para Android en la que compartiremos código y otros recursos con el código preexistente y la base de recursos.
Como Android Studio parece ser principalmente una versión modificada de Intellij, mi pregunta es ¿hay características totalmente específicas que Android Studio tiene que son indispensables? ¿Incompatible? "Estándar"? vs Intellij Idea community o ultimate? ¿Son los dos intercambiables con un conjunto de complementos adecuado?
Si tuviéramos que usar Intellij Idea con los diversos complementos de soporte de Android, ¿son estos complementos los mismos que vienen con Android Studio? Con este conjunto de complementos, ¿los programas serán prácticamente intercambiables?
(Noté que el soporte de "hormiga" no está en Android Studio. Aunque todo lo que necesito es cierta capacidad para invocar ejecutables desde el IDE con un conjunto de entradas configurables de menú para varios comandos; ahora uso el soporte de intellij ant para hacer esto porque estaba disponible)
¿Intellij siempre estará retrasado en las versiones de Android Studio, ya que es la herramienta "oficial" de Google?
Si son significativamente incompatibles, ¿cuál es la forma más sencilla de utilizar recursos y herramientas comunes entre los dos sistemas?
fuente
Respuestas:
Respuesta actualizada noviembre de 2019
En el pasado, no había ninguna funcionalidad en Android Studio que no estuviera presente en IntelliJ IDEA con el complemento de Android instalado. Sin embargo, desde sus inicios, Android Studio ha crecido y se ha alejado cada vez más de IntelliJ IDEA, especialmente recientemente. Ahora hay algunos complementos incluidos en Android Studio que no son compatibles con IntelliJ IDEA. Un ejemplo es el soporte de APK de Android, que se lanzó por primera vez en junio de 2019. Además, hay algunos complementos basados en Android incluidos con Android Studio que ni siquiera aparecen en el sitio del complemento JetBrains (en este momento), como "Juegos de Android", "Soporte para Android NDK", "App Links Assistant", entre otros.
Por lo tanto, en este momento, lo mejor es usar Android Studio para proyectos de Android y usar IntelliJ IDEA para cualquier desarrollo auxiliar, como aplicaciones del lado del servidor.
Cómo usar ambos fácilmente
La aplicación JetBrains Toolbox facilita la instalación y el uso de los dos IDE uno al lado del otro. También hace que actualizar (y revertir si alguna vez lo desea) también sea muy fácil. La caja de herramientas no era compatible con Android Studio cuando apareció por primera vez hace años. Y así elegir uno u otro era más un "problema". Además, al utilizar el complemento de repositorio de configuración (incluido en ambos IDE), puede mantener fácilmente la configuración entre los dos IDE de la plataforma IntelliJ sincronizados. (Consulte Compartir configuración a través de un repositorio de configuración en la documentación de IntelliJ IDEA). Por lo tanto, entre la aplicación Toolbox y el complemento del repositorio de configuración, es conveniente (en mi humilde opinión) usar ambos.
Formulario de respuesta anterior (desactualizado) de junio de 2015
Primero, un descargo de responsabilidad ... Solo he usado ligeramente Android Studio ya que hago todo mi trabajo en IntelliJ IDEA. Pero he sido un ávido usuario de IntelliJ IDEA desde 2003.
La respuesta rápida es que no hay nada que pueda hacer en Android Studio que no pueda hacer en IntelliJ IDEA (Community o Ultimate) con el complemento de Android instalado y habilitado. Aquí hay una captura de pantalla de la matriz de características de IntelliJ IDEA que hace ese punto:
Básicamente, Android Studio tiene más "marca" para Android que IntelliJ IDEA. Y dado que es solo un IDE de Android, puede estar más "enfocado". Como mencioné, no hay nada que pueda hacer en Android Studio que no pueda hacer en Intellij IDEA. Pero lo contrario no es cierto. Hay una serie de cosas (que no son de Android) que puede hacer en IntelliJ IDEA (tanto la comunidad como las ediciones definitivas) que no puede hacer en Android Studio.
Con respecto a la pregunta sobre si Android Studio puede usar los complementos IntelliJ IDEA, eso dependerá del complemento y de los componentes (dentro de la API del complemento IntelliJ) que aprovecha. Cuando escribe un complemento, debe declarar (en el descriptor de su complemento) qué dependencias de API utiliza. Algunos ejemplos son
com.intellij.modules.lang
,com.intellij.modules.java
,AntSupport
, yGit4Idea
. Hay docenas, si no cientos, de posibilidades, incluidos otros complementos. Entonces, si un complemento (o una de sus dependencias) termina usando algo en la API del complemento que no está incluido en Android Studio, ese complemento no funcionará. Por ejemplo, un complemento que escribí (que no tiene absolutamente nada que ver con el desarrollo móvil), aparece en la página del complemento JetBrains como compatible con Android Studio porque solo depende decom.intellij.modules.lang
ycom.intellij.modules.java
. Entonces, si bien puede funcionar en ambos sentidos, es más probable que (debido a que IntelliJ IDEA tiene más componentes instalados) un complemento solo sea compatible en IntelliJ IDEA como resultado de una dependencia de algo que es exclusivo de ese complemento.Puede ser de ambos modos. JetBrains puede agregar cosas que tardan en llegar a Android Studio; y Google puede agregar cosas que toman tiempo para alcanzar IntelliJ IDEA. Sin embargo, lo más probable es que este último sea más frecuente. Sin embargo, no sé de antemano cuánto tiempo dura ese retraso. Esta publicación de blog de JetBrians puede ayudar en ese sentido: Preguntas frecuentes sobre IntelliJ IDEA y Android Studio
Mis recomendaciones personales serían: si sabe que solo va a realizar desarrollo de Android, elija Android Studio. Además, los nuevos desarrolladores de Android probablemente encontrarán que Android Studio se adapta mejor, ya que la mayoría de la documentación y los tutoriales lo mostrarán y puede haber una pequeña diferencia ocasional (como dónde se encuentra algo en un menú) en IntelliJ IDEA. Pero si va a trabajar en proyectos dedicados de JVM usando Java, Kotlin, Groovy y / o Scala, o con otros lenguajes (Python, php, html, css, JavaScript, etc., etc.) o cualquier servidor (o "empresa "), ya sea para sus aplicaciones de Android o para otro trabajo, luego elija IntelliJ IDEA.
Editado el 4 de agosto de 2018 para una aclaración y una captura de pantalla adicional.
Actualizado el 25 de noviembre de 2019 para agregar nueva información.
fuente
Para el desarrollo de Android, sería mejor utilizar Android Studio (la vista previa 1.3 ya está disponible).
Dado que Android Studio está basado en Intellij, su "curva de aprendizaje" no debería ser un problema.
Para usar "recursos comunes", supongo que se está refiriendo al código ... y eso debería estar en un repositorio (git / github / ...).
fuente