Telerik blogs

It's my pleasure to announce the youngest member of the Telerik product family - JustCode, a code analysis and refactoring tool. Actually "youngest" is not the most correct word to use because JustCode was born more than 5 years ago but "adopted" by Telerik in March, this year.

In March Telerik acquired the JustCode product from the German-based company, Omnicore, and the founders of the company (and also the creators of the product) joined Telerik to help us take the tool to the next level.
A few words about the founders of Omnicore; these are brilliant guys with lots of expertise in the code analysis domain (there is even a PhD candidate in code analysis!). They created one of the first IDEs with solution-wide on-the-fly code analysis (i.e. errors and warnings on-the-fly) back in 1998. It was a Java IDE but... they have long since come to see the .NET light. :).

Next, let me address what is likely the first question on everyone’s mind now that Telerik has announced a new developer productivity tool. How is JustCode better than similar tools on the market?
The short answer is JustCode provides really fast, on-the-fly, solution-wide errors and warnings. This means that whatever you do, like modifying the current opened file, doing a "Get Latest” from the source control, removing or adding new files to the solution and so on, you'll get a complete list of the solution's errors and warnings. And not only for the current opened files!

JustCode Errors Window

JustCode does this for all supported languages, which today are: C#, VB.NET, ASP.NET, HTML, XAML, and JavaScript. It's like having a compiler running all the time with the only difference being that JustCode runs much, much faster and requires less CPU time.
JustCode's code analysis engine also runs in a separate process (outside of Visual Studio’s devenv.exe) and communicates with the JustCode add-in hosted inside Visual Studio only when necessary. This ensures that JustCode does not impact the performance of Visual Studio. Competing products usually turn their solution analysis feature off by default because they perform so slowly and so heavily tax Visual Studio’s performance. JustCode is many times faster than these products, only taking seconds to update the errors and warnings list, even for some really large solutions (benchmarks coming soon).

JustCode's features can be separated in several categories - Code Analysis, Code Navigation, Code Generation, Refactoring, Quick Fixes, Code Formatting and Code Templates. You can find more information on the product page or in the online documentation. We'll be publishing many new blog posts over the next few weeks to cover the most interesting things from each category.
All the features from these categories work "across" the different languages used in one solution. For example, if a VB.NET project has a reference to a C# project and you're doing some refactorings on the public API of the C# project, the VB.NET code will be changed accordingly. The same applies for scenarios where, for example, you use "languages" like ASP.NET or XAML. With JustCode you can successfully rename directly from the ASP.NET / XAML file and the changes will be reflected in the codebehind.

JustCode ASP.NET

You can also use the code navigation features to navigate to identifier declarations and usages both in codebehind files (C# / VB.NET) and in the respective ASP.NET / XAML files.

If you watched the "Guess the Product” video that we published about 2 months ago on Telerik TV you may have noticed us mentioning JavaScript. So, the next logical question likely on your mind is how does JustCode help me with my JavaScript development?
JustCode takes JavaScript productivity to new levels. JustCode will show you JavaScript errors and warnings (mostly semantic errors, but still on solution-wide level), will provide quick fixes for fixing missing character problems, will provide several refactorings like rename, introduce variable, inline variable, etc.

JustCode JavaScript refactorings

will provide navigation features like Go To Definition, Find Usages, Highlight Usages, Go To Member, Go To Symbol, etc.

JustCode JavaScript code navigations

and will provide some additional JavaScript formatting options. Moreover, the code templating engine works for JavaScript, too. For now we haven't included any JavaScript templates, but this is something we will be improving in the next few months. Of course, we can’t do as much for JavaScript as we can for C# or VB.NET, but we think once you spend some time with our JavaScript support you’ll find it indispensable.

We also stated in our JustCode teaser video that we’re delivering a "simple and clear" UI. What does that mean?
We've tried to keep the dialogs to a minimum in JustCode and not interfere in any way in your normal development habits. For example, this is what you'll see when you want to rename a class:

JustCode rename

You type the new name directly in the editor, no dialogs. It’s like you haven’t even run a refactoring tool! We've gone even further for local renames. In that case, you see all the occurrences in the editor changing as you type:

JustCode rename

The behavior is similar for the other refactorings like "Move Or Delete Parameter", "Extract Method", etc., for the code templates, for the quick fixes and so on.

The current version of JustCode supports both Visual Studio 2005 and Visual Studio 2008. We decided to build JustCode on .NET 3.5 SP1 in order to take full advantage of the latest framework features, but this in no way impacts the version of the framework you can use to develop your projects.

Finally, even though we've been dog-fooding JustCode in all of our development teams at Telerik, and we’ve also tested it with some other large codebases, we decided to release the first version of JustCode as a beta. We will work quickly over the next few months to fix all reported problems and then officially release v1 as part of Q1 2010 release. With your feedback, we'll make JustCode the perfect .NET coding productivity for Visual Studio that delivers unmatched performance and (eventually) unmatched features.

We have some pretty aggressive plans for JustCode, and the next beta is planned for mid-January. In the meantime, we also plan to release bi-weekly builds with the latest bug fixes and new features. Thanks to the JustCode's Auto Update functionality, you won't miss a build that fixes some problems you've reported or that adds some new cool features. We also plan to start working on the Visual Studio 2010 support immediately and hopefully the fist bits for it will be available in January too.

JustCode's installation takes about a minute, so you've got nothing to lose. Download the beta today and just code faster :)


About the Author

Hristo Kosev

 

Comments

Comments are disabled in preview mode.