This content originally appeared on DEV Community and was authored by Steven Kaufman
Background
As a young person getting into programming, it's hard not to notice the wildly varying cultural perspectives around the industry.
From just watching YouTube tutorials, I think I was completely oblivious to the very existence of unit testing for at least a full year after learning the fundamentals of Javascript.
Shortly after, however, I stumbled upon Robert C. Martin (Uncle Bob)'s talks on YouTube.
If you haven't already seen his six publicly available hour-and-a-half long talks, I highly recommend watching ALL of them.
I've personally rewatched and listened to them like podcasts in the car at least three times over.
Youtube: Clean Code - Uncle Bob
Uncle Bob and TDD
To summarize, he's one of the authors of the Agile Manifesto, a 50+ year software professional, and an extreme advocate for Test Driven Development.
This advocacy for TDD sets him apart from even some of the other people who worked on the Agile Manifesto (which was designed to be a great compromise between wildly different programming philosophies).
My Question
After playing around with TDD in personal projects, I can see its value, and I'm inclined to believe what Uncle Bob says. However, I want to be careful and make sure that I'm not blindly indoctrinating myself into some idealistic nonsense before I have much in the way of real world experience.
I've seen the debates against TDD online, and Uncle Bob himself warns against trying to adopt things like TDD and Agile too quickly, as they're intended to be skills and disciplines that one has to practice to become effective at.
My question is simply this, if anyone would like to share their opinion:
Why might TDD ever be a bad idea?
or:
Why is TDD always a good idea?
This content originally appeared on DEV Community and was authored by Steven Kaufman
Steven Kaufman | Sciencx (2021-04-22T05:39:22+00:00) TDD Practicality. Retrieved from https://www.scien.cx/2021/04/22/tdd-practicality/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.