Hellow Friends:
I want to know the difference between Structured software engineering and Object oriented software engineering. And as well, what is the advantage and disadvantage of one on another.
regards,
ben.
Hellow Friends:
I want to know the difference between Structured software engineering and Object oriented software engineering. And as well, what is the advantage and disadvantage of one on another.
regards,
ben.
We might think this would be easy to answer. We might be wrong.
First, we have to look at what Structured and Object Oriented mean.
Object Oriented (from WikiPedia http://en.wikipedia.org/wiki/Object_oriented) is:
(an) Object-oriented system is composed of objects. The behaviour of the system is achieved through collaboration between these objects, and the state of the system is the combined state of all the objects in it. Collaboration between objects involves them sending messages to each other. The exact semantics of message sends between objects varies depending on what kind of system is being modelled. In some systems, "sending a message" is the same as "invoking a method".
Structured Programming is a subset of Procedural Programming (Wiki: http://en.wikipedia.org/wiki/Structured_programming). An example is this:
Coders should break larger pieces of code into shorter subroutines (functions, procedures. methods, blocks, or otherwise) that are small enough to be understood easily. In general, programs should use global variables sparingly; instead, subroutines should use local variables and take arguments by either value or reference.
Sounds similar, doesn't it? It is. The major difference is in the language you choose and how you implement these 'things' within the language or framwork. Some languages and frameworks (like .net) are strongly typed Object Oriented languages. EVERYTHING is an object. While a few built-in methods could qualify as procedural, and we often write subroutines that would be indistinguishable from a similar method in a non-OO language, nonetheless in an OO environment we always deal with objects.
Some languages like ADA, C, PL/1, etc, are classical structured languages. Frameworks like dotNet are close to 100% OO.
Which is better? Your call. Depends on what you're planning to do for a living, and which suits you better. You will find strong proponents of both from various fields. Whatever works for you is where you need to be.
Me, I prefer OO. I've done a fair amount of Procedural and Structured as well, but OO seems to make more sense in my daily work.
Hope that helps!
Ned
Thankx
For your Enthusiasm to help me
Regards,
Ben.
We might think this would be easy to answer. We might be wrong.
First, we have to look at what Structured and Object Oriented mean.
Object Oriented (from WikiPedia http://en.wikipedia.org/wiki/Object_oriented) is:
Structured Programming is a subset of Procedural Programming (Wiki: http://en.wikipedia.org/wiki/Structured_programming). An example is this:Sounds similar, doesn't it? It is. The major difference is in the language you choose and how you implement these 'things' within the language or framwork. Some languages and frameworks (like .net) are strongly typed Object Oriented languages. EVERYTHING is an object. While a few built-in methods could qualify as procedural, and we often write subroutines that would be indistinguishable from a similar method in a non-OO language, nonetheless in an OO environment we always deal with objects.
Some languages like ADA, C, PL/1, etc, are classical structured languages. Frameworks like dotNet are close to 100% OO.
Which is better? Your call. Depends on what you're planning to do for a living, and which suits you better. You will find strong proponents of both from various fields. Whatever works for you is where you need to be.
Me, I prefer OO. I've done a fair amount of Procedural and Structured as well, but OO seems to make more sense in my daily work.
Hope that helps!
Ned
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.