I need some advice with OOD
I as of yet have no higher schooling in computer porgramming but, as the programmes I build get more and more complex I'm finding it harder to design them. Dose anyone know where I can look for some formal methods on OOD?
Thanks,
Frank
I don't think you're looking for formal methods. I think you are looking for an Object Oriented Design recipe book. Since UML is a markup for OOD, I am going to suggest a UML book that have found useful for introducing you to the fundamentals, though it isn't very deep in it's coverage. It will get you going fairly quickly and probably bring you up to speed so you can get into some of the more canonical texts like Design Patterns[1] or Booch's UML book.
So, my suggestion is: Using UML.
[1] Gamedev get's some proceeds if you use this link to purchase the book. I think it would be a nice thing to do should you decide to purchase it. Alternatively, you can use your local library.
So, my suggestion is: Using UML.
[1] Gamedev get's some proceeds if you use this link to purchase the book. I think it would be a nice thing to do should you decide to purchase it. Alternatively, you can use your local library.
What is UML?
Grady Booch's Object-Oriented Design (OOD), also known as Object-Oriented Analysis and Design(OOAD), is a precursor to the Unified Modeling (UML). The Booch method includes six types of diagrams: class, object, state transition, interaction, module, and process.
never mind
Grady Booch's Object-Oriented Design (OOD), also known as Object-Oriented Analysis and Design(OOAD), is a precursor to the Unified Modeling (UML). The Booch method includes six types of diagrams: class, object, state transition, interaction, module, and process.
never mind
I use the O'reilly's UML pocket reference which cost me 6$US... If you want free, take a walk to the library and get one of those UML books.
I honestly believe that OOD is far beyond knowing UML and it takes time and effort to understand object oriented design and how it will work. It's easy to write a bunch of classes and inherit from them, but to make it reusable is often the hardest task. UML is just a way to model what you forsee your design to look like, it's like say you need a word processor to become a good writer :)
Just understand the concepts of OOD and practice, the need for UML will arise naturally.
I honestly believe that OOD is far beyond knowing UML and it takes time and effort to understand object oriented design and how it will work. It's easy to write a bunch of classes and inherit from them, but to make it reusable is often the hardest task. UML is just a way to model what you forsee your design to look like, it's like say you need a word processor to become a good writer :)
Just understand the concepts of OOD and practice, the need for UML will arise naturally.
Quote:Original post by FrankCashioOMG: Object Management Group
Is there any free material out there?
UML.org has free stuff including the UML spec and tutorials.
If you're stuck trying to identify classes in your design, you might like to try googling Use Cases. Here's a paper by Alistair Cockburn that describes them.
Hopefully these links are helpful or at least give you some phrases that are useful for googling.
Quote:Original post by achachaLet him complete some projects first before he worries about reuse. Then, if he thinks "oh I just wrote something similar" the OP can refactor his original design and use the refactored components in his new design.
I use the O'reilly's UML pocket reference which cost me 6$US... If you want free, take a walk to the library and get one of those UML books.
I honestly believe that OOD is far beyond knowing UML and it takes time and effort to understand object oriented design and how it will work. It's easy to write a bunch of classes and inherit from them, but to make it reusable is often the hardest task. UML is just a way to model what you forsee your design to look like, it's like say you need a word processor to become a good writer :)
Just understand the concepts of OOD and practice, the need for UML will arise naturally.
Quote:Original post by flangazorLet him complete some projects first before he worries about reuse. Then, if he thinks "oh I just wrote something similar" the OP can refactor his original design and use the refactored components in his new design.
My favoriute quite on the subject is "Code isn't reusable until it has been reused" can't remember where I first saw it thought. But it does make great sense.
Up-front design is kind of passé now.
Articles here, here and here.
I'd recommend Refactoring: Improving the Design of Existing Code and Design Patterns together.
Articles here, here and here.
I'd recommend Refactoring: Improving the Design of Existing Code and Design Patterns together.
Quote:Original post by petewood
Up-front design is kind of passé now.
In the sense of it being a fashionable trend, maybe. In the sense of it being a worthwhile effort, no. Even Martin Fowler, to whom you linked, argues against the common XP notion that UML is completely worthless.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement