• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

TeraTech

The ColdFusion Experts: Develop | Secure | Optimize

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

030 Design Patterns for amazing app architecture (16 patterns), with Brad Wood

July 25, 2017 By Michaela Light 1 Comment

Brad Wood talks about “Design Patterns for amazing app architecture (16 patterns)” in this episode of ColdFusion Alive podcast with host Michaela Light.

He is one of the speakers at the CFObjective Conference, a system architect for Ortus Solution and lead developer of the CommandBox CLI.

Contents

  • Show notes
  • Patterns to talk about
  • Anti-patterns
  • Honorable mentions
  • Mentioned in this episode
  • Listen to the Audio
  • Bio
  • Links
  • Interview transcript
    • Read more

Show notes

  • What is a design pattern?
  • Why should you be using them in your projects?
  • Commons solutions to common problems
  • Becoming a better software craftsman
  • Architect better apps
  • Command box 2-day training
    • Extending Command box
  • Why are you proud to use CF?
  • WWIT for you to make CF more alive this year?
  • What are you looking forward to at CFObjective?

Patterns to talk about

  • Builder

  • Object pool

  • Singleton

  • Strategy

  • Composite

  • Decorator

  • Facade

  • Front controller

  • Chain of responsibility

  • Memento

  • Observer (publish/subscribe)

  • Double checked locking

Anti-patterns

  • Anemic domain model
  • God object
  • Premature optimization
    • Readable, clear, concise code first
    • Then only optimize code pieces that are slow
  • Improbability factor

Honorable mentions

  • Law of demeter
    • Not too many dots in lines of code for class use
    • Too many dots make you dotty
  • Principle of least astonishment
  • Brook’s Law

Mentioned in this episode

  • Design patterns
  • book Design Patterns: Elements of Reusable Object-Oriented Software was published in 1994 by the so-called “Gang of Four”
  • Code Complete is a software development book, written by Steve McConnell
  • Book Mythical Man Month by Albert Brooks
  • Command box training
  • Sean Corfield article on Anemic domain model in the ColdFusion Quarterly
  • Cyclomatic complexity
  • Code smell
  • MVC
  • WORM = Write Once, Read Many code
  • FusionReactor auto profiler
  • Jenkins run time test recording
  • Command box 3.7 directory watchers
  • Testbox code coverage (with FusionReactor)
  • Travis CI
  • Docker
  • Docker Swarm
  • Forgebox
  • DevOps Best Practices
  • CFconfig app
  • Lucee CFML
  • Book Uncle Bob’s clean code

Listen to the Audio

Bio

Brad Wood

Brad grew up in southern Missouri and after high school majored in Computer Science with a music minor at MidAmerica Nazarene University (Olathe, KS). Today he lives in Kansas City with his wife and three girls. Brad enjoys all sorts of international food and the great outdoors.

Brad has been programming ColdFusion since 2001 and has used every version of CF since 4.5. He first fell in love with ColdFusion as a way to easily connect a database to his website for dynamic pages. He enjoys configuring and performance tuning high-availability Windows and Linux ColdFusion environments as well as SQL Server. Brad is the ColdBox Platform developer advocate at Ortus Solutions and lead developer of the CommandBox CLI.

Links

  • CFML slack box channel

  • Twitter

  • brad

* WWIT= What Would It Take?

Interview transcript

Michael:            Welcome back to the show. I'm here with Brad Wood and he is the amazing application system architect for Ortus Solutions as well as being evangelist for many of their Box products. Today, we’re going to be talking about design patterns so you can have amazing architecture in your apps and there's a whole bunch of patterns we're going to look at. We’re going to look at just in case you’ve been asleep for the last 20 years and missed what a design pattern was and how it affects coding. We’re going to look at that and why you should be using them and how they can be common solutions to common problems and help you produce better code in less time.

                            In fact, generally, just become better software craftsman and architect apps better. Also, we'll briefly look into the CommandBox two-day training that Brad is doing before the cfObjective conference. He's giving a talk on design patterns at cfObjective which is only weeks away now so, very excited for that. Welcome Brad.

Brad Wood:     Thank you, Michael.

Michael:            Just for folks who don't know, what is design pattern and I'm assuming it's nothing to do with design and Photoshop and all that, It's all to do with coding.

