AppCode 2.5.5 bug-fix update is available

Hi,

In this update we’ve improved compatibility with the latest Xcode beta releases, fixed a couple of problems and resolved some memory issues.

In particular, we fixed a problem where in some rare cases XCTestCase subclasses might not have been recognized by AppCode as test classes (OC-9252). We also fixed image blurring effect on zoom-in in the image viewer (IDEA-98635).

The full list of changes is available here, and you can download the build from our website or via ‘Check for updates’ AppCode menu.

Develop with pleasure!
The AppCode Team

Posted in Announcement | 2 Comments

More than Objective-C IDE

AppCode is known as an intelligent Objective-C IDE that helps iOS/OS X developers create outstanding apps with ease and pleasure. It provides you with all the advantages of coding assistance, refactorings, project navigation, code analysis and more. But did you know that all of these are available not only for Objective-C?
Well, you may have heard AppCode can deal with C and C++ with the addition of several specific features like C++11, libc++ and Boost support. But, you hardly knew that you can also develop HTML, XML, JavaScript and CSS parts for your application in AppCode. Or did you?

C/C++
You can simply use all the features of AppCode IDE for C and C++: the smart editor’s features together with intelligent and reliable refactorings, code analysis and quick fixes, project navigation and debugging, quick documentation support and Unit Testing (including Google Tests).
With simple Cmd+N for example you can generate getters/setters and constructor/destructor for the class or even implement and override methods.
Press Cmd+N in a class, select what you want to generate, press Enter, see the result:
getter_setter_generation
Continue reading

Posted in Tips'n'Tricks | 2 Comments

JetBrains C++ IDE: Status update & Video report

We know many of you are waiting for a cross-platform C++ IDE we announced some time ago, as we’ve received quite a few applications for a private preview. We were really impressed with your feedback and increasing eagerness concerning our new IDE, and we want to update you on the current state of its development.

The private preview build for some early birds (whose projects are covered with the capabilities already available in the preview) is just around the corner. The feature list for the upcoming build includes the most important and relevant items:

  • CMake + GCC + GDB7.
  • Application development for any platform: Linux, OS X, or Windows (Cygwin, MinGW).
  • C++11 support (including lambda functions, raw string literals, variadic templates, decltype, auto and more).
  • Code analysis and many suggested quick-fixes.
  • Refactorings (extract method/variable/typedef/define/etc., change signature, rename, safe delete, and others).
  • Code generation and templates.
  • Preprocessor support (so that all useful features can help with macros too).

Clang/LLDB support is planned for the next EAP builds.

And now please welcome the introductory video:

Stay tuned!
The AppCode and C++ IDE Team

Posted in Announcement | 298 Comments

AppCode inspections for your code perfection

AppCode helps you keep your code accurate and clean and does so as you type so you don’t need to interrupt your coding process. This is what the inspection mechanism is about. If you’re not familiar with this mechanism, you can read our tutorial that describes the essential principles. In this post we’d like to focus on some of the issues where AppCode’s code inspections can help you.
The full list of inspections includes over 100 items, but here we’ll point out a few of the most interesting and useful ones. Do not hesitate to go to Preferences | Inspections for the full list.

Hides class scope
When the codebase is big and complicated sometimes you may create a local variable or parameter with the name of an existing instance variable. This can produce problems if not done on purpose. The “Hides class scopes” inspection helps you to pay attention to such places:

AppCode will suggest solutions (Alt+Enter), like for example rename the parameter.

Continue reading

Posted in Tips'n'Tricks | 7 Comments

Julian Król’s Take on AppCode

Julian KrólThis guest blog post is from Julian Król, Software Engineer at MiQUiDO, a JetBrains Training and Consulting Partner.

He has been developing iOS apps for more than a year and a half at MiQUiDO and continues to find it very exciting. Julian is on LinkedIn.

