Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Architecture Council/Links Collection"
(→Concurrency) |
(→Outside of the Eclipse Ecosystem) |
||
(8 intermediate revisions by 5 users not shown) | |||
Line 10: | Line 10: | ||
* [http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601/ Java Concurrency in Practice] contains an excellent treatment of the issues. In a dynamic environment such as OSGi you need to be aware of the rules surrounding things such as visibility, safe publication etc. | * [http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601/ Java Concurrency in Practice] contains an excellent treatment of the issues. In a dynamic environment such as OSGi you need to be aware of the rules surrounding things such as visibility, safe publication etc. | ||
* [http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1.pdf The Problem with Threads by Edward A. Lee] Often cited article explaining the problems of threading today. | * [http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1.pdf The Problem with Threads by Edward A. Lee] Often cited article explaining the problems of threading today. | ||
− | * [http://www.infoq.com/presentations/goetz-concurrency-past-present Concurrency: Past and Present by Brian Goetz] -- A 1h presentation on Concurrency in Java. Brian shows a very simple example and how difficult it is to get concurrency done correctly. | + | * [http://www.infoq.com/presentations/goetz-concurrency-past-present Concurrency: Past and Present by Brian Goetz] -- A 1h presentation on Concurrency in Java. Brian shows a very simple example and how difficult it is to get concurrency done correctly. If you think threading is easy -- listen to this talk... If you are interested in alternatives and future skip the first 30 min (the 30 min are just showing why threading (using locks) is difficult). |
+ | * [http://acmqueue.com/modules.php?name=Content&pa=showpage&pid=554 Real-world Concurrency by Bryan Cantrill and Jeff Bonwick, Sun Microsystems] -- an insightful ACM Queue article: ''we hope to inject some calm reality (if not some hard-won wisdom) into a discussion that has too often descended into hysterics'' (quote). | ||
=== Eclipse Concurrency === | === Eclipse Concurrency === | ||
Line 19: | Line 20: | ||
* [http://michaelscharf.blogspot.com/2006/09/dont-swallow-interruptedexception-call.html Don't swallow InterruptedException. Call Thread.currentThread().interrupt() instead.] (Blog by Michael Scharf) | * [http://michaelscharf.blogspot.com/2006/09/dont-swallow-interruptedexception-call.html Don't swallow InterruptedException. Call Thread.currentThread().interrupt() instead.] (Blog by Michael Scharf) | ||
− | == Tips & Tricks == | + | == Design Guidelines == |
+ | * [http://en.wikipedia.org/wiki/Law_of_Demeter Law of Demeter] (Principle of Least Knowledge) | ||
+ | * [http://www.objectmentor.com/resources/articles/srp.pdf Single Responsibility Principle (SRP)] | ||
+ | |||
+ | == Eclipse Tips & Tricks == | ||
* [[Ninja]] - Eclipse Debugging Tips | * [[Ninja]] - Eclipse Debugging Tips | ||
* [http://michaelscharf.blogspot.com/2006/10/tip-debug-and-patch-at-runtime.html Debug and patch a runtime Eclipse] (Blog by Michael Scharf) | * [http://michaelscharf.blogspot.com/2006/10/tip-debug-and-patch-at-runtime.html Debug and patch a runtime Eclipse] (Blog by Michael Scharf) | ||
== Eclipse Foundation == | == Eclipse Foundation == | ||
− | * [[API Central]] | + | * [[Eclipse/API Central]] |
* [[Development Resources]] | * [[Development Resources]] | ||
* [http://www.eclipse.org/org/foundation/minutes.php Board and Members Meeting Minutes] | * [http://www.eclipse.org/org/foundation/minutes.php Board and Members Meeting Minutes] | ||
Line 30: | Line 35: | ||
== Outside of the Eclipse Ecosystem == | == Outside of the Eclipse Ecosystem == | ||
* Microsoft's [http://blogs.msdn.com/jmeier/archive/2008/09/02/patterns-practices-app-arch-guide-2-0-project.aspx patterns & practices Application Architecture Guide 2.0 Project] for .NET | * Microsoft's [http://blogs.msdn.com/jmeier/archive/2008/09/02/patterns-practices-app-arch-guide-2-0-project.aspx patterns & practices Application Architecture Guide 2.0 Project] for .NET | ||
+ | * [http://stackoverflow.com/ Stackoverflow.com] - Questions and Answers for everything related to programming | ||
+ | * [http://www.codesimplicity.com/post/open-source-community-simplified/ Open Source Community, Simplified] - Article by Bugzilla's Max Kanat-Alexander on open source community building. | ||
+ | |||
+ | [[Category:Architecture Council|Links Collection]] |
Latest revision as of 15:00, 10 March 2011
A collection of interesting links to articles, blogs and other resources related to software architecture. Please add your name when you add an item, for discussions.
Contents
Patterns
- The Dependency Injection Pattern: an alternative to Factories and Service Locators (Blog by Michael Scharf). See also Introduction to the Spring Framework (article by Rod Johnson) for a discussion of IoC and DI.
Concurrency
- Threads considered Harmful Blog (found by David Orme)
- Erlang, Functional Java, Scala and others on E4 Mailing list (David Orme)
- Java Concurrency in Practice contains an excellent treatment of the issues. In a dynamic environment such as OSGi you need to be aware of the rules surrounding things such as visibility, safe publication etc.
- The Problem with Threads by Edward A. Lee Often cited article explaining the problems of threading today.
- Concurrency: Past and Present by Brian Goetz -- A 1h presentation on Concurrency in Java. Brian shows a very simple example and how difficult it is to get concurrency done correctly. If you think threading is easy -- listen to this talk... If you are interested in alternatives and future skip the first 30 min (the 30 min are just showing why threading (using locks) is difficult).
- Real-world Concurrency by Bryan Cantrill and Jeff Bonwick, Sun Microsystems -- an insightful ACM Queue article: we hope to inject some calm reality (if not some hard-won wisdom) into a discussion that has too often descended into hysterics (quote).
Eclipse Concurrency
- Don't have code run in the context of the Java Classloader (bugzilla comment by John Arthorne)
Java Idioms
- Java.net.URL.equals() and hashCode() make blocking internet connections (Blog by Michael Scharf)
- Don't swallow InterruptedException. Call Thread.currentThread().interrupt() instead. (Blog by Michael Scharf)
Design Guidelines
- Law of Demeter (Principle of Least Knowledge)
- Single Responsibility Principle (SRP)
Eclipse Tips & Tricks
- Ninja - Eclipse Debugging Tips
- Debug and patch a runtime Eclipse (Blog by Michael Scharf)
Eclipse Foundation
Outside of the Eclipse Ecosystem
- Microsoft's patterns & practices Application Architecture Guide 2.0 Project for .NET
- Stackoverflow.com - Questions and Answers for everything related to programming
- Open Source Community, Simplified - Article by Bugzilla's Max Kanat-Alexander on open source community building.