You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polygene.apache.org by ni...@apache.org on 2017/08/14 11:29:04 UTC
polygene-java git commit: POLYGENE-273 - Fixed the incorrect Polygene
refereneces.
Repository: polygene-java
Updated Branches:
refs/heads/develop 824c37c51 -> 0ef97e94d
POLYGENE-273 - Fixed the incorrect Polygene refereneces.
Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/0ef97e94
Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/0ef97e94
Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/0ef97e94
Branch: refs/heads/develop
Commit: 0ef97e94d4e417ec7b0c23e3c0b0b6028b1f901d
Parents: 824c37c
Author: Niclas Hedhman <ni...@hedhman.org>
Authored: Mon Aug 14 19:28:00 2017 +0800
Committer: Niclas Hedhman <ni...@hedhman.org>
Committed: Mon Aug 14 19:28:00 2017 +0800
----------------------------------------------------------------------
.../src/docs/what-is-composite-oriented-programming.txt | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/0ef97e94/tutorials/introduction/src/docs/what-is-composite-oriented-programming.txt
----------------------------------------------------------------------
diff --git a/tutorials/introduction/src/docs/what-is-composite-oriented-programming.txt b/tutorials/introduction/src/docs/what-is-composite-oriented-programming.txt
index 24338d8..ef7fa48 100644
--- a/tutorials/introduction/src/docs/what-is-composite-oriented-programming.txt
+++ b/tutorials/introduction/src/docs/what-is-composite-oriented-programming.txt
@@ -27,7 +27,6 @@ The article uses C# and a "show by example" approach to explaining COP, and this
Java specific, and although Polygene™ was (to our knowledge) first to introduce the name, it applies across languages and
potentially deserves one or more languages on its own.
-
The article is re-published here, as allowed by the
http://msdn.microsoft.com/en-us/windowsmobile/bb264332.aspx[Microsoft Permissive License]
, more recently known as
@@ -36,6 +35,9 @@ is NOT under the usual http://www.opensource.org/licenses/Apache-2.0[Apache Lice
We would like to thank Fredrik Kalseth for his explicit approval as well.
+The article below was published during the time when Polygene™ was known as Qi4j, and whenever "Qi4j" is mentioned
+below it should be read as "Polygene".
+
Since then, this article went offline but can be found on the
https://web.archive.org/web/20130414005509/http://iridescence.no/post/composite-oriented-programming.aspx[Internet Archive].
@@ -48,7 +50,7 @@ https://web.archive.org/web/20091222150653/http://www.iridescence.no/post/Implem
and https://web.archive.org/web/20130417090819/http://www.iridescence.no/post/Implementing-an-AOP-Framework-Part-2.aspx[here]),
and in the last part I promised to tackle mixins and introductions in a future post.
When I was doing my research for just that, I came cross a Java framework (just
-humor me :p) called Apache Polygene™, written by Swedish Richard Öberg, pioneering the idea of Composite
+humor me :p) called Qi4j (that's 'chee for jay'), written by Swedish Richard Öberg, pioneering the idea of Composite
Oriented Programming, which instantly put a spell on me. Essentially, it takes the concepts from Aspect Oriented
Programming to the extreme, and for the past week I’ve dug into it with a passion. This post is the first fruits of
my labor.
@@ -56,7 +58,7 @@ my labor.
=== OOP is Not Object Oriented! ===
One of the things that Richard Öberg argues, is that OOP is not really object oriented at all, but rather class
-oriented. As the Polygene™ website proclaims, "class is the first class citizen that objects are derived from. Not objects
+oriented. As the Qi4j website proclaims, "class is the first class citizen that objects are derived from. Not objects
being the first-class citizen to which one or many classes are assigned". Composite oriented programming (COP) then,
tries to work around this limitation by building on a set of core principles; that behavior depends on context, that
decoupling is a virtue, and that business rules matter more. For a short and abstract explanation of COP,
@@ -331,5 +333,5 @@ I hope this post has whet your appetite for more on this subject, as I will cert
posts. I’ve already implemented a prototype framework that supports the above examples, which builds on my
http://www.iridescence.no/Posts/Implementing-an-AOP-Framework-Part-2.aspx[previously posted AOP framework], and I’ll
post the source code for that soon. If you want to dig deeper right now (and don’t mind
-a bit of Java), then I suggest you head over to the Polygene™ website and poke about there.
+a bit of Java), then I suggest you head over to the Qi4j website and poke about there.
http://rickardoberg.wordpress.com/[Richard Öbergs blog] also provides great insight.