<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1"> <title>Software::JRefactory</title> </head> <body> <p> <table border="0"> <tbody> <tr> <td width="150" align="left" valign="top" rowspan="3" bgcolor="#dddddd"> <img src="JRefactory.jpg" alt="Author: Mike Atkinson"> <a href="chrissoft.html">Software</a> <br> <ul> <li> <a href="cspretty.html">Pretty Printer</a> <br> </li> <li> JRefactory<br> </li> <li> <a href="csprint.html">Printing</a> <br> </li> <li> <a href="cselixirext.html">Elixir Extensions</a> <br> </li> <li> <a href="cslineno.html">Line Numbering</a> <br> </li> <li> <a href="csmetrics.html">Metrics</a> <br> </li> <li> <a href="csstub.html">Stub Generator</a> <br> </li> <li> <a href="csdevutil.html">Dev Utilities</a> <br> </li> <li> <a href="csr-roadmap.html">Roadmap</a> <br> </li> <li> <a href="csrtodo.html">Requested Features</a> <br> </li> </ul> <a href="csr-releasenotes.html">Release Notes</a> <br> <a href="chrisdown.html"><b>Download</b></a> <br> <b><a href="authors.html">Contributors</a></b> <br> </td> <td width="35" align="left" valign="top"> <p><a href="ant-task.html"><img src="left.gif" width="30" height="30" align="bottom" alt="Previous Page" border="2"></a> </p> </td> <td align="center"> <h2 align="center">Software::JRefactory </h2> </td> <td width="35" align="right" valign="top"> <p align="right"><a href="csr-moveclass.html"><img src="right.gif" width="30" height="30" align="bottom" alt="Next Page" border="2"></a> </p> </td> </tr> <tr> <td colspan="3"> <h3>JRefactory</h3> <p>This software supports 15 refactorings. For details of what these refactorings do and how they are implemented, please click on the links below.</p> <ul> <li> <a href="csr-moveclass.html">Repackage or move class</a> </li> <li> <a href="csr-renameclass.html">Rename class</a> </li> <li> <a href="csr-addparent.html">Add an abstract parent class</a> </li> <li> <a href="csr-addchild.html">Adds a child class</a> </li> <li> <a href="csr-removeclass.html">Removes a class</a> </li> <li> <a href="csr-extractinterface.html">Extracts an interface</a> </li> <li> <a href="csr-pushupfield.html">Push up field</a> </li> <li> <a href="csr-pushdownfield.html">Push down field</a> </li> <li> <a href="csr-renamefield.html">Rename Field</a> </li> <li> <a href="csr-pushupmethod.html">Push up method</a> </li> <li> <a href="csr-pushupabstractmethod.html">Push up abstract method</a> </li> <li> <a href="csr-pushdownmethod.html">Push down method</a> </li> <li> <a href="csr-movemethod.html">Move method</a> </li> <li> <a href="csr-extractmethod.html">Extract method</a> </li> <li> <a href="csr-renameparam.html">Rename Parameter</a> </li> </ul> <h4>GUI</h4> <p>The UML diagrams are reverse engineered from the .java files, so there is no fear that they will get out of date. The class diagrams are the main interface to the system. The user inteface for the refactory is described <a href="csr-gui.html">here</a>. </p> <p>The refactoring tool now supports the <a href="csr-undo.html">Undo</a> operation.</p> <h5>Saving Diagrams</h5> <p>Selecting save from the menu option will save a particular diagram. Selecting save from a package selector window will save all diagrams.</p> <p>All diagrams are also saved on exit.</p> <h5>Reloading/Updating Diagrams</h5> <p>You can reload the class diagrams by pressing the reload button on the package selector. This will scan through the directory tree and update any classes where the .java file has changed and add new classes into the diagrams. Invoking this method saves all diagrams.</p> <h4>Printing and Images</h4> <p>Click <a href="csr-output.html">here</a> to learn more about printing and generating JPG images from the class diagrams.</p> <h4>IDEs</h4> <p>The refactory tool currently supports the following IDEs:</p> <ul> <li><a href="csr-commandline.html">Command line operation</a> </li> <li><a href="csr-jedit.html">jEdit 4.2</a> </li> <li><a href="csr-jbuilder.html">JBuilder9</a> </li> <li><a href="csr-netbeans.html">NetBeans</a> - Extract Method Only. The UML diagrams and other refactorings are available through the command line interface. </li> </ul> <p>Support for other IDEs is planned for the future. </p> <h4>Metrics</h4> <p><a href="csr-metrics.html">Metrics</a> are also available from the refactory gui.</p> <h4>Third party Tools</h4> <p>This software supports loading the class diagrams for the JDK and other third party tools. To do this, you need the source code. The software generates a skeleton of the class diagrams to allow more rapid loading. For more information, click <a href="csr-thirdparty.html">here</a>.</p> <h4>Release Notes</h4> <p><a href="csr-releasenotes.html">Here</a> are the release notes.</p> <h4>Future</h4> <p>I will probably try to implement move method next.</p> <p>I still would like to integrate this with various editors, but I need some help from people who use these editors all the time. If you want this for Visual Age or Visual Cafe or something, please <a href="mailto:seguin@acm.org">e-mail</a> me.</p> <table border="1"> <tbody> <tr> <td> This software tool was developed to research how people use refactorings. The latest version creates a small log file called <em>log.txt</em> in your home directory (jrefactory.home if specified). This file contains an ID number of the refactoring returned, and the date and time when it occurred. Please e-mail me this file on a monthly basis if you are willing to participate in a study on the use of refactorings. <p> Thanks! </p> </td> </tr> </tbody> </table> </td> </tr> <tr> <td width="35"><a href="ant-task.html"><img src="left.gif" width="30" height="30" align="bottom" alt="Previous Page" border="2"></a></td> <td align="center"> <p align="center"><font size="2" color="#aaaaaa">Last Modified: October 7, 2003</font> </p> </td> <td width="35" align="right"> <p align="right"><a href="csr-moveclass.html"><img src="right.gif" width="30" height="30" align="bottom" alt="Previous Page" border="2"></a> </p> </td> </tr> </tbody> </table> </p> </body> </html>