OOP, why, how and when????
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
egyamado wrote:
some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think?
That's very helpful.
egyamado wrote:
just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code?
No. That is not enough. Just knowing OOP in depth does not necessarily constitute someone as a good developer. There's more to it than that. Practice coding with OOP also necessary.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon "Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
egyamado wrote:
Object-Oriented Software Construction (2nd Edition)
Yes, that's worth examining. I also recommend the book, Design Patterns Explained: A New Perspective on Object-Oriented Design[^]. What's good about this book is that it takes a problem-based approach. Starts with procedural code example, explains what's wrong with that, presents conventional OO solution, explains what's wrong with that, then presents design patterns and explains how they solve the problems identified previously. In fact, I would start with this book before looking at OOSC.
Kevin
-
egyamado wrote:
Object-Oriented Software Construction (2nd Edition)
Yes, that's worth examining. I also recommend the book, Design Patterns Explained: A New Perspective on Object-Oriented Design[^]. What's good about this book is that it takes a problem-based approach. Starts with procedural code example, explains what's wrong with that, presents conventional OO solution, explains what's wrong with that, then presents design patterns and explains how they solve the problems identified previously. In fact, I would start with this book before looking at OOSC.
Kevin
There is a second edition too Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition) [^]
Giorgi Dalakishvili #region signature my articles My blog[^] #endregion
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
There is a second edition too Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition) [^]
Giorgi Dalakishvili #region signature my articles My blog[^] #endregion
Yep, I was aware of that. I should have posted that link instead. :doh: I own the first edition.
Kevin
-
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001Nice way of putting it :laugh:
"The clue train passed his station without stopping." - John Simmons / outlaw programmer "Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon "Not only do you continue to babble nonsense, you can't even correctly remember the nonsense you babbled just minutes ago." - Rob Graham
-
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001But having large love missile may land you job in the industry ;)
[My Blog]
"Visual studio desperately needs some performance improvements. It is sometimes almost as slow as eclipse." - Rüdiger Klaehn
"Real men use mspaint for writing code and notepad for designing graphics." - Anna-Jayne Metcalfe -
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 -
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001John Simmons / outlaw programmer wrote:
More importantly, it's how your missile performs once it detaches from the gantry.
Especially if it has a multiple independently targetable reentry warhead. ;)
Jon Smith & Wesson: The original point and click interface
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
Well, you could read my article What's Wrong With Objects[^] and come away with a biased opinion. :) Marc
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
To be honest, I think OOP, like a lot of programming, is something you understand how to use properly through experience. But, I am a firm advocate of buying books and working through them. I just think knowing how and when to use OOP comes only with time. Truth is, C# doesn't support any NON OOP code, nor does it allow for complex OOP, b/c it doesn't support multiple inheritance.
Christian Graus No longer a Microsoft MVP, but still happy to answer your questions.
-
Well, you could read my article What's Wrong With Objects[^] and come away with a biased opinion. :) Marc
Will there ever be a sequel, "What's right with objects?"?
Remember: Patience is a virtue of the poor
-
Will there ever be a sequel, "What's right with objects?"?
Remember: Patience is a virtue of the poor
martin_hughes wrote:
Will there ever be a sequel, "What's right with objects?
Now there's a novel idea. But to do that, I'll have to change my whole life's attitude and start viewing the glass as half full! Marc
-
That's like saying to be good at sex, you have to have a large love missile. More importantly, it's how your missile performs once it detaches from the gantry.
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
-----
"...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001John Simmons / outlaw programmer wrote:
More importantly, it's how your missile performs once it detaches from the gantry.
For some reason, this conjured up an image from Dr. Strangelove... :doh:
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
History lesson: Before OOP, the cool boys knew that, without knowing structured programming (roughly: you have functions and structures), you'd soon be useless and outdated. And it was good, since with these tools and the right modelling you could write programs with 5000 or more lines of source code, and they would still be maintainable! Joy! Of course, the joy didn't last, programs grew and around 50K, they started to become an unbearable mess again. OOP was the way out: it provided the tools that let you maintanin even larger programs. Life was good again! After some time, the same happened: programs outgrew what I would call "classic OOP" now. Its concepts have been extended by an emphasis on loosely coupled components, sometimes called component-oriented programming. It doesn't really replace OOP, though.
Burning Chrome ^ | Linkify!| FoldWithUs! | sighist
modified on Sunday, September 28, 2008 2:58 AM
-
But having large love missile may land you job in the industry ;)
[My Blog]
"Visual studio desperately needs some performance improvements. It is sometimes almost as slow as eclipse." - Rüdiger Klaehn
"Real men use mspaint for writing code and notepad for designing graphics." - Anna-Jayne Metcalfednh wrote:
But having large love missile may land you job in the industry Wink
shhhh! someone may figure out how an accountant transferred to engineering!! my first boss was a woman too....
-
martin_hughes wrote:
Will there ever be a sequel, "What's right with objects?
Now there's a novel idea. But to do that, I'll have to change my whole life's attitude and start viewing the glass as half full! Marc
Marc Clifton wrote:
But to do that, I'll have to change my whole life's attitude and start viewing the glass as half full!
In which case, here's an epiphany for you :) Do not concern yourself with the fullness of the glass, instead ask yourself who paid for it and, more importantly, what they want in return.
Remember: Patience is a virtue of the poor
-
OK. I’ve been told “to be a good developer you have to know well OOP (Object Oriented Programming) in depth” right?:confused: I searched for a good and an easy book to understand and talk more about “why”, it wasn’t easy. On the other hand some people recommend this book [Object-Oriented Software Construction (2nd Edition)]. What do you think? Or just enough to go through Wikipedia and other on line resources? Or just read C# documentation and I will get the “why”, “how” and “when” of using OOP in my code???
Don't forget that OOP is just missing one letter to turn it into OOPS! (Yes, I know I replied previously, but it's a new day, and new thought) Marc