sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1392195 - in /sis/trunk: sis-build-helper/src/main/java/org/apache/sis/internal/taglet/ sis-build-helper/src/site/apt/ sis-utility/src/site/apt/ src/site/ src/site/apt/
Date Mon, 01 Oct 2012 03:59:19 GMT
Author: desruisseaux
Date: Mon Oct  1 03:59:18 2012
New Revision: 1392195

URL: http://svn.apache.org/viewvc?rev=1392195&view=rev
Log:
Added a "Developing Apache SIS" page, and minor opportunist documentation fixes.

Added:
    sis/trunk/src/site/apt/develop.apt   (with props)
Modified:
    sis/trunk/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/Module.java
    sis/trunk/sis-build-helper/src/site/apt/index.apt   (props changed)
    sis/trunk/sis-utility/src/site/apt/index.apt   (props changed)
    sis/trunk/src/site/apt/download.apt   (props changed)
    sis/trunk/src/site/apt/index.apt   (contents, props changed)
    sis/trunk/src/site/site.xml

Modified: sis/trunk/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/Module.java
URL: http://svn.apache.org/viewvc/sis/trunk/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/Module.java?rev=1392195&r1=1392194&r2=1392195&view=diff
==============================================================================
--- sis/trunk/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/Module.java (original)
+++ sis/trunk/sis-build-helper/src/main/java/org/apache/sis/internal/taglet/Module.java Mon
Oct  1 03:59:18 2012
@@ -114,7 +114,7 @@ public final class Module implements Tag
     }
 
     /**
-     * Returns {@code false} since <code>@module</code> can not be used in constructor
+     * Returns {@code false} since <code>@module</code> can not be used in constructor.
      *
      * @return Always {@code false}.
      */