In my daily programmer’s life I use AppCode. I started using it more than a year and a half ago after being encouraged by a colleague to try it. In the beginning I was a bit skeptical, but as time passed I discovered many of its nice features. Right now, I cannot imagine developing apps for iOS without AppCode. Let me share with you some of the reasons why I like it so much. All of the amenities described below come with version 2.5.4.

Find Usages

AppCode provides a very convenient way to find any usage of a method, a class or a variable. It is especially helpful during debugging, refactoring or just familiarizing yourself with the code. Select ‘the thing’, that usage you want to find, and click Alt+F7.

Rename

If you decide to change the name of a variable, method, or whatever else even a group, it simplifies the whole process to the maximum. Select the ‘identifier’ you want to rename and click Shift+F6. The identifier will have a red border while renaming and when you will be happy with a new name, just click enter and it is done. Simple, am I right?

VCS Integration

When we work in a team we always use version control tools and AppCode has the functionality to help us. While making changes AppCode not only indicates the files that have been changed since the last commit, but it does a lot more. It indicates the fragments of code in a file that has been modified. Moreover, the developer can even check how a changed fragment looked before we started messing around with it – very useful.

Code Generation

From time to time while doing apps for iOS I use a singleton design pattern. AppCode has a great feature to do this. Select class name click Ctrl+Enter and select on the pop up +instance option.

I don’t know an easier way to create a singleton. Apart from that, the IDE has a bunch of nice code templates. Do you like ‘for each‘ loops? If yes, then you should try this – type ‘each‘ and press ‘tab‘. There are more for you to try out. Take a look at the list of available live templates under Preferences | Live Templates.

Resources Completion

Another feature I appreciate in AppCode is the suggesting of resources file names while typing. If you want to add some UIImage and you start typing a filename you will see a small context menu with possible images you want to use. This is helpful enough as I never remember all the image’s names. If you mistype a file name or type a filename that does not exist in a project resources, AppCode will let you know.

Normally when I do something, I’m using a few files to complete my task. Sometimes they are pretty far away from each other in the project hierarchy. No worries, AppCode has something for you. Click cmd+E and see a list of recently opened files. Mostly we jump to the file we closed last, so this is the one highlighted in that pop up.

Debugger

An extremely important thing for a developer is a debugger. AppCode’s debugger is perfect. It is done in the way that reviewing variables’ value is very clear. But what I really like is the possibility to evaluate expressions if only it can be calculated at that time.

There are a few more things I want to mention. AppCode advises the developer on ways to simply conditional statements. Sometimes, something’s are so simple that we don’t see it. Moreover, AppCode will grey out a fragments of code that will never be reached and indicate imports that we really do not need.

I could mention many more features but I have decided to let you discover them on your own. If you develop iOS apps and you have never used AppCode before, I think you should give it a chance as this change might boost your development and make it easier and more convenient. I know that many of the features are available in other IDEs but I like the way it is done in AppCode. To get to know more features, you can visit this page.

I’m not a big fan of ‘drag and drop’ coding style but developers who use it a lot will miss it at least in this version. Maybe in the future JetBrains team will add this feature as well.

MiQUiDOMiQUiDo is a fast growing, international studio focused on creating innovative and compelling mobile solutions for Android, iPhone, iPad and Google TV. Based in Poland and the Philippines, the company offers software development services for businesses all over the world, providing start-ups and mature businesses with comprehensive, high quality mobile products.

MiQUiDo provides mobile technologies trainings and consulting services. Contact us to learn how to use JetBrains tools for mobile application development.

Posted in Uncategorized | 6 Comments

AppCode Night in Tokyo, December 17th

We are pleased to invite you to a unique event, AppCode Night, which will take place December 17th in Tokyo, Japan!

A number of software developers are gathering to share their hands-on experience with AppCode, showing some tips’n’tricks, and discussing various aspects of iOS development with an alternative IDE.

Are you curious? Take a look at the outline:

