CSC/ECE 517 Fall 2009/wiki3 1 co: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
Line 90: Line 90:
== References ==
== References ==


text
* [http://www.antipatterns.com/]
* W. J. Brown et al., [http://www.amazon.com/exec/obidos/ASIN/0471197130/theantipatterngr AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis], John Wiley & Sons, Inc., New York, NY, 1998.
* S. Klement, [http://systeminetwork.com/article/anti-patterns-avoid-programming-dark-side Anti-Patterns: Avoid the Programming Dark Side], 2008
* Wikipedia entry: [http://en.wikipedia.org/wiki/Anti-pattern Anti-pattern]
* [http://c2.com/cgi/wiki?AntiPatternsCatalog Anti Patterns Catalog] offered by Cunningham & Cunningham, Inc.
* [http://sourcemaking.com/antipatterns] What is an AntiPattern?] from Sourcemaking.com
* [http://www.lostechies.com/blogs/chrismissal/archive/2009/05/25/anti-patterns-and-worst-practices-you-re-doing-it-wrong.aspx Anti-Patterns and Worst Practices – You’re Doing it Wrong!]
* M. H. Dodani,[http://www.jot.fm/issues/issue_2006_07/column4.pdf Patterns of Anti-Patterns?], Journal of Object Technology, Vol 5, No 6, pp 29-33, 2006

Revision as of 03:56, 17 November 2009

Software Design Anti-Patterns

  Not all patterns are good. Anti-patterns are patterns that initially seem effective, but over time you learn that they lead you into traps. 
      - Scott Klement, Anti-Patterns: Avoid the Programming Dark Side

In this article, we will describe several software design patterns which have been categorized as "anti patterns": Programming approaches which are not uncommon and which can lead to poor program design and performance.

What are Anti-Patterns?

text

Considerations When Writing Anti-Patterns

text

Anti-Pattern Examples

text

The Blob or God Class

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Lava Flow

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Poltergeists

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Golden Hammer

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Spaghetti Code

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Cut-and-Paste Programming

Anti-Pattern Problem

text

Refactored Solution

text

Example

text

Conclusion

text

References