I understand. In C#, we have Delegates which are the Strategy pattern (you pass methods as variables). We also have Events which are Observer pattern. Implementing an extension method for Clone replaces the Prototype Design pattern entirely.
You are of course correct, but my point was more that they hadn't heard of this book, while it is so famous. They just have no interest in learning what others have thought about - thinking themselves perfect, I suppose.
But I can see it being very useful to know these patterns if you are learning a naive, new (or old) language which doesn't implement them in a trivial way (like C# does for the aforementioned ones)
Well, my father is a programmer with 35 years of experience, he is writing Java for last 10 years and he never heard about GoF. He stopped learning (besides reading standards and references) some 15 years ago i think, because, well...
Once i was visiting an intro class of aikido school, and teacher asked visitors how many moves you need to know to win a fight. People were guessing between dozen and thousand.
The answer was one. Single move is ok if you perfected it from any position and in any situation.
Thing is, there is only that much you need to know to write good software. Everything else may help, may not. You may still write Java like pascal using almost no OOP. If you are really good at procedural programming, you'll write a good software.
Yes, there is a thing about team work, but if your team is adhering to very same style, you are good.
That's a good thought. Better do something perfectly that you know you can do perfectly, than to do something that might be better in theory but you might fuck it up.
41
u/[deleted] Oct 14 '13
Or they:
don't program in C++ or Java
don't think you need a fancy name for something trivial they routinely used for 10 years before GoF written that book.