O que há de novo no AppCode 2018.3

Eles adicionaram suporte ao Swift 4.2, fizeram o Generate e a navegação para determinar o tipo do Swift, melhoraram a formatação, suportaram extensões iOS no depurador, começaram a funcionar melhor em projetos com vários destinos e também criaram vários recursos interessantes e úteis.


CPAP



Swift


Suporte a todos os recursos da versão 4.2 que podem afetar o IDE:


  • SE-0192 (Tratamento de casos futuros do Enum)
  • SE-0193 (inlining e especialização entre módulos)
  • SE-0194 (Coleção Derivada de Casos Enum)
  • SE-0195 (Tipos de "Pesquisa dinâmica de membro" definidos pelo usuário)
  • SE-0196 (Diretivas de diagnóstico do compilador)
  • SE-0212 (Diretiva de Versão do Compilador)

Se você ainda perdeu alguma coisa, não deixe de escrever nos comentários. E sobre o Swift 5, você pode ler aqui .


Geração


Realizamos todas as ações de geração padrão que o Objective-C possui - inicializadores, description / debugDescription , hashValue e o operador de comparação:


Geração


Para todas as ações, exceto o inicializador, você também pode selecionar o modelo usado para geração.


Navegação de definição de tipo


Tudo é simples aqui - ⇧⌘B e ⇧⌘B imediatamente à definição do tipo:


Navegação de definição de tipo


Iluminação do ponto de saída


Aprendemos como destacar pontos de saída configurando o cursor para break , continue , try , throw ou return :


Iluminação do ponto de saída


Formatação


Em quase todas as versões, estamos aprimorando algo no mecanismo de formatação, eis o que fizemos nisso:


  • corrigiu o recuo para literais de cadeia de linhas múltiplas: Formatar literais de string
  • adicionadas configurações de formatação de código nas diretrizes do pré-processador: Configurações da diretiva de pré-processador
  • tornou possível alterar o alinhamento de expressões com o operador ternário em Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation Preferences | Editor | Code Style | Swift | Wrapping and Braces | Ternary conditional operation

Suporte ao Swift Package Manager no CLion


Com o CLion, temos não apenas suporte geral a C / C ++, mas também suporte geral a Swift. Por um longo tempo, o plug-in, que adiciona suporte a projetos SPM no CLion, usou o CMake como modelo de projeto. Este ano, eles decidiram que não era mais possível viver assim - era inconveniente de usar e apoiavam diretamente o SPM. Agora você pode trabalhar assim:



Ficou muito bom, resta apenas finalizar a integração com os testes. E, considerando que o CLion possui a funcionalidade WebStorm para editar HTML / JavaScript, você pode trabalhar com bancos de dados da mesma maneira que no DataGrip , existe um plug - in Docker e muito mais, entendemos que agora você ainda pode escrever backends no Swift nele :



Não, ainda não estamos planejando trabalhar com o SourceKit-LSP. O motivo é simples: quase tudo é o que ele carrega (e o que ainda não carrega).


Objective-C / C / C ++


Projetos-alvo múltiplos


Por fim, corrigimos problemas com o destaque e a conclusão automática de classes com o mesmo nome conectadas a diferentes destinos no projeto. Também planejamos corrigir a navegação .


Alterar assinatura


Anteriormente, ao alterar a assinatura em C / C ++, o AppCode perdia os valores padrão dos argumentos - e agora os processa corretamente:


Alterar assinatura


A documentação


Começamos a formatar substituições de macro na Documentação Rápida ( F1 ):


Formatação de macro


TODO multilinha


No AppCode, todos os comentários no formato //FIXME / //TODO podem ser visualizados rapidamente através do ⌘6 . Aqui você pode definir modelos para suas mensagens, o que é conveniente:


Configurações TODO


Agora adicionamos suporte a TODO de várias linhas para Objective-C / C / C ++ - é suficiente para cada linha, exceto a primeira, para adicionar um recuo:


TODO multilinha


Código misto


Corrigidos problemas ao renomear construções de swift_name para Objective-C e enumerações em Swift / Objective-C.


Desempenho


Eles corrigiram os frisos ao chamar caixas de diálogo relacionadas à execução de testes, por exemplo, Executar configurações com configurações de teste.


Iniciar e depuração


Extensões IOS


O AppCode aprendeu como depurar extensões do iOS - assim como o Xcode:


Suporte de extensão IOS


Console LLDB para Swift


Corrigimos a conclusão automática no console do depurador para Swift (para Objective-C / C / C ++ tudo funcionava assim). Todos os apoiadores de p / po e de expression alegram, o restante, como antes, usa a expressão de avaliação ( ⌥F8 ):


Preenchimento automático no console LLDB


Plugin do instrutor de recursos do IDE


Instrutor de Recursos IDE


Frequentemente, ouvimos nas conferências uma solicitação para fornecer materiais sobre a migração do Xcode para o AppCode, sobre quais recursos do IDE você precisa conhecer primeiro. Durante o processo de lançamento, demos o primeiro grande passo nessa direção - adicionamos uma peça para Swift ao IDE Features Trainer. A linha inferior é simples - instalamos o plug-in, abrimos as lições, seguimos as instruções e, com exemplos simples, vemos quais oportunidades existem, como usá-las e onde encontrá-las. Recomendamos que todos os usuários partam - mesmo se você estiver usando o IDE por um longo tempo. Com alta probabilidade, algo novo e útil ainda será encontrado :).


IDE


Pesquise em todos os lugares


Pesquisa combinada em todos os lugares, vá para Classe / Arquivo / Símbolo / Ação:


Pesquise em todos os lugares


Execute qualquer coisa


Agora qualquer configuração pode ser iniciada pressionando duas vezes ⌃:


Execute qualquer coisa


Ou abra um projeto digitando open .


Plugins


Redesenhada completamente a aparência da seção com plugins no IDE:


Plugins


Controle de versão


Agora, podemos trabalhar com os submódulos Git e mostrar convenientemente solicitações pull do Github:


Janela de solicitação de puxar para o github


Tema de alto contraste


Agora é - tanto para o editor quanto para o IDE (você pode selecionar em Preferences | Appearance & Behavior | Appearance ):


Tema de alto contraste


O que vem a seguir?


Planejamos dedicar a próxima versão inteiramente à correção de problemas. Uma exceção é o suporte para novas versões do Swift. Em geral, mais estabilidade, melhor preenchimento automático com navegação e luz de fundo, menos interferência no trabalho.


Isso é tudo! Como sempre, faça o download - aqui , bugs - para o rastreador , faça perguntas gerais aqui.

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


All Articles