Write your question here.
Hello every one, I have been given an assignment regarding object oriented programming. the only problem about it is that it is not a code related problem rather a subjective question like a discussion and I don't understand the question fully. can somebody help me, please. the question is given below:
Object Oriented Programming (OOP) allows us to handle complex code in an organized structure and break down the problem by modelling it in a way that relates to our everyday life. With fast advancement in technology and ever decreasing product cycles, many developers are starting to believe that OOP is not currently being implemented as it was intended to be implemented. They believe that OOP is unnecessarily complicating the problem solving so, OOP should be phased out as the absence of structure is better (in many cases) than having bad structure.
Analyze the above statement very carefully and answer the following:
• Do you believe that OOP should be phased out and we should start working on some alternative(s)? Provide your answer with Yes or No.
• Give your opinion with two solid reasons to support your answer.
Its an interesting question at least ... but why do they always break things by making the answer absolute? Its like asking if we should abolish screwdrivers because they can't drive nails very well.
Throwing out OOP is foolish, it is a powerful tool. Using OOP incorrectly or when it isnt 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 isnt well supported, like C, are also painful for problems where OOP is the right approach. And languages like C++ where you can do both are supreme IMHO.
The alternatives exist. Before objects, we had procedural programming. There are other approaches as well, but that is the big non OOP one. Do we need to reinvent the wheel? There are other things too; I code now in a graphical drag and drop 'language' (interface?). I guess you could call the icons objects, sorta, but its a different way of thinking.