Differences between revisions 2 and 43 (spanning 41 versions)
Revision 2 as of 2009-03-10 21:04:01
Size: 3683
Editor: KeiichiroOno
Comment:
Revision 43 as of 2010-08-19 20:32:03
Size: 40
Editor: malbec
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Cytoscape 3 Developer's Guide =


= Related Frameworks and Technologies =
From 3.0, new technologies/frameworks will be used for implementation. The following is the list of links to documents related to those frameworks/technologies.

 * OSGi - Cytoscape will be modularized by following this standard.
  * [[http://neilbartlett.name/blog/osgibook/|OSGi in Practice]]
  * [[http://www.osgi.org/Main/HomePage|OSGi Alliance]]
  * [[http://felix.apache.org/site/index.html|Apache Felix]]: Although OSGi is implementation-independent, this implementation will be used as standard development/testing tool.
  * [[http://wiki.ops4j.org|OPS4J]] Products: This project has a lot of usuful scripts to develop OSGi bundles
  * [[http://www.springsource.com/repository/app/|SpringSource Bundle Repository]]: To use existing plain JAR libraries in an OSGi environment, we need to add metadata to it. This repository is a collection of OSGi-ed popular libraries, i.e., repository of OSGi bundles managed by Spring Source.

 * Dependency Injection Frameworks - One of the scopes of 3.0 is modulalization and make Cytoscape usable as a part of other programs, including server-side application or command -line tools. The following DI frameworks are POJO-base and popular among server-side application developers.
  * [[http://code.google.com/p/google-guice/|Google Guice]]: Currently focused on DI only.
  * [[http://springframework.org/about|Spring Framework]]: De facto standard framework for DI and AOP.
   * [[http://springframework.org/osgi|Spring-DM]]: Integration of Spring Framework and OSGi

 * [[http://maven.apache.org/|Apache Maven]]: 3.0 project will be moved from Ant to Maven.
  * [[http://www.sonatype.com/book/|Maven: The Definitive Guide]]
  * [[http://m2eclipse.codehaus.org/|Maven integration for Eclipse]]
  * [[http://mvnrepository.com/|Maven Repository Search]] - Note: Cytoscape cannot use most of these libraries directly. To use these, they should be re-packed as an OSGi bundle.

 * Server-Side / SCA - Once Cytoscape is modulalized based on OSGi, we can use Cytoscape bundles and these frameworks to build server-side applications or web services.
  * [[http://incubator.apache.org/tuscany/|Apache Tuscany]]: An open-source implementation of Service Component Architecture.
  * [[http://www.springsource.com/products/suite/applicationplatform|SpringSource Application Platform]]: OSGi-Spring powered application server.

 * Scripting Language Support - There are several implementations of scripting languages running on JVM. These will be used to implement scripting feature in Cytoscape.
  * [[http://jruby.codehaus.org/|JRuby]]: Ruby scripting language running on JVM. Actively developed by Sun.
  * [[http://www.mozilla.org/rhino/|Rhino]]: JavaScript. Bundled with Java SE 6.
  * [[http://www.jython.org/Project/|Jython]]: Python implementation.

  * [[http://openjdk.java.net/projects/mlvm/|Da Vinci Machine Project]]

== Developer's Tutorials and References ==
=== For Eclipse Users ===
==== Basic Tutorial ====
 * {*} [[Cytoscape_3.0/Eclipse|Developing Cytoscape 3 Core with Eclipse and its Plugins]]

==== Optional ====
 * [[Cytoscape_3.0/Spring|How to use Spring Framework in Cytoscape 3]]
 * [[Cytoscape_3.0/Maven|Create Cytoscape 3 plugin from Maven Archetype]] (incomplete)

=== For Netbeans Users ===
 * {*} [[Cytoscape_3.0/Netbeans|Setting Netbeans 6.1 or 6.5 for building and running or debugging Cytoscape 3]]

=== Other OSGi Tools and Technical Notes ===
 * [[Cytoscape_3.0/PAX|How to build bundles with Pax-Construct]]

 * [[Cytoscape_3.0/AOP|How to use AOP on Spring + OSGi environments]]
Describe Cytoscape_3.0/Developer here.

Describe Cytoscape_3.0/Developer here.

Outdated_Cytoscape_3.0/Developer (last edited 2011-02-24 16:16:23 by PietMolenaar)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux