Difference between revisions of "Org.simantics.databoard"

From Developer Documents
Jump to navigation Jump to search
m
m
 
(41 intermediate revisions by the same user not shown)
Line 1: Line 1:
DataBoard is a software library built upon a simple but well formulated and expressive type system. The design is a compromise of expression power, advanced functions, and performance. In contrast to XML's rich but uninhibited type system, databoard's simplicity has enabled more practical features. Besides the norm features ''binary serialization'', ''text notation'', ''network communication'', there are also more advanced features such ''class binding'', ''annotations'', ''type conversion'', ''value conversions'', ''value comparisons'', ''variant types'', and ''partial access''.
+
__NOTOC__
 +
Databoard is a software library built upon a simple but well formulated and expressive type system. The design is a compromise of expression power, advanced functions, and performance. In contrast to XML's rich and uninhibited type system, databoard's simple and controlled model has enabled more practical features. Besides the norm features ''binary serialization'', ''human readable type and value notation'', ''network communication'', there are also more advanced features such ''class binding'', ''annotations'', ''recursion'', ''type conversion'', ''value conversions'', ''value comparisons'', ''variant types'' and ''random access''.
  
=Documents=
+
Databoard is simple and has low learning curve. No code generation - User classes.
* [[Databoard Specification]]
+
<syntaxHighlight lang="java">
* [[Databoard Developer Manual|Java Developer Manual]]
+
    Rectangle2D rect = new Rectangle2D.Double();
* [[svn:foundation/databoard/|SVN]] (0.6.0)
+
    Binding binding = Bindings.getBinding( rect.getClass() );
 +
    Serializer serializer = Binding.getSerializer( binding );
 +
    byte[] data = serializer.serialize(rect);
 +
</syntaxHighlight>
 +
 
 +
See [[Databoard Tutorials]]
 +
 
 +
=Trunk Development=
 +
(Requires Simantics Account)
 +
