---
title: "Strong Vs. Loose Typing/Loose binding"
url: "https://osherove.com/blog/2003/5/26/strong-vs-loose-typingloose-binding.md"
canonical: "https://osherove.com/blog/2003/5/26/strong-vs-loose-typingloose-binding.html"
published: "2003-05-26T06:59:00"
updated: "2003-05-26T06:59:00"
tags: [".Net Original"]
author: "Roy Osherove"
description: "Ted Neward writes about the differences between Loose-Coupling, Loose-Typing, and Loose-Binding. Well, that's just the beginning. He starts off a discussion about which might be better for which tasks, the coding of GUI…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Strong Vs. Loose Typing/Loose binding

By Roy Osherove May 26, 2003 In [.Net Original](https://osherove.com/blog/category/net-original)

**Historical article** · Originally published May 26, 2003; technical details may be outdated.

[Ted Neward writes](http://www.neward.net/ted/weblog/index.jsp?date=20030522#1053617115876) about the differences between Loose-Coupling, Loose-Typing, and Loose-Binding. Well, that's just the beginning. He starts off a discussion about which might be better for which tasks, the coding of GUI vs. Server code using Loose-typing vs. Strong-Typing, What was so great (and bad)about VB and how Ruby.Net fits in to all this.

Highly recommended.

As for me, I'll just say there's some cool stuff to be done using Loose-binding(not typing). in VB6, you had the object class, on which you could instantiate anything using CreateObject, and than just call any method you liked on that object. It didn't check in compile time whether this was legal or not, it just "assumed" whatever was in your object would support this functionality when the time comes.

This allowed me to do a very cool trick, where, by using the Word automation components, I would instantiate a "word.Application" object, and call methods on it via a loosly typed object. This approach allowed me to variating Office installations on the host computer(assuming they are >= Office 97). No need to reference a specific Word 9.0 or Word.80 build in my project.

Since I was doing on ly the simplest of thinsg using Word's Document object model, I could get away with the same operations being on done different Office versions, since they all had support(and backawrds compatibility support) for those operations.

Yes, Loose binding sure saved me a lot of coding time.

## More in .Net Original

[All posts in .Net Original](https://osherove.com/blog/category/net-original)

- May 26, 2003

    ### [.Net Debugging Resources](https://osherove.com/blog/2003/5/26/net-debugging-resources-1.html)

- May 26, 2003

    ### [Microsoft Internet Controls Life Saver](https://osherove.com/blog/2003/5/26/microsoft-internet-controls-life-saver.html)

- May 21, 2003

    ### [The Books I Really Really Want](https://osherove.com/blog/2003/5/21/the-books-i-really-really-want.html)

- May 20, 2003

    ### [UI Threading - A Very Simple Solution](https://osherove.com/blog/2003/5/20/ui-threading-a-very-simple-solution.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
