"Drill down into your Code - Software Quality via Code Queries in SemmleCode"
Google Tech Talks
November, 5 2007
Need a precision drill to unearth forgotten parts of your code base? Like to enforce coding conventions for clients of your API? Want to monitor code quality with metrics? Wish to implement a quality gate before check-ins that stops common bug patterns?
SemmleCode is a new, 100% free Eclipse plugin that encapsulates all these tasks as simple "code queries". It stores your project in relational form, and you can explore those relations to answer questions about your code.
SemmleCode ships with a large library of queries for common tasks, which you can use out of the box. Results can be visualised in many ways, including charts and graphs, all with links to the source. This talk starts by showing you that out-of-the-box functionality, and how it helps to improve quality with no effort at all.
The next level of using SemmleCode is to modify existing queries to implement new checks of your own. It is very easy to do that, since SemmleCode uses an intuitive object-oriented query language called .QL. .QL is tightly integrated in Eclipse, with full content-assist, syntax highlighting, and so on. In the talk, that functionality is illustrated by tailoring some queries to well-known open source projects.
The third and ultimate level of using SemmleCode is to write new query libraries of your own. These typical...