The Dependency Inversion Principle (DIP) is a principle of object-oriented design that will change the way you think about writing software. It is one of the 5 SOLID principles Robert Martin discusses in his book, I highly recommend checking this book out if you have never read it. I gave a presentation on the DIP with Stephen Loftus-Mercer at NI Week 2015, and just gave a slightly different presentation on the DIP at the Software Craftsmanship Workshop at NI Days Boston 2015. Below is a recording of the Software Craftsmanship Workshop presentation, along with my slides. Depend upon abstract entities, not concrete entities Jon McBee is a Principal Software Engineer at Cambridge NanoTech and is a Certified LabVIEW Architect, Certified LabVIEW Embedded Developer, Certified TestStand Developer, an NI Certified Professional Instructor, and a LabVIEW Champion
10 Comments
11/20/2015 02:13:14 am
Cool stuff, Jon! Glad to see you continue pushing the boundaries of LabVIEW. Congrats on your new position at Cambridge NanoTech.
Reply
Jon McBee
11/20/2015 06:49:06 am
Hey Ted,
Reply
11/20/2015 10:34:54 am
Jon,
Reply
Jon McBee
11/20/2015 11:16:06 am
Hey Russell,
Reply
Jon McBee
11/20/2015 06:41:24 pm
My NI week presentation was a co-presentation with AristosQueue. I covered DIP and he covered ISP. For my part I spent a lot more time on the Black Hole example and talked about how DIP can be applied to low coupled messaging for the Actor Framework.
Reply
Matt Gould
11/20/2015 07:29:56 pm
Hey Jon, good to see you back. Question: Is a hardware abstraction layer an example of dependency inversion? Great presentation by the way.
Reply
Jon McBee
11/20/2015 09:12:36 pm
Hey Matt,
Reply
Anthony Maglio
1/15/2016 03:54:39 am
One of the best resources I've come across on to help understand Abstraction and Dependency Inversion a bit better. The practical examples and illustrative explanations really help. Thanks Jon!
Reply
Leave a Reply. |
Tags
All
Archives
October 2019
LabVIEW Blogs |