As part of Telerik’s major Q1 2011 release, JustCode arrives with tons of great new stuff. The biggies are Code Cleaning, Decompiling and Options Sharing features. Our brand new Code Cleaning feature allows you to reformat and tidy up your code in a single step. We have been working on an integrated decompiler for quite some time. It allows you to seamlessly browse through decompiled code in referenced assemblies as if it were source. With this release of JustCode you can start doing that without leaving Visual Studio. Applying code style standards across the team is now possible with the new Options Sharing functionality.
The most tedious task for every developer is keeping his code clean and in compliance with the local coding standards. Previously JustCode only allowed you to easily format your code according to some code style settings. This has evolved into a greater concept. In addition to formatting, JustCode lets you choose other additional cleaning steps for removing unused or redundant code, use auto-implemented properties, etc. It is available in C#, VB.NET and JavaScript. The number of code cleaning steps will grow in the future.
Decompile is a new experimental feature of JustCode. It lets you explore compiled managed code directly inside Visual Studio. To use this new feature you need to first navigate to a type metadata decompiled by JustCode. To do so you can use JustCode's Go To Definition command on a type or a member defined in a referenced assembly. Alternatively, you can use the Go To Type command with the Include Library Types option enabled. When you are inside the metadata file you can decompile individual class members:
(the above command does this)
... or entire types:
To further improve your decompiled code browsing experience we made all the relevant JustCode navigation commands available within the decompiled code - Go To Definition, Find/Highlight Usages, Find Inheritors, etc...
Why do we consider this feature experimental? The answer is simple - because it does not always produce the best code possible when decompiling. We like what we have accomplished for this release; so we decided to add it. At the same time, we know that we can improve it further and we are already working on that. Give it a try and please share your experience with us.
Many of you requested that we make it possible for multiple developers, or a team, working on one solution to share some options. Within the new Option Sharing view you can create or edit solution shared options so that everyone working on it has the same code style settings.
When you create solution shared options a new file containing these options is created on your disk in the same folder as the current solution.
In addition to these three monsters we have also improved other parts of JustCode. We added a new “Safe Delete” refactoring and a “Generate Equality Members” code generation. We improved the current code formatter to enable easier code style configuration. We also converted several of our quick-fixes to work in VB.NET and JavaScript. There are a lot of improvements and bug fixes all over the product and you can see the full release notes here.
Very few people know JustCode’s code name - Manticore (“man-eater”). That beast has been raging for more than a year now. The Basilisk (a.k.a. JustMock) joined a while ago to help developers be more productive.
Now two new monsters are approaching – Minotaur and Behemoth. Very soon we will disclose more information about those mythical beasts.
Chris Eargle is a Microsoft C# MVP with over a decade of experience designing and developing enterprise applications, and he runs the local .NET User Group: the Columbia Enterprise Developers Guild. He is a frequent guest of conferences and community events promoting best practices and new technologies. Chris is a native Carolinian; his family settled the Dutch Form region of South Carolina in 1752. He currently resides in Columbia with his wife, Binyue, his dog, Laika, and his three cats: Meeko, Tigger, and Sookie. Amazingly, they all get along... except for Meeko, who is by no means meek.