You are on page 1of 1

CS304 GDB Solution Fall 2019 & 2020

Solution

I don't think so. In today's computer era, many different solution directions exist for any
given problem. Where OOP used to be the doctrine of choice, now you would consider it
only when the problem at hand fits an object-oriented solution.

Reason 1:
 When your problem can be decomposed in many different classes with each many
instances, that expose complex interactions, then an OO modeling is justified. These
problems typically produce messy results in other paradigms.

Reason 2:
 The use of oo design patterns provides a standardized approach to problems, making
a solution understandable not only for the creator, but also for the maintainer of
code. There are many oo design patterns.

SOLUTION IDEA 2 :
Throwing out OOP is foolish, it is a powerful tool. Using OOP incorrectly or when it isn't
needed is bad code, and languages that force OOP without any alternative are therefore
'bad' in the sense that they force code clutter and bloat that is not needed. You should not
need an object to add 2 integers together, and languages that force an object to do that are
painful. Languages that make you tie yourself in a knot to do OOP because it isn't well
supported, like C, are also painful for problems where OOP is the right approach.
The alternatives exist. Before objects, we had procedural programming. There are other
approaches as well, but that is the big non OOP one.

You might also like