in reply to OO design vs. procedural design (Was: From the Void and into the Light...)
in thread From the Void and into the Light...

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.

  • Comment on Re: OO design vs. procedural design (Was: From the Void and into the Light...)

Replies are listed 'Best First'.
Re: Re: OO design vs. procedural design
by IlyaM (Parson) on Dec 01, 2001 at 04:38 UTC
    I haven't mentioned functional programming simply because I've never wrote anything in functional languages (with exception for very small Emacs Lisp snipplets in my .emacs). In fact I have no opinion about them and I'm not ready to discuss them. My post was about 'OO vs. procedural'. Take this note in consideration before reading my reply.

    I haven't said that several styles cannot work together. Moreover nothing in procedural programming actually implies bad design decisions. However I believe that for big projects human brains just cannot handle functional design. We have to create abstractions and it is easier for us to handle relationship between several classes of objects than relationship between numerous states of data structures and network of procedures (aka "call tree").

    This is why I think humans can write better code (in big projects) when they follow mainly OO design (vs. procedural).

    However in the bounds of some abstraction procedural design is acceptable probably (like in your example where actual event processor is quite isolated thing).

    --
    Ilya Martynov (http://martynov.org/)

      Ok. A reason, which is solid, as to why you feel OO is the better design methodology for large projects. I can respect that.

      ------
      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.