Read more

 

And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.

Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.

What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.

And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.

You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.

All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.

Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.

No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens Next

ColdFusion Alive Best Practices Checklist

ColdFusion Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

√ Easily create a consistent server architecture across development, testing, and production

√ A modern test environment to prevent bugs from spreading

√ Automated continuous integration tools that work well with CF

√ A portable development environment baked into your codebase… for free!

 

Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.

 

  • Facebook
  • Twitter
  • LinkedIn

Filed Under: CF Alive Podcast Tagged With: CFObjective, ColdFusion, design patterns

← Previous Post State of the ColdFusion Union 2017 Survey Amazing Results
Next Post → 030 Design Patterns for amazing app architecture (16 patterns), with Brad Wood- Transcript

Primary Sidebar

Subscribe on iTunes

Popular podcast episodes

  • Revealing ColdFusion 2021 – Rakshith Naresh
  • CF and Angular – Nolan Erck
  • Migrating legacy CFML – Nolan Erck
  • Adobe API manager – Brian Sappey
  • Improve your CFML code – Kai Koenig

CF Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

Get your checklist

Top articles

  • CF Hosting (independent guide)
  • What is Adobe ColdFusion
  • Is Lucee CFML now better than ACF?
  • Is CF dead?
  • Learn CF (comprehensive list of resources)

Recent Posts

  • test page
  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia – Transcript
  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia
  • 107 ColdFusion 2021 Revealing Details on How it was Created with Rakshith Naresh
  • The Legacy Continues: ColdFusion Summit East Conference Edition

Categories

  • Adobe ColdFusion 11 and older
  • Adobe ColdFusion 2018
  • Adobe ColdFusion 2020 Beta
  • Adobe ColdFusion 2021
  • Adobe ColdFusion 2023
  • Adobe ColdFusion 2024
  • Adobe ColdFusion 2025
  • Adobe ColdFusion Developer week
  • Adobe ColdFusion Project Stratus
  • Adobe ColdFusion Summit
  • AWS
  • BoxLang
  • CF Alive
  • CF Alive Podcast
  • CF Camp
  • CF Tags
  • CF Vs. Other Languages
  • CFEclipse
  • CFML
  • CFML Open- Source
  • CFUnited
  • ColdBox
  • ColdFusion and other news
  • ColdFusion Community
  • ColdFusion Conference
  • ColdFusion Consulting
  • ColdFusion Developer
  • ColdFusion Development
  • ColdFusion Hosting
  • ColdFusion Maintenance
  • ColdFusion Performance Tuning
  • ColdFusion Projects
  • ColdFusion Roadmap
  • ColdFusion Security
  • ColdFusion Training
  • ColdFusion's AI
  • CommandBox
  • Docker
  • Fixinator
  • Frameworks
  • Fusebox
  • FusionReactor
  • IntoTheBox Conference
  • Java
  • JavaScript
  • JVM
  • Learn CFML
  • Learn ColdFusion
  • Legacy Code
  • Load Testing
  • Lucee
  • Mindmapping
  • MockBox
  • Modernize ColdFusion
  • Ortus Developer Week
  • Ortus Roadshow
  • Server Crash
  • Server Software
  • Server Tuning
  • SQL
  • Survey
  • Survey results
  • TestBox
  • Transcript
  • Uncategorized
  • Webinar
  • Women in Tech

TeraTech

  • About Us
  • Contact

Services

  • Free assessment
  • Consulting
  • Crash
  • Development
  • Maintenance
  • Modernization
  • Security
  • Case Studies

Resources

  • CF Alive Book
  • CF Alive Podcast
    • Podcast Guest Schedule
  • TeraTech Blog
  • CF Alive resources
  • CF e-course
  • CF best practice checklist

Community

  • CF Alive
  • CF Inner Circle
  • CF Facebook Group

TeraTech Inc
451 Hungerford Drive Suite 119
Rockville, MD 20850

Tel : +1 (301) 424 3903
Fax: +1 (301) 762 8185

Follow us on Facebook Follow us on LinkedIn Follow us on Twitter Follow us on Pinterest Follow us on YouTube



Copyright © 1998–2025 TeraTech Inc. All rights Reserved. Privacy Policy.