Propchange: sis/trunk/sis-build-helper/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/trunk/sis-build-helper/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Propchange: sis/trunk/sis-utility/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/trunk/sis-utility/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: sis/trunk/src/site/apt/develop.apt
URL: http://svn.apache.org/viewvc/sis/trunk/src/site/apt/develop.apt?rev=1392195&view=auto
==============================================================================
--- sis/trunk/src/site/apt/develop.apt (added)
+++ sis/trunk/src/site/apt/develop.apt Mon Oct  1 03:59:18 2012
@@ -0,0 +1,144 @@
+                             ------------------------------
+                                       Developing
+                             ------------------------------
+
+
+Opening Apache SIS in an IDE
+
+  While the primarily SIS build system is Maven, the project provides some IDE configuration
files
+  for developers convenience. Before opening the project in an IDE, the source code needs
to be
+  downloaded from the {{{./source-repository.html}source repository}} and the project built
at
+  least once using Maven:
+
++---------------------------------------------------------+
+svn checkout http://svn.apache.org/repos/asf/sis/trunk sis
+cd sis
+mvn install
++---------------------------------------------------------+
+
+
+* NetBeans
+
+  NetBeans can open Maven projects natively. This is the recommended approach for casual
working
+  in a small amount of SIS modules. For extensive work on Apache SIS or for work impacting
many
+  modules, it may be more convenient and faster to open Apache SIS as a NetBeans project.
+  Such pre-configured NetBeans project is available in the <<<ide-project/NetBeans>>>
directory.
+  This project will fetch dependencies directly from the <<<.m2/repository>>>
local directory,
+  and will refer to the resources <<<*.utf>>> files compiled by Maven in
the <<<sis-*/target>>>
+  directories. Consequently it is important to run <<<mvn\ install>>> before
opening the project
+  and after any change in the project dependencies or in the resources.
+
+  Users can customize their project configuration by editing the <<<ide-project/NetBeans/nbproject/private/config.properties>>>
+  file. The <<<private>>> directory is excluded by the versioning system,
so it okay to put
+  user-specific information there. For example in order to overwrite the default location
of
+  the local Maven repository and to define a system property at execution time, one can use:
+
++----------------------------------------------+
+maven.repository = /path/to/my/local/repository
+run.jvmargs = -DmyProperty=myValue
++----------------------------------------------+
+
+
+
+Developing Apache SIS
+
+  Improving and extending SIS requires extensive knowledge of geographic information science,
+  object oriented programming, the Java language, and of the library itself. Contributors
should
+  expect that they will need to learn a great deal before being able to become productive.
+  However, the effort required to become productive should improve the contributor's understanding
+  and knowledge of geographic information systems, of geodetic and geographic science, and
of
+  effective computer programming.
+
+  This document is expected to evolve as the SIS project develops its own mode of operation.
+
+
+
+* Background Knowledge
+
+  All contributors arrive to the project with different knowledge bases, some with scientific
+  backgrounds, some with a background in computer science, and others with geographic backgrounds
+  or even no training in geographic information science at all. By sharing the richness of
our
+  individual backgrounds we have acquired a list of subjects which we consider critical to
fully
+  understanding the SIS project. New contributors are highly encouraged to explore these
+  areas if they have no or little knowledge of them.
+
+
+** Geographic Information Systems and Science
+
+  While a background in the field is not required, it nonetheless proves exceedingly useful
along
+  the way. GIS has developed its own language and has particular concerns which return frequently.
+  Issues of spatial representation, data size, spatial scale, information workflows and other
topics
+  arise frequently and are worth understanding.
+
+  A good general introduction to the field is the book <Geographic Information Systems
and Science>
+  by Paul A. Longley, Michael F. Goodchild, David J. Maguire and David W. Rhind published
in its
+  second edition by John Wiley and Sons Ltd. in 2004.
+
+
+
+** The ISO/OGC Geospatial Model
+
+  SIS builds on the standards developed through a collaboration between the International
+  Organization for Standardization\ (ISO) and the Open Geospatial Consortium\ (OGC).
+  Contributors to SIS should have at least a basic understanding of the model developed in
the
+  ISO\ 19000 series of specifications, starting with the Abstract model and working through
the
+  <Feature> model. While the ISO specifications are sold, the OGC releases its own,
essentially
+  identical versions of standards which have evolved from the collaboration. The OGC specifications
+  are available for the {{{http://www.opengeospatial.org/standards}OGC standards and specification}}
+  page.
+
+  As time progresses, we hope to develop documentation material to introduce the ISO\ 19000
+  specification series.
+
+
+** Object-Oriented Programming in Java
+
+  SIS is a library designed to be used by other programmers. To play this role effectively,
+  SIS must consider the various ways that users can reuse Java code: not only through object
+  instantiation and method calls but also through inheritance. SIS pays special attention
to
+  accessibility constraints ensuring that only the classes and methods which are offered
for
+  use are publicly accessible and that these methods are fully and correctly documented in
javadoc.
+
+  Contributors are highly recommended to read the book <Effective Java> by Joshua Block,
published
+  in its second edition by Addison-Wesley in 2008. The book explains the importance of certain
+  elements in the Java language and discusses subtleties of the language and its use.
+  Most importantly, the book reveals the full scope a programmer must consider when developing
a
+  code library.
+
+
+** Mathematical Background
+
+  SIS frequently deals with complex calculations using relatively simple mathematics of
+  trigonometry and matrix algebra. The coordinate operations of the Referencing modules involve
+  trigonometric transformations on a flattened ellipsoid of rotation, the image transformations
in
+  the Coverage modules and in the Rendering system involve extensive use of Affine transforms,
and
+  the Analytic modules often use their own mathematical operations. These mathematics cannot
be
+  simplified — they reflect the richness of the world around us.
+
+  Affine transformations are not particularly complex but critically important both to the
+  geo-referencing operations of the Referencing modules and to the image transformations
of the
+  Coverage modules. Affines transform coordinates through translation, scaling, rotations,
and
+  shear, though this latter component is used infrequently in the library. Mathematically,
+  affine transformations are usually applied as a matrix operation applied to a coordinate
vector.
+  There are numerous introductions to affine transformations available on the World Wide
Web since
+  the concept is central to all graphics programming.
+
+
+
+* The GeoAPI Interfaces
+
+  SIS is build partially as an implementation of the GeoAPI interfaces. GeoAPI defines a
set
+  of objects offering particular methods thereby providing an interpretation of the ISO/OGC
+  standards in the Java language. GeoAPI therefore defines the core of the model implemented
+  by Apache SIS.
+
+  GeoAPI can most easily be learned by exploring the
+  {{{http://www.geoapi.org/snapshot/javadoc/index.html}GeoAPI Javadoc}}.
+
+
+
+* The SIS library modules
+
+  Contributors should gain a basic understanding of the core library including the separation
into
+  modules, the functionality available in the base module, and the functioning of the modules
of
+  interest.

Propchange: sis/trunk/src/site/apt/develop.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/trunk/src/site/apt/develop.apt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Propchange: sis/trunk/src/site/apt/download.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/trunk/src/site/apt/download.apt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: sis/trunk/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/sis/trunk/src/site/apt/index.apt?rev=1392195&r1=1392194&r2=1392195&view=diff
==============================================================================
--- sis/trunk/src/site/apt/index.apt (original)
+++ sis/trunk/src/site/apt/index.apt Mon Oct  1 03:59:18 2012
@@ -24,6 +24,8 @@ The Apache SIS™ library
 
     * {{{http://builds.apache.org/job/sis-trunk/site/apidocs/index.html}Aggregated Javadoc}}
 
+    * {{{./develop.html}Developing Apache SIS}}
+
     * {{{./code-patterns.html}Recommended code patterns}}
 
     * Developer Guide (English - translation to be provided later) ({{{./book/fr.xhtml}Français}})

Propchange: sis/trunk/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/trunk/src/site/apt/index.apt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: sis/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/sis/trunk/src/site/site.xml?rev=1392195&r1=1392194&r2=1392195&view=diff
==============================================================================
--- sis/trunk/src/site/site.xml (original)
+++ sis/trunk/src/site/site.xml Mon Oct  1 03:59:18 2012
@@ -33,11 +33,11 @@
     <!--     Links to appears just below the right banner     -->
     <!-- ==================================================== -->
     <links>
+      <item name="Apache" href="http://www.apache.org"/>
       <item name="Open Geospatial Consortium (OGC)" href="http://www.opengeospatial.org"/>
       <item name="GeoAPI" href="http://www.geoapi.org"/>
       <item name="Javadoc" href="http://builds.apache.org/job/sis-trunk/site/apidocs/index.html"/>
       <!-- Absolute URL in order to point to the aggregated Javadoc instead than module
Javadoc. -->
-      <item name="Apache" href="http://www.apache.org"/>
     </links>
 
     <!-- ==================================================== -->



Mime
View raw message