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 <[email protected]> Authored: Mon Aug 14 19:28:00 2017 +0800 Committer: Niclas Hedhman <[email protected]> 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.
