| <?xml version='1.0' encoding='UTF-8' ?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <chapter id="index"> |
| <section id="intro"> |
| <title>Introduction</title> |
| |
| <para>This document aims to help new geotools developers get up to speed |
| and track practices of existing developers in order to keep the project |
| consistent.</para> |
| |
| <para>If you feel something is missing, feel free to contribute a new |
| section.</para> |
| </section> |
| |
| <section id="design"> |
| <title>Design</title> |
| <figure> |
| <title>Geotools Logo</title> |
| <mediaobject> |
| <imageobject> |
| <imagedata fileref="images/developersguide/geotools_logo.png" |
| format="PNG"/> |
| </imageobject> |
| <textobject><phrase>Geotools Logo</phrase></textobject> |
| </mediaobject> |
| </figure> |
| |
| <para>To do: Explain</para><itemizedlist><listitem><para>Key design structure |
| (core interfaces, data sources, rendering, tools)</para></listitem><listitem><para>Design |
| Drivers (Our design goals: modular, derives structure from netbeans, |
| support multiple version of java, ..)</para></listitem><listitem><para>Directory |
| structure</para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section id="development"> |
| <title>Development</title> |
| |
| <section id="building"> |
| <title>Building</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>using ant</para></listitem><listitem><para>what |
| ant checks</para></listitem><listitem><para>insert the |
| "howto-build.html" doc into here</para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section id="cvs"> |
| <title>Code Versioning (using CVS)</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Point to sourceforge CVS howto |
| links.</para></listitem><listitem><para>Also point to some HOWTOs for |
| windows users.</para></listitem><listitem><para>What is acceptable to |
| commit to CVS, what is not. (Ie, code should compile)</para></listitem><listitem><para>Talk |
| about version numbering convention, use of branches, etc (if we decide |
| to do this).</para></listitem></itemizedlist> |
| |
| <para>To do:</para> |
| </section> |
| |
| <section id="CodingStandards"> |
| <title>Coding Standards</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Using Sun's coding |
| standard, need to note any exceptions to it.</para></listitem><listitem><para>Note |
| the auto checking of coding standards.</para></listitem><listitem><para>Javadocs</para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section id="templates"> |
| <title>Template File</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Provide a template file.</para></listitem><listitem><para>Link |
| it to sections explaining the different parts of the template.</para></listitem><listitem><para>Include |
| headers, footers, example logging, example coding style, CVS key tags, |
| sample javadocs.</para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section id="logging"> |
| <title>Logging</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Talk about log4j, links to</para></listitem><listitem><para></para></listitem><listitem><para></para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section id="testing"> |
| <title>Testing</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Explain use of junit. Might be |
| a link to another web site.</para></listitem><listitem><para></para></listitem><listitem><para></para></listitem><listitem><para></para></listitem></itemizedlist> |
| </section> |
| |
| <section> |
| <title>Documentation</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Talk about docbook, why we |
| decided to use it (most commonly used format of LDP, converts to |
| multiple formats, tools coming which can support it. Need to mention |
| which version of docbook we are using.</para></listitem><listitem><para>Mention |
| tools that can be used.</para></listitem><listitem><para>Links to |
| docbook references.</para></listitem><listitem><para>Process for |
| updating this document.</para></listitem><listitem><para>How to use ant |
| tools to build doc.</para></listitem></itemizedlist> |
| </section> |
| </section> |
| |
| <section id="tools"> |
| <title>Development Tools</title> |
| |
| <section id="netbeans"> |
| <title>Netbeans</title> |
| |
| <para>To do:</para><itemizedlist><listitem><para>Where to get it.</para></listitem><listitem><para>Aim |
| is to make geotools a module within Netbeans</para></listitem><listitem><para>How |
| to setup getools to fit the multiple directory structure</para></listitem><listitem><para>The |
| extra Netbeans modules that are useful and should be downloaded.</para></listitem></itemizedlist> |
| </section> |
| </section> |
| </chapter> |
| |