Novedades de AppCode 2018.3

Agregaron soporte para Swift 4.2, hicieron Generar y navegar para determinar el tipo de Swift, mejoraron el formato, admitieron extensiones de iOS en el depurador, comenzaron a funcionar mejor en proyectos con varios objetivos, y también hicieron un montón de características interesantes y útiles.


CPAP



Veloz


Admitió todas las características de la versión 4.2 que podrían afectar el IDE:


  • SE-0192 (Manejo de futuros casos de enumeración)
  • SE-0193 (línea cruzada de módulos y especialización)
  • SE-0194 (Colección derivada de casos Enum)
  • SE-0195 (Tipos de "búsqueda dinámica de miembros" definidos por el usuario)
  • SE-0196 (Directivas de diagnóstico del compilador)
  • SE-0212 (Directiva de versión del compilador)

Si todavía te perdiste algo, asegúrate de escribir en los comentarios. Y sobre Swift 5 puedes leer aquí .


Generación


Hicimos todas las acciones de generación estándar que Objective-C tiene: inicializadores, description / description debugDescription , hashValue y el operador de comparación:


Generación


Para todas las acciones, excepto el inicializador, también puede seleccionar la plantilla utilizada para la generación.


Tipo Definición Navegación


Aquí todo es simple: ⇧⌘B e inmediatamente obtenga la definición de tipo:


Tipo Definición Navegación


Punto de salida de iluminación


Aprendimos a resaltar los puntos de salida configurando el cursor para break , continue , try , throw o return :


Punto de salida de iluminación


Formateo


En casi todas las versiones, estamos mejorando algo en el motor de formato, esto es lo que hicimos en esto:


  • corrigió la sangría para literales de cadena de varias líneas: Formatear literales de cadena
  • configuración de formato de código agregado dentro de las directivas de preprocesador: Configuración de directiva de preprocesador
  • hizo posible cambiar la alineación de expresiones con el operador ternario en Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation

Soporte Swift Package Manager en CLion


Con CLion, no solo tenemos soporte general de C / C ++, sino también soporte general de Swift. Durante mucho tiempo, el complemento, que agrega soporte para proyectos SPM en CLion, usó CMake como modelo de proyecto. Este año decidieron que ya no era posible vivir así, era incómodo de usar, y apoyaron SPM directamente. Ahora puedes trabajar así:



Resultó realmente bien, solo queda finalizar la integración con las pruebas. Y teniendo en cuenta el hecho de que CLion tiene la funcionalidad WebStorm para editar HTML / JavaScript, puede trabajar con bases de datos de la misma manera que en DataGrip , hay un complemento Docker y mucho más, entendemos que ahora todavía puede escribir backends en Swift en él :



No, todavía no planeamos trabajar con SourceKit-LSP. La razón es simple: casi todo es lo que lleva consigo (y lo que todavía no lleva).


Objetivo-C / C / C ++


Proyectos objetivo múltiples


Finalmente, solucionamos problemas con resaltado y autocompletado para clases con el mismo nombre conectado a diferentes objetivos en el proyecto. También planeamos arreglar la navegación .


Cambiar firma


Anteriormente, al cambiar la firma en C / C ++, AppCode perdió los valores predeterminados de los argumentos, y ahora los procesa correctamente:


Cambiar firma


La documentación


Comenzamos a formatear sustituciones de macros en la documentación rápida ( F1 ):


Formato de macro


Multilínea TODO


En AppCode, todos los comentarios del formulario //FIXME / //TODO pueden ver rápidamente a través de ⌘6 . Aquí puede configurar plantillas para sus mensajes, lo cual es conveniente:


TODO Settings


Ahora hemos agregado compatibilidad TODO de varias líneas para Objective-C / C / C ++: es suficiente para cada línea excepto la primera para agregar una sangría:


Multilínea TODO


Código mixto


Se swift_name problemas con el cambio de nombre de construcciones de swift_name a Objective-C y enumeraciones en Swift / Objective-C.


Rendimiento


Solucionaron los frisos al llamar a los diálogos relacionados con la ejecución de pruebas, por ejemplo Ejecutar configuraciones con configuraciones de prueba.


Lanzamiento y depuración


Extensiones IOS


AppCode ha aprendido cómo depurar extensiones de iOS, al igual que Xcode:


Soporte de extensión IOS


Consola LLDB para Swift


Arreglamos la finalización automática en la consola del depurador para Swift (para Objective-C / C / C ++ todo funcionaba así). Todos los partidarios de p / po y expression regocijan, el resto, como antes, usa la Evaluación de expresión ( ⌥F8 ):


Autocompletado en la consola LLDB


Complemento Entrenador de características IDE


Entrenador de características IDE


A menudo escuchamos en conferencias una solicitud para dar materiales sobre la migración de Xcode a AppCode, sobre qué características del IDE necesita saber primero. Durante el proceso de lanzamiento, dimos el primer paso importante en esta dirección: agregamos una parte para Swift al Entrenador de características IDE. La conclusión es simple: instalamos el complemento, abrimos las lecciones, seguimos las instrucciones y, con ejemplos simples, vemos qué oportunidades hay, cómo usarlas y dónde encontrarlas. Recomendamos que todos vayan, incluso si ha estado usando el IDE durante mucho tiempo. Con alta probabilidad, todavía se encontrará algo nuevo y útil :).


IDE


Busca en todas partes


Búsqueda combinada en todas partes, vaya a Clase / Archivo / Símbolo / Acción:


Busca en todas partes


Ejecuta cualquier cosa


Ahora cualquier configuración se puede iniciar presionando dos veces ⌃:


Ejecuta cualquier cosa


O abra un proyecto escribiendo open .


Complementos


Rediseñado completamente la apariencia de la sección con complementos en el IDE:


Complementos


Control de versiones


Ahora podemos trabajar con submódulos Git y mostrar convenientemente solicitudes de extracción de Github:


Ventana de solicitud de extracción para github


Tema de alto contraste


Ahora lo es, tanto para el editor como para el IDE (puede seleccionar en Preferences | Appearance & Behavior | Appearance ):


Tema de alto contraste


Que sigue


Planeamos dedicar la próxima versión por completo a solucionar problemas. Una excepción es el soporte para nuevas versiones de Swift. En general, más estabilidad, mejor autocompletado con navegación y retroiluminación, menos interferencia en el trabajo.


Eso es todo! Como siempre, descargue, aquí , errores, al rastreador , haga preguntas generales aquí mismo.

Source: https://habr.com/ru/post/es432058/


All Articles