📜 ⬆️ ⬇️

AppCode 2017.1: improved Swift support, new code generation features, and more

Hi, Habr! We recently released AppCode 2017.1, now we are preparing the first update - it's time to tell about all the changes in this version.


Swift


Language support


We have implemented support for many changes in Swift 3, among which we especially want to mention:


A complete list of changes can be found here .

In addition, we implemented support for meta-types , learned how to correctly handle nullability audited regions and nullability attributes in Objective-C, and improved the super.init() for super.init() and self.init() .

Create from usage


In the previous version, we implemented the ability to create variables, functions, methods, and even class properties from their uses. And in this we did the same for types (classes, structures, enums, protocols) and their initializers:



Override / Implement


Override / Implement ( ^O / ^I ) allows you to generate definitions for several methods of a class or protocol at once. In AppCode 2017.1, we made the Override / Implement dialog for Swift more convenient, and the code generation more correct:


Autocompletion


Now AppCode can filter the list of autocompletion for methods and functions not only by their names, but also by the names of their parameters:



In addition, we have added the keywords dynamic , lazy , postfix , prefix and indirect to the autocompletion list, where necessary.

Structure view


We were asked to add a display of comments like //MARK , //TODO and //FIXME for Swift to the Structure view ( ⌘7 ) and the File Structure popup-window ( ⌥F12 ), and here we did it:



If you only need a list of //TODO and //FIXME , you can, as before, use the TODO view ( ⌘6 ):



C ++


By tradition, improvements in C ++ support implemented by the CLion team are also available in AppCode. You can read about them in this post in section C ++ 14 and C ++ 17 .

IDE


Build messages


In the message window of the assembly ( ⌘0 ), you can filter messages by type:



Xcode-like breakpoints


By default, clicking on the breakpoint in IntelliJ products removes it, which can sometimes interfere (for example, if the breakpoint is triggered in the event of a certain condition specified in its settings). Now you can avoid this situation by selecting Drag to the editor area in the Preferences | Preferences | Build, Execution, Deployment | Debugger | Remove breakpoint:



Emoji Support


Like all JetBrains products, AppCode now correctly displays emoji in the code editor and various IDE windows:



Find in Path


The Find-Path full-text search window has changed - the interface has become more concise, the need to switch between several tabs in the window has disappeared:



Demo


A small demo (in English) with a demonstration of new features from our developer lawyer Phil Nash:


That's all - read about other features of the product on our website , stay tuned to our English-language blog , and ask any questions you may have in the comments to this post.

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


All Articles