For many that come briefly into contact with Extreme Programming,it seems that XP calls for the death of software bet188足球design.Not just ismuch bet188足球design activity ridiculed as "Big Up Front Design",but suchbet188足球design techniques as the UML,flexible frameworks,and evenpatterns are de-emphasized or downright ignored.In fact XPinvolves a lot of bet188足球design,but does it in a different way thanestablished software processes.XP has rejuvenated the notion ofevolutionary bet188足球design with practices that allow evolution to become aviable design strategy.It also provides new challenges and skills asbet188足球designers need to learn how to do a simple design,how to use188足球比分直播refactoring to keep a bet188足球design clean,and how to use patterns in anevolutionary style.
The Ruby Rogues are a popular podcast where a regular panel discusses topics in the Ruby programming community.They have a regular book club and recently selectedP of EAAas their featured book.Consequently they asked me to appear as a guest on their show to discuss the book and the patterns that it describes,in particular the interesting relationship between these patterns and the Rails framework.
20 March 2013
Ian Cartwright,Erik Doernenberg,戴夫•法利Fred George,and Dan North hosted by 188bet足球充值Martin Fowler
The organizers of QCon London 2007,asked me to do a conference session on modifiability of architecture.I thought that rather than listening to me,the audience might prefer listen to some of the ThoughtWorks architects whose ideas I usually repackage: Dave Farley,Ian Cartwright,Fred George,Erik Doernenberg,andDan North.InfoQ has now put up a video of session.
Towards the end of last year I attended a workshop with my colleagues in ThoughtWorks to discuss the nature of "event-driven" applications.Over the last few years we've been building lots of systems that make a lot of use of events,and they've been often praised,and often damned.Our North American office organized a summit,and ThoughtWorks senior developers from all over the world showed up to share ideas.
The biggest outcome of the summit was recognizing that when people talk about "events",they actually mean some quite different things.So we spent a lot of time trying to tease out what some useful patterns might be.This note is a brief summary of the main ones we identified.
7 February 2017
In the Java community there's been a rush of lightweightcontainers that help to assemble components from different projectsinto a cohesive application.Underlying these containers is a commonpattern to how they perform the wiring,a concept they refer under thevery generic name of "Inversion of Control".In this article I diginto how this pattern works,under the more specific name of"Dependency Injection",and contrast it with the Service Locatoralternative.The choice between them is less important than theprinciple of separating configuration from use.
23 January 2004
I was interviewed by Bill Venners for his artima.com website.In the interview I touch upon 188足球比分直播refactoring,evolutionary bet188足球design,flexibility,and test driven development.Bill even manages to make mesound coherent.
9 December 2002
A historical overview of how GUI archiectures have evolved,with aparticular attention to how Model-View-Controller has been seen bydifferent groups over the years.Ties into my presentation patternsfrom a historical perspective.
18 July 2006