Naturally, there will be great company, fruitful discussions, beer and some prizes from AppCode, so make sure you don’t miss it!

For the location and complete details, please refer to the official meetup page.

Please Note: All talks will be in Japanese.

Many thanks to Yusuke, our friend and an authorized JetBrains reseller in Japan for organizing the event!

Sincerely,

The AppCode Team

Posted in Announcement | Leave a comment

AppCode 2.5.4 bug-fix update is available

In this build we have fixed one critical regression: project was not built if the device name contained special characters: OC-8869.

As usual, you can download it from our site or by clicking ‘Check for updates’ in AppCode’s menu.

Develop with pleasure!
The AppCode Team

Posted in Announcement | Leave a comment

JetBrains C++ IDE: News, Plans and More

A while ago we announced that we were working on a cross-platform C++ IDE, and most of you have already seen the features list for it. Since then we have received a number of questions about this mysterious IDE, what it will support and when you will finally be able to see it. Well, we’ve got some news for you!

No, we don’t have specific release dates or any public early access builds at this point. But we can give the first private preview builds to a group of people to play with, once we have them naturally. Your feedback and comments will greatly help us to roll out the new IDE quicker, and you can be one of the first ones to try it.

Sounds intriguing? If you do feel like being an early bird, simply fill out this form to subscribe. Please take a moment to answer the questions about the project(s) you’re involved with, as it will help us pick the first group of lucky candidates and get a better idea of what you may need from a C++ IDE in the future.

Stay tuned for updates!

Yours truly,
The AppCode Team

Posted in Announcement | 50 Comments

UI Designer plugin for AppCode is available in early preview

! Update: AppCode 3 released with an integrated UI Designer !

We have exciting news for all Objective-C developers who use AppCode as their IDE of choice—for some time we’ve been working on one of the most desired features: UI Designer.

Today we are going to share with you the first early preview of it. For now, it is available as a plugin which you can already download and play with. The work is still in progress, and at the moment there are some limitations, for instance, plugin only supports .xib format for iOS platform from Xcode 3 up to Xcode 4.6. Support for .xib format for iOS platform from Xcode 5, .xib format for OS X and .storyboards is on its way.
Now, here’s a number of things that you can already do with the plugin:

  • Adding new component to Canvas or Component Tree with one click.
  • Move, Delete, Copy and Paste operations within Canvas and Component Tree.
  • Powerful Properties Editor allows editing any number of selected components.
  • Component Tree, which shows the hierarchy of components.
  • Component Palette with all the components supported by iOS SDK.
  • Creating/editing/deleting connections between components.
  • Creating outlet or action for a component in an Objective-C class that is specified for File Owner.
  • AutoLayout support.

Watch this short overview of AppCode UI Designer in action:

Installation instructions:

  • Update AppCode to 2.5.3.
  • Open Preferences | Plugins and click Browse repositories… button, then use Manage repositories… button to add the following custom plugin repository: http://www.jetbrains.com/updates/appcode-updates.xml
  • Find AppCode UI Designer plugin in the list and click Download and Install button
  • Restart AppCode.
  • Enjoy!

The plugin is still under construction, and we need your feedback on it. We encourage you to try the new UI Designer and tell us what you think via forums or tracker.

Sincerely,
The AppCode Team

Posted in Announcement | 22 Comments

AppCode 2.5.3 bug-fix update is available

Hi,
a new AppCode bug-fix update is ready. In this update we have fixed several major problems. Among them:

  • OC-8608: AppCode 2.5 sometimes was rewriting the Xcode project file
  • OC-8800: Built products were not found for the test targets

Also we have improved the code completion for methods: closing square brackets are now correctly over-typed.

Here is the complete list of changes.

As usual, you can download it from our site or by clicking ‘Check for updates’ in AppCode’s menu.

Develop with pleasure!
The AppCode Team

Posted in Announcement | Leave a comment