aspose file tools*
The moose likes Other Application Frameworks and the fly likes osgi only for Java Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Frameworks » Other Application Frameworks
Bookmark "osgi only for Java" Watch "osgi only for Java" New topic
Author

osgi only for Java

Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8919

Is the osgi framework only for java applications ? What about other languages ? don't they have modularity issues ?


Groovy
Richard S. Hall
author
Ranch Hand

Joined: Feb 14, 2011
Posts: 47
Pradeep bhatt wrote:Is the osgi framework only for java applications ? What about other languages ? don't they have modularity issues ?


The OSGi framework is only for Java VM-based languages. The only Java VM-based language explicitly considered by the spec is Java itself.
Stuart McCulloch
author
Greenhorn

Joined: Feb 14, 2011
Posts: 21
Pradeep bhatt wrote:Is the osgi framework only for java applications ? What about other languages ? don't they have modularity issues ?

People are interested in applying OSGi's ideas of modularity to other languages, from adding OSGi extensions to JVM-based languages (https://github.com/weiglewilczek/scalamodules/) all the way to trying to re-implement OSGi on top of native C (http://incubator.apache.org/celix/). Of course it's always easier to add modularity to managed languages such as Java.
Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8919

Thanks authors. what about .NET langauges like C# ? Is modularity taken care of there ?
Richard S. Hall
author
Ranch Hand

Joined: Feb 14, 2011
Posts: 47
Pradeep bhatt wrote:Thanks authors. what about .NET langauges like C# ? Is modularity taken care of there ?


.NET has more support for modularity by default than Java, but it is not as fine-grained and dynamic as OSGi. .NET packages its types into assemblies, which are its module concept. Assemblies contain a list of their dependencies on other assemblies. This way the .NET runtime can make sure all requirements are satisfied and it can support side-by-side versions. Additionally, .NET has another access modifier (besides public, private, and protected), called internal. This provides visibility within the entire assembly, but not outside of it (i.e., module global).
Stuart McCulloch
author
Greenhorn

Joined: Feb 14, 2011
Posts: 21
Richard S. Hall wrote:
Pradeep bhatt wrote:Thanks authors. what about .NET langauges like C# ? Is modularity taken care of there ?


.NET has more support for modularity by default than Java, but it is not as fine-grained and dynamic as OSGi. .NET packages its types into assemblies, which are its module concept. Assemblies contain a list of their dependencies on other assemblies. This way the .NET runtime can make sure all requirements are satisfied and it can support side-by-side versions. Additionally, .NET has another access modifier (besides public, private, and protected), called internal. This provides visibility within the entire assembly, but not outside of it (i.e., module global).

The closest thing to OSGi on .NET is probably the Managed Extensibility Framework (pdf transcript of a podcast discussing MEF) but it doesn't have the same concepts of lifecycle and services that OSGi has.
Sam Ma
Greenhorn

Joined: Feb 17, 2013
Posts: 1
Pradeep bhatt wrote:Thanks authors. what about .NET langauges like C# ? Is modularity taken care of there ?

Yes, there is a commercial product named UIOSP(XAUI Open Service Platform) which is the .NET implemented based-on OSGi specification R4 by a startup software company, Xi'an UI, in China. Well, now only Chinese version available. You may try contact them with e-mail (uishell@uishell.com).

English introduction of there product here.
 
 
subject: osgi only for Java