Guiding Object-Oriented Design with Tests


Comments are closed.

A real good approach on TDD and how you implement iT to write better code

Interesting talk ... didn't apply to what I'm working on at the moment, but certainly has lots of valuable information and pointers! Will use the recorded session as a resource. :)

Calmly reasoned and well done.

I entered this talk thinking object mocks were superfluous. Now, I see the light!

Anonymous at 08:19 on 20 Dec 2013

Nice talk

Great talk. I liked the examples mixed with higher level tips on OOP.

Great talk! I'm glad it touched on TDD and using interfaces/contracts when testing so that code is more flexible.

I could have really used this talk when I was building a shopping cart earlier this year :D.

Really liked the concrete examples. Looking forward to implementing this on some projects soon.

Stellar talk, touched very heavily on OOD and TDD, maybe got a little dry 75% in but not in awful way. To me this perhaps the most interesting talk so far.

liked the talk. The examples made a lot of sense and drove a lot of the points very well.

Well done. I especially liked that you test against interfaces, I really wish more people would do that.

Jeff did a fantastic job covering unit testing theory and design with a very detailed and practical walkthrough of the entire development life cycle, guided by tests. Highly recommend this talk, going to share with my co-workers once the recording is out!

Great talk. Thanks Jeff. I was hoping that you might touch on the relationship between unit testing and O-O design with interfaces and encapsulation. Specifically I am curious to hear your thoughts on verifying that specific methods are called (on mocks) within the implementation of test. This approach goes beyond testing the interface/contract of a method to test the internal *implementation* of the method as well. From an O-O perspective, this approach appears to break encapsulation and I was curious to hear your thoughts on if this is a worthwhile tradeoff.

Loved the talk, Jeff. I think it will help me write better tests. I could identify several things I've been doing wrong like $cart->getProducts()->count() and not using enough mocks. I also really like the logic that too complicated tests hint at production code being too complicated. I wish there could have been time to keep going with the BDD example.

Always enjoy hearing Jeff talk. Great insight on how to enhance design through testing. Great examples.

Loved the intro to better OOP, in addition to the documentation style of TDD. Excellent job of stressing the importance of refactoring and keeping SOLID principles and DRYness.

Excellent talk. Great mixture of OODP and practical examples of OOA&D using TDD.

A bit high-level, but they're helpful concepts for us to consider. I've wanted to be more disciplined in my software architecture, and this has given me practical ways to try to do that.

Love this talk !
This was not too low-level.
We could see how to use it in-real world application!

I really liked this talk, not only for its content but because your delivery felt very polished and informed. You weren't at the edge of your knowledge and grasping at how to explain the concepts you were advocating.

My only suggestion is to either embrace or cut the SOLID principles in this talk. The rest of my current team, while familiar with some of the concepts around testing, hadn't heard of SOLID before. (I'm still building up their base knowledge rather than throw more rules at them.) So your slide with just "SOLID" on it and you reciting the acronym principles felt a bit overwhelming for them. Especially having it early in the talk and then the rest of the talk didn't really mention them. It felt like you flexing a bit of muscle to acronym-drop that you were "in the know" wink wink nudge nudge to anyone else already on the TDD train.

Yes, the principles are important, but I'm not convinced they're any benefit other than a passing mention, "If you've heard of the SOLID principles some of what we'll talk about will be familiar. If not, no problem, just pay attention to how our code examples evolve." You can certainly advocate for them more at the end by referring to a book that outlines them well for those interesting in learning to think about writing well factored code.

I loved the code examples, they were perfectly succinct yet complex enough to be grasped on slides. Your evolution of the code and showing the TDD cycle was perfectly paced and well explained. For a topic that can easily come across as dry and boring you nailed it.

I'm fairly new to unit testing and OOP. Your talk not only clearly articulated a clear approach to developing using TDD, but it also illustrated a basic OO model in the process. That was a welcome bonus for me. Your speaking skills can't be underestimated either - you delivered your points clearly and concisely. Thank you so much!

Excellent talk! Very practical approach, which is nice!