|
CodeOrganizationDevelopment.CodeOrganization HistoryHide minor edits - Show changes to markup April 28, 2011, at 10:17 PM
by
- Changed lines 73-74 from:
Some programs have too many options to list; in which case just list the most common ones and indicate that there are more to:
Some programs have too many options to list; in which case just list the most common ones and indicate that there are more April 21, 2011, at 10:34 PM
by
- Changed line 57 from:
All applications should provide a basic usage when passed the to:
All applications should provide a basic usage when passed the April 21, 2011, at 10:33 PM
by
- Changed lines 14-21 from:
to:
Executables must also provide a Changed line 30 from:
to:
April 21, 2011, at 05:40 PM
by
- Changed lines 77-78 from:
Detailed description of what the program does to:
Detailed description of what the program does Changed lines 82-83 from:
Complete listing of options with explanation of their syntax and function to:
Complete listing of options with explanation of their syntax and function Changed lines 85-86 from:
Who wrote the program or a substantial portion thereof to:
Who wrote the program or a substantial portion thereof Changed lines 88-89 from:
Other programs of interest to:
Other programs of interest Changed lines 91-92 from:
Formerly bugs, but more general. Includes known bugs, limitations, or common misconceptions to:
Formerly bugs, but more general. Includes known bugs, limitations, or common misconceptions Added line 95:
The HTML man pages are auto-generated nightly - but new man pages need to be added to the Wiki. If you commit a new command, update the Wiki command list to point to the HTML version of that man page. April 21, 2011, at 05:38 PM
by
- Added lines 60-93:
Man pages are written in NROFF. Check how your man pages look when you type NAME program - One or two sentence description of what the program does SYNOPSIS program -mandatoryOption <arg> [-notMandatory <arg>] [...] Some programs have too many options to list; in which case just list the most common ones and indicate that there are more EXAMPLES Some common examples with a brief explanation DESCRIPTION Detailed description of what the program does OTHER SECTIONS AS NECESSARY OPTIONS Complete listing of options with explanation of their syntax and function AUTHORS Who wrote the program or a substantial portion thereof SEE ALSO Other programs of interest CAVEATS Formerly bugs, but more general. Includes known bugs, limitations, or common misconceptions April 14, 2011, at 05:24 PM
by
- Changed lines 55-56 from:
All applications to:
All applications should provide a basic usage when passed the Added lines 59-60:
April 14, 2011, at 05:17 PM
by
- Changed lines 9-10 from:
The code itself is written in Java and should adhere to the principles of object-oriented design. to:
Changed lines 34-35 from:
Other modules are arranged by theme to:
Other modules are arranged by theme. These classes should not have main methods (a couple currently do, eg AnalyzeHeader / Nifti1Dataset), they should be objects with a well-defined and documented API. We don't have well-defined coding standards, but Effective Java by Bloch has some good guideines. Added lines 44-45:
Applications should be documented with command-line usage, man pages, and online tutorials as appropriate. All classes should be documented with Javadoc for all methods. Added lines 48-52:
By default, public, package and protected methods will appear in the javadoc. Private methods should be documented in the code with a Javadoc comment, but this is more for the benefit of people coding the class itself. You can build the Javadoc with Added lines 54-55:
All applications April 13, 2011, at 10:39 PM
by
- Changed lines 7-8 from:
Camino users interact with the commands in the to:
Camino users interact with the commands in the Changed lines 13-19 from:
Apps have a special structure to accomodate Matlab wrapping and provide a consistent user interface. All applications should extend the
EntryPoint etc. to:
Apps have a special structure to accomodate Matlab wrapping and provide a consistent user interface. All applications should extend the
Once you've written an app, you need to add it to the java [options] EntryPoint AppName [options]
April 13, 2011, at 10:14 PM
by
- Changed lines 13-17 from:
Apps have a special structure to accomodate Matlab wrapping and provide a consistent user interface. All applications should extend the Executable class. to:
Apps have a special structure to accomodate Matlab wrapping and provide a consistent user interface. All applications should extend the
April 13, 2011, at 09:05 PM
by - April 13, 2011, at 07:48 PM
by
- Changed lines 13-14 from:
Apps to:
Apps have a special structure to accomodate Matlab wrapping and provide a consistent user interface. All applications should extend the Executable class. EntryPoint etc. Changed lines 28-34 from:
to:
JavadocUsageMan pagesChanged lines 37-38 from:
Please see the test page for information about tests. Avoid embedding test code in the main methods of classes, or by writing test classes inside the packages themselves. For application tests, write a real-world use of the class and place it in ScriptTest. For unit tests, use the JUnit framework in the test directory. Java packages are virtual, you have the same access to package / protected methods in to:
Please see the test page for information about tests. Avoid embedding test code in the main methods of classes, or by writing test classes inside the packages themselves. For application tests, write a real-world use of the class and place it in ScriptTest. For unit tests, use the JUnit framework in the test directory. Java packages are virtual, you have the same access to package / protected methods in April 13, 2011, at 07:39 PM
by
- Changed lines 7-9 from:
Camino users interact with the commands in the to:
Camino users interact with the commands in the The code itself is written in Java and should adhere to the principles of object-oriented design. Changed lines 13-14 from:
to:
Apps Changed lines 17-18 from:
to:
Other modules are arranged by theme Changed lines 21-25 from:
Compilation is performed via a Makefile. Each class in Alternatively, you can do to:
Compilation is performed via a Makefile. Each class in Changed line 29 from:
Please see the test page for information about tests. Avoid embedding test code in the main methods of classes, or by writing test classes inside the packages themselves. Java packages to:
Please see the test page for information about tests. Avoid embedding test code in the main methods of classes, or by writing test classes inside the packages themselves. For application tests, write a real-world use of the class and place it in ScriptTest. For unit tests, use the JUnit framework in the test directory. Java packages are virtual, you have the same access to package / protected methods in April 13, 2011, at 06:51 PM
by
- Changed lines 7-9 from:
Camino users interact with the commands in the bin/ directory. These are executable files that may call one or more Camino program. Currently, most of the executables are bash scripts that do some simple system checks and then forward the arguments to a Camino command. New scripts should be written in bash, though we may allow other scripting languages later. to:
Camino users interact with the commands in the Added lines 13-15:
Other modulesChanged lines 18-22 from:
to:
Compilation is performed via a Makefile. Each class in Alternatively, you can do Changed line 28 from:
Do not embed testing code in the main to:
Please see the test page for information about tests. Avoid embedding test code in the main methods of classes, or by writing test classes inside the packages themselves. Java packages April 13, 2011, at 04:47 PM
by
- Added line 13:
CompilingApril 13, 2011, at 04:18 PM
by
- Changed lines 7-8 from:
Camino users interact with the commands in the bin/ directory. These are executable files that may call one or more Camino program. Currently, most of the executables are bash scripts that do some simple system checks and then forward the arguments to a Camino command. to:
Camino users interact with the commands in the bin/ directory. These are executable files that may call one or more Camino program. Currently, most of the executables are bash scripts that do some simple system checks and then forward the arguments to a Camino command. New scripts should be written in bash, though we may allow other scripting languages later. Changed lines 15-20 from:
Documentationto:
DocumentationTestingDo not embed testing code in the main March 30, 2011, at 07:54 PM
by
- Added lines 1-14:
Camino code organization and standardsThis page describes in detail how Camino code is (or should be - work in progress) organized. The user interfaceCamino users interact with the commands in the bin/ directory. These are executable files that may call one or more Camino program. Currently, most of the executables are bash scripts that do some simple system checks and then forward the arguments to a Camino command. Applications (apps)Documentation |