* [[Databoard Developer Manual|Java Developer Manual]] (0.6.2) ([http://dev.simantics.org/index.php?title=Databoard_Developer_Manual&action=pdfbook&format=single Download])
 +
* [[Databoard Specification]] (0.6.2) ([http://dev.simantics.org/index.php?title=Databoard_Specification&action=pdfbook&format=single Download])
 +
* [[svn:foundation/databoard/|SVN]] (0.6.2)
 
* [https://www.simulationsite.net/svn/simantics/foundation/databoard/trunk/org.simantics.databoard/doc/changelog.txt Change Log].
 
* [https://www.simulationsite.net/svn/simantics/foundation/databoard/trunk/org.simantics.databoard/doc/changelog.txt Change Log].
  
=Download=
+
=Download Releases=
 +
 
 +
===Version 0.6.5 (6.3.2012) ===
 +
* {{Rev|Databoard_Specification|1699|Databoard Specification 0.6.5}}
 +
* {{Rev|Databoard_Developer_Manual|1703|Databoard Developer manual 0.6.5}}
 +
* [[svn:foundation/databoard/tags/0.6.5|SVN 0.6.5]]
 +
* [[Licensing#Eclipse_Public_License|License]] (EPL v1.0)
 +
* Download Plain Old Java Objects Library (.jar)
 +
**[[Media:org.simantics.databoard-0.6.5.zip]] The release
 +
**[[Media:org.simantics.databoard-0.6.5.jar]] Library
 +
**[[Media:org.simantics.databoard-0.6.5_project.zip]] All project files
 +
**[[Media:org.simantics.databoard_0.6.5_src.zip]] Source library
 +
* Download Eclipse plug-in
 +
**[[Media:org.simantics.databoard_0.6.5.jar]] Eclipse plug-in
 +
**[[Media:org.simantics.databoard.source_0.6.5.jar]] Source plug-in
 +
**'''Dependency''' [[Media:trove-3.0.2.jar]]  Gnu Trove 3.0.2 [http://trove4j.sourceforge.net/]
 +
**'''Dependency''' [[Media:asm-3.2.jar]] ASM 3.2.2 (Recommended, but optional Dependency)
 +
 
 +
 
 +
===Version 0.6.1 (25.1.2011) ===
 +
* {{Rev|Databoard_Specification|1699|Databoard Specification 0.6.1}}
 +
* {{Rev|Databoard_Developer_Manual|1703|Databoard Developer manual 0.6.1}}
 +
* [[svn:foundation/databoard/tags/0.6.1|SVN 0.6.1]]
 +
* [[Licensing#Eclipse_Public_License|License]] (EPL v1.0)
 +
* Download Plain Old Java Objects Library (.jar)
 +
**[[Media:org.simantics.databoard-0.6.1.zip]] The release
 +
**[[Media:org.simantics.databoard-0.6.1.jar]] Library
 +
**[[Media:org.simantics.databoard-0.6.1_project.zip]] All project files
 +
**[[Media:org.simantics.databoard_0.6.1_src.zip]] Source library
 +
* Download Eclipse plug-in
 +
**[[Media:org.simantics.databoard_0.6.1.jar]] Eclipse plug-in
 +
**[[Media:org.simantics.databoard.source_0.6.1.jar]] Source plug-in
 +
**'''Dependency''' [[Media:gnu.trove2_2.0.4.jar]]  Gnu Trove 2.0.4 [http://trove4j.sourceforge.net/]
 +
**'''Dependency''' [[Media:org.objectweb.asm_3.1.0.v200803061910.jar]] ASM 3.1.0 (Optional Dependency)
 +
 
 +
 
 +
===Version 0.5.4 ===
 +
* {{Rev|Databoard_Specification|7665|Databoard Specification 0.5.4}}
 +
* {{Rev|databoard_dev|7669|Databoard Developer manual 0.5.4}}
 +
* [[svn:foundation/databoard/tags/0.5.4|SVN 0.5.4]]
 +
* [[Licensing#Eclipse_Public_License|License]] (EPL v1.0)
 +
* Download Plain Old Java Objects Library (.jar)
 +
**[[Media:org.simantics.databoard-0.5.4.zip]] The release
 +
**[[Media:org.simantics.databoard-0.5.4.jar]] Library
 +
**[[Media:org.simantics.databoard-0.5.4_project.zip]] All project files
 +
**[[Media:org.simantics.databoard_0.5.4_src.zip]] Source library
 +
* Download Eclipse plug-in
 +
**[[Media:org.simantics.databoard_0.5.4.jar]] Eclipse plug-in
 +
**[[Media:org.simantics.databoard.source_0.5.4.jar]] Source plug-in
 +
**'''Dependency''' [[Media:gnu.trove2_2.0.4.jar]]  Gnu Trove 2.0.4 [http://trove4j.sourceforge.net/]
 +
**'''Dependency''' [[Media:org.objectweb.asm_3.1.0.v200803061910.jar]] ASM 3.1.0 (Optional Dependency)
 +
 
  
===Release 0.5.2 ===
+
===Version 0.5.2 ===
 
* {{Rev|Databoard_Specification|7665|Databoard Specification 0.5.2}}
 
* {{Rev|Databoard_Specification|7665|Databoard Specification 0.5.2}}
 
* {{Rev|databoard_dev|7669|Databoard Developer manual 0.5.2}}
 
* {{Rev|databoard_dev|7669|Databoard Developer manual 0.5.2}}
 
* [[svn:foundation/databoard/tags/0.5.2|SVN 0.5.2]]
 
* [[svn:foundation/databoard/tags/0.5.2|SVN 0.5.2]]
* [http://www.eclipse.org/legal/epl-v10.html License] (EPL v1.0)
+
* [[Licensing#Eclipse_Public_License|License]] (EPL v1.0)
 
* Download Plain Old Java Objects Library (.jar)
 
* Download Plain Old Java Objects Library (.jar)
 
**[[Media:org.simantics.databoard-0.5.2.zip]] The release
 
**[[Media:org.simantics.databoard-0.5.2.zip]] The release
Line 19: Line 82:
 
**[[Media:org.simantics.databoard-0.5.2_project.zip]] All project files
 
**[[Media:org.simantics.databoard-0.5.2_project.zip]] All project files
 
**[[Media:org.simantics.databoard_0.5.2_src.zip]] Source library
 
**[[Media:org.simantics.databoard_0.5.2_src.zip]] Source library
* Download Eclipse plugin / OSGi bundle
+
* Download Eclipse plug-in
**[[Media:org.simantics.databoard_0.5.2.jar]] Eclipse/OSGi plugin/bundle.
+
**[[Media:org.simantics.databoard_0.5.2.jar]] Eclipse plug-in
**[[Media:org.simantics.databoard.source_0.5.2.jar]] Eclipse/OSGi source plugin/bundle.
+
**[[Media:org.simantics.databoard.source_0.5.2.jar]] Source plug-in
 
**'''Dependency''' [[Media:gnu.trove2_2.0.4.jar]]  Gnu Trove 2.0.4 [http://trove4j.sourceforge.net/]
 
**'''Dependency''' [[Media:gnu.trove2_2.0.4.jar]]  Gnu Trove 2.0.4 [http://trove4j.sourceforge.net/]
 
**'''Dependency''' [[Media:org.objectweb.asm_3.1.0.v200803061910.jar]] ASM 3.1.0 (Optional Dependency)
 
**'''Dependency''' [[Media:org.objectweb.asm_3.1.0.v200803061910.jar]] ASM 3.1.0 (Optional Dependency)
 +
 +
=Contact=
 +
* [[User:Toni Kalajainen|Toni Kalajainen]]

Latest revision as of 20:00, 6 March 2012

Databoard is a software library built upon a simple but well formulated and expressive type system. The design is a compromise of expression power, advanced functions, and performance. In contrast to XML's rich and uninhibited type system, databoard's simple and controlled model has enabled more practical features. Besides the norm features binary serialization, human readable type and value notation, network communication, there are also more advanced features such class binding, annotations, recursion, type conversion, value conversions, value comparisons, variant types and random access.

Databoard is simple and has low learning curve. No code generation - User classes. <syntaxHighlight lang="java">

   Rectangle2D rect = new Rectangle2D.Double();
   Binding binding = Bindings.getBinding( rect.getClass() );
   Serializer serializer = Binding.getSerializer( binding );
   byte[] data = serializer.serialize(rect);

</syntaxHighlight>

See Databoard Tutorials

Trunk Development

(Requires Simantics Account)

Download Releases

Version 0.6.5 (6.3.2012)


Version 0.6.1 (25.1.2011)


Version 0.5.4


Version 0.5.2

Contact