JaroslavTulach at 03:47, 10 June 2022 - 2022-06-10 03:47:12

←Older revision Revision as of 03:47, 10 June 2022
Line 1: Line 1:
== Have You Ever Wondered...? ==
== Have You Ever Wondered...? ==
-
OK, so you want to prevent [[NetBeans Runtime Container#Manifesto|object-oriented spaghetti mess]] by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
+
OK, so you want to prevent [[NetBeans Runtime Container#Modularity Manifesto|object-oriented spaghetti mess]] by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].

JaroslavTulach: /* Double Injection */ - 2010-11-08 08:47:20

Double Injection

←Older revision Revision as of 08:47, 8 November 2010
Line 10: Line 10:
=== Double [[Injection]] ===
=== Double [[Injection]] ===
-
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.
+
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details. We even have a more theoretical explanation why [[singleton]]s need not be evil.

JaroslavTulach: /* Manifesto of Modular Programming */ - 2009-05-22 13:31:36

Manifesto of Modular Programming

←Older revision Revision as of 13:31, 22 May 2009
Line 6: Line 6:
=== Manifesto of Modular Programming ===
=== Manifesto of Modular Programming ===
-
Get the feel for necessity of modular programming by reading through the [[NetBeans Runtime Container#Manifesto|manifesto]] and going through the demo described at [[NetBeans Runtime Container]] page.
+
Get the feel for necessity of [[module system|modular programming]] by reading through the [[NetBeans Runtime Container#Manifesto|manifesto]] and going through the demo described at [[NetBeans Runtime Container]] page.
=== Double [[Injection]] ===
=== Double [[Injection]] ===
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.

JaroslavTulach: /* Have You Ever Wondered...? */ - 2009-05-22 13:30:15

Have You Ever Wondered...?

←Older revision Revision as of 13:30, 22 May 2009
Line 1: Line 1:
== Have You Ever Wondered...? ==
== Have You Ever Wondered...? ==
-
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
+
OK, so you want to prevent [[NetBeans Runtime Container#Manifesto|object-oriented spaghetti mess]] by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].

JaroslavTulach: /* Have You Ever Wondered...? */ - 2009-05-22 13:29:41

Have You Ever Wondered...?

←Older revision Revision as of 13:29, 22 May 2009
Line 3: Line 3:
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
 +
 +
=== Manifesto of Modular Programming ===
 +
 +
Get the feel for necessity of modular programming by reading through the [[NetBeans Runtime Container#Manifesto|manifesto]] and going through the demo described at [[NetBeans Runtime Container]] page.
=== Double [[Injection]] ===
=== Double [[Injection]] ===
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.

JaroslavTulach: /* Have You Ever Wondered...? */ - 2009-04-27 20:03:56

Have You Ever Wondered...?

←Older revision Revision as of 20:03, 27 April 2009
Line 3: Line 3:
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
 +
 +
=== Double [[Injection]] ===
 +
 +
The [[Use Modular Architecture|Chapter 7]] also mentions that it might be beneficial to join the strength of [[Spring]] (or other [[Dependency Injection]] technology) and [[Lookup]]. The time has passed since then, and the bridge between these two is available. See [[LookupAndSpring]] for more details.

JaroslavTulach: /* Have You Ever Wondered...? */ - 2008-08-17 19:36:52

Have You Ever Wondered...?

←Older revision Revision as of 19:36, 17 August 2008
Line 1: Line 1:
== Have You Ever Wondered...? ==
== Have You Ever Wondered...? ==
-
Your advice seems to be to split code into independent modular pieces, however I wonder how to glue them together? Right, you need some ''injection'' to configure all individual components to work together. This chapter starts with the most straightforward solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].
+
OK, so you want to prevent ''object-oriented spaghetti mess'' by splitting our systems into into independent modular pieces, however I wonder how to glue them together? Are there some good practices for doing so? Yes, there are and the
 +
[[Use Modular Architecture|Chapter 7]] gives some. For example to glue pieces together you need some ''injection'' to configure all individual components to work together. The [[Use Modular Architecture|Chapter 7]] builds the understanding for this by starting with the most straightforward and hand-coded solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].

JaroslavTulach at 04:49, 3 August 2008 - 2008-08-03 04:49:33

←Older revision Revision as of 04:49, 3 August 2008
Line 1: Line 1:
 +
== Have You Ever Wondered...? ==
 +
Your advice seems to be to split code into independent modular pieces, however I wonder how to glue them together? Right, you need some ''injection'' to configure all individual components to work together. This chapter starts with the most straightforward solutions and then enhances them to cover ''injection'' as provided by [[wikipedia::Spring_Framework| Spring Framework]] as well as latest releases of [[wikipedia::JDK|JDK]].

Apidesign: Removing all content from page - 2008-06-14 05:54:23

Removing all content from page

←Older revision Revision as of 05:54, 14 June 2008
Line 1: Line 1:
-
'''Done: 74d64dca0394'''
 
-
 
-
The example of the JDK as non-modular may be out of date by the time you go to print! :)
 
-
 
-
* I am afraid we publish few years sooner
 
-
 
-
I'd like some discussion of how you modularize a project that already has a large, non-modular, full-of-spaghetti code base.
 
-
I think this would resonate with a lot of programmers.
 
-
 
-
* I may blog about it or describe that in wiki, but for the book it would be maybe too detailed. Just remind me.
 
-
 
-
Also, I'd like you to address non-runtime modularization. That is, just enforcing module dependencies at compile time, in the
 
-
ant script. It's perfectly valid, requires no additional software like OSGI, but has some pitfalls (Class.forName, etc).
 
-
For some organizations that are mistrustful of runtime modularization's performance impact (warranted or not), it's better
 
-
than nothing.
 
-
* I have contributed description of Ant [http://ant.apache.org/manual/CoreTasks/javac.html Javac task parameters], search for '''sourcepath=""'''
 
-
 
-
--[[User:RichUnger|RichUnger]] 22:40, 10 April 2008 (UTC)
 
-
 
-
 
-
# Page 99: "Modular programming is here to make it happen." This implies that modular programming encourages the degradation of the architecture rather than preventing it, so you probably meant "Modular programming is here to help prevent it."
 
-
 
-
--[[User:TomWheeler|TomWheeler]] Sat Apr 12 19:13:37 CDT 2008
 

JaroslavTulach at 12:25, 27 April 2008 - 2008-04-27 12:25:55

←Older revision Revision as of 12:25, 27 April 2008
Line 1: Line 1:
 +
'''Done: 74d64dca0394'''
 +
 +
The example of the JDK as non-modular may be out of date by the time you go to print! :)
The example of the JDK as non-modular may be out of date by the time you go to print! :)
 +
 +
* I am afraid we publish few years sooner
I'd like some discussion of how you modularize a project that already has a large, non-modular, full-of-spaghetti code base.
I'd like some discussion of how you modularize a project that already has a large, non-modular, full-of-spaghetti code base.
I think this would resonate with a lot of programmers.
I think this would resonate with a lot of programmers.
 +
 +
* I may blog about it or describe that in wiki, but for the book it would be maybe too detailed. Just remind me.
Also, I'd like you to address non-runtime modularization. That is, just enforcing module dependencies at compile time, in the
Also, I'd like you to address non-runtime modularization. That is, just enforcing module dependencies at compile time, in the
Line 8: Line 15:
For some organizations that are mistrustful of runtime modularization's performance impact (warranted or not), it's better
For some organizations that are mistrustful of runtime modularization's performance impact (warranted or not), it's better
than nothing.
than nothing.
 +
* I have contributed description of Ant [http://ant.apache.org/manual/CoreTasks/javac.html Javac task parameters], search for '''sourcepath=""'''
 +
--[[User:RichUnger|RichUnger]] 22:40, 10 April 2008 (UTC)
--[[User:RichUnger|RichUnger]] 22:40, 10 April 2008 (UTC)