26 projects tagged "Refactoring"
Anchor automatically adds curly braces and semicolons to code written in various programming languages, saving typing and making programs easier to read. It lets you pretend to be coding in Python or Lua while actually writing standard C, Java, PHP, C++, .NET, C#, or D. A script may generate files in the target language and invoke the compiler. An example bash script integrates with TCC to make runnable "scripts" with the speed of C. The scripts are easily modified to target another compiler or interpreter.
Autodia is a command line Perl application that generates UML class diagrams from source code, SQL, and database connections. It supports multiple programming languages including SQL, and can output images (using GraphViz/VCG/SpringGraph), Dia XML and Umbrello XML, or custom formats using templates.
Clone Digger is a duplicate code detection tool which supports the Python language. It works on the abstract syntax tree level. Discovered clones can differ in small subexpressions; comments and whitespaces are ignored. The report on found clones is written to HTML in a two-column format with the differences highlighted. Clone digger is platform-independent. It has been tested on several open-source projects and the results indicated that about 12% of their code is covered by clones.
CodeLite is a powerful, cross-platform code editor for the C/C++ programming languages. It is regularly tested on Windows XP sp2, (K)Ubuntu 7.10 and 8.04, Fedora Core 6, Debian lenny and sid, and Mac OS X 10.5.2. CodeLite uses a sophisticated, yet intuitive interface which allows the user to easily create and build complex projects.
DEPS (formerly known as graph-includes) is a set of tools and libraries which allows users to extract dependency information from arbitrary material (e.g. program source files), apply various transformations to this graph, and draw it. It is typically used as helper tool for a refactoring effort, to create a graph of dependencies between groups of source files. Readability and usability of the dependency graphs are currently improved by customizable grouping of several source files into a single node, coloring of nodes belonging to given groups, and transitive reduction of the graph.
The Google Singleton Detector, or GSD, is a tool which analyzes Java bytecode and detects the use of Singletons. It's not quite as simple as that, however. First, GSD doesn't only detect singletons; it detects four different types of global state, including singletons, hingletons, mingletons, and fingletons. Second, it outputs a graph with all these different types of static state highlighted, and shows all the classes that are directly dependent on them. The point of this tool is to allow you to see all of the uses of global state inside a project, as well as how they are all interrelated.