https://github.com/apache/polygene-java
Mirror of Apache Polygene java
https://github.com/apache/polygene-java
attic
Last synced: 5 months ago
JSON representation
Mirror of Apache Polygene java
- Host: GitHub
- URL: https://github.com/apache/polygene-java
- Owner: apache
- License: apache-2.0
- Archived: true
- Created: 2015-03-28T07:00:06.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2019-03-14T12:18:44.000Z (over 6 years ago)
- Last Synced: 2024-10-01T05:40:45.906Z (9 months ago)
- Topics: attic
- Language: Java
- Homepage:
- Size: 33.7 MB
- Stars: 91
- Watchers: 31
- Forks: 34
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-java - Apache Polygene
README
# Apache Polygene™ (Java Edition)
> Composite Oriented Programming on the Java platform
[](https://opensource.org/licenses/Apache-2.0)
[-develop-java8-checkDists)](https://builds.apache.org/view/P/view/Polygene/job/Polygene(JavaEdition)-develop-java8-checkDists/)## What is Apache Polygene™
The short answer is that **Apache Polygene™** is a community based effort exploring Composite Oriented Programming for
domain centric application development. This includes evolved concepts from
[Aspect Oriented Programming](https://en.wikipedia.org/wiki/Aspect-oriented_programming),
[Dependency Injection](https://en.wikipedia.org/wiki/Dependency_injection)
and [Domain Driven Design](https://en.wikipedia.org/wiki/Domain-driven_design).**Composite Oriented Programming** allows developers to work with _fragments_, smaller than classes, and _compose_
fragments into larger _composites_ which acts like the regular objects. Apache Polygene™ also tackles the enforcement
of _application_ composition, i.e. composites are declared in _modules_, modules are contained in _layers_ and access
between layers are controlled/enforced.**Apache Polygene™ (Java Edition)**, first Apache Polygene sub-project, is an implementation of Composite Oriented
Programming, using the standard Java platform, without the use of any pre-processors or new language elements.
Everything you know from Java still applies and you can leverage both your experience and toolkits to become more
productive with Composite Oriented Programming today.The Apache Polygene™ community welcomes any effort exploring Composite Oriented Programming for domain centric
application development using any technology.Please see https://polygene.apache.org for more information.
## Downloading
You can download released versions from: https://polygene.apache.org/download.html
## Building
Build instructions can be found here: http://polygene.apache.org/java/latest/build-system.html
## Contributing
Polygene™ started in 2007, and is still in heavy development under the umbrella of
the Apache Polygene™ project at the Apache Software Foundation. We would like
developers around the world to participate in the advancement of this
cool, new and challenging technology. We are especially interested in
people willing to help improve the SDK, samples, tutorials, documentation
and other supporting material.Please see http://polygene.apache.org/community/participate.html and http://zest.apache.org/community/playing_field.html
for more information.## Opening in your IDE
### IntelliJ IDEA
IntelliJ IDEA Community Edition has everything you need to open Apache Polygene™.
To open the project in IDEA, simply open this repository as a project.
During import, make sure *"Create separate module per source set"* is checked.### Netbeans
To open Apache Polygene™ in Netbeans you need to install the _Gradle Support_ plugin.
It is directly available via the Update Center (Tools/Plugins: Look for _Gradle Support_).
Then, to open the project in Netbeans, simply open this repository as a project.### Eclipse
Eclipse supports Gradle based projects out of the box thanks to the Buildship project.
To open the project in Eclipse, simply import this repository as a Gradle project.## Licensing
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.