Valery Abu-Eid (Author of Designing Dynamic Java Applications with Osgi)
ISBN 13: 9780321714336
OSGi container implementations such as Knopflerfish , Equinox , and Apache Felix allow you to break your application into multiple modules and thus more easily manage cross-dependencies between them. Similar to the Java Servlet and EJB specifications, the OSGi specification defines two things: a set of services that an OSGi container must implement and a contract between the container and your application. From a developer's perspective, OSGi offers the following advantages:. Given that you use servlet containers for building Web applications and EJB containers for building transactional applications, you may be wondering why you need yet another type of container. The short answer is that OSGi containers are intended specifically for developing complex Java applications that you want to break up into modules. I'll expand on that short answer throughout this series.
Building systems from in-house and off-the-shelf modules significantly reduces complexity and thus development and maintenance expenses. The OSGi programming model realizes the promise of component-based systems. BUSINESS The OSGi modular and dynamic model reduces operational costs and integrates multiple devices in a networked environment, tackling costly application development, maintenance and remote service management. The key reason OSGi technology is so successful is that it provides a very mature component system that actually works in a surprising number of environments. The OSGi specifications were started in and were intended for the home automation market, trying to solve the problem how to build applications out of independent components. In the this past decade, the software industry was fundamentally changed because of the explosion in open source projects.
Designing Dynamic Java Applications with OSGi by Valery Abu-Eid, , available at Book Depository with free delivery worldwide.
i love you to the moon and back infinity times
Compile Dependencies (0)
An application consists of different parts, these are typically called software components or software modules. The API is defined as a set of classes and methods which can be used from other components. A component also has a set of classes and methods which are considered as internal to the software component. If a component uses an API from another component, it has a dependency to the other component, i. A component which is used by other components should try to keep its API stable. This avoids that a change affects other components.