in reply to Re: Re: From the Void and into the Light...
in thread From the Void and into the Light...

I digress, you need to have OO programming skills in order to use the design methods.

There is no point making a Class diagram if you don't know how to write a class.

OO code is also easier to maintain. As for impatience the impatient programmer skips the design and gets straight on down to good ol' perl hacking. Also I'm an advocate for design especially whilst working on 'million dollar' projects i.e 'big projects' like I said.

However you are indeed you are right, long term lazyness favours design short term lazyness favours none

  • Comment on Re: Re: Re: From the Void and into the Light...

Replies are listed 'Best First'.
Re (tilly) 4: From the Void and into the Light...
by tilly (Archbishop) on Nov 28, 2001 at 23:58 UTC
    I strongly disagree.

    While good design principles and techniques interact with object oriented programming, neither understanding or use of OO techniques is necessary to understand and use good design principles, and vice versa.

    Furthermore OO design has characteristic traps and pitfalls which have to be worked around, and I remain to be convinced that the best design for any complex system is always OO. Quite the contrary in fact. There are many possible ways to design complex systems, and OO is merely one of the available tools for doing so.

    In short, I agree with dragonchild. When someone stands up and says, "OO is good. OO is great. Everyone should be using OO." I think, "That is someone who has a religious point of view, I wonder if they have ever really thought about what they are saying?"

    It is certainly true that you have stated your position without the inclusion of any supporting evidence. Certainly if your concept of how to go about designing software starts and ends with making Class diagrams, then you have a lot to learn...

Re: Re: Re: Re: From the Void and into the Light...
by Dogma (Pilgrim) on Nov 29, 2001 at 03:19 UTC
    And I still don't agree with your original statement. While OO has a religous following among buzz-word enabled white collars. I don't believe that procedural design has become any less valid. From my experience they both have pros and con's like anything else in life.
      IMHO procedural design just doesn't scale up for big projects. It doesn't mean that it is impossible to write with C big projects .. but have you noticed that big project written in non-OO languages tend to emulate OO and actually use OO design?
        What about those huge projects that use functional designs? Like, for example, someone wrote a large order-processing app in LISP. That wasn't OO ... it was functional.

        Now, you're also making a gross generalization, which is that OO and procedural and functional (etc.) cannot work together. The best large projects tend to have OO and functional and procedural working together.

        For example(!) - a GUI backend is OO, in that it allows for objects to be built, like various Message:: and Signal:: classes. YET(!), the actual event processor is designed functionally, in that it uses handlers to process what it receives.

        Is that a bad design?

        ------
        We are the carpenters and bricklayers of the Information Age.

        Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

      Obviously you can design good software and follow design principles without OO. I am merely pointing out the fact that many formal Software Engineering techniques can not be used without OO.

      If you were to study Software Engineering then OO software design would be a big chunk of what you get taught. As for buzz-words most CPAN modules are OO and we wear t-shirts at work and thus live in a collarless soceity.