by
marwa khalaf , .Net Developer , Sands National Academy
its a programming way that enables you to define new classes( new type) that you can create instances(objects) from them and instances of the same class share the same attributes and methods.
the use of methods will reduce number of code lines and that will lead to high performance and better maintenance
It's all about better code re-usability, and better code maintainability.
When you have less code in your application, the application is for sure more maintainable, and less complex. this is very useful consideration for applications that have a life cycle of several years of development, and it's for sure a success factor to minimize cost and error, since simpler applications requires less efforts and resources for the development cycle.
Sometimes OOP comes with a little overhead on performance than procedural implementation.
it is a programming paradigm that represents concepts as "objects" that have data fields (attributes that describe the object) and associated procedures known as methods. Objects, which are instances of classes, are used to interact with one another to design applications and computer programs in a simple, maintainable and easy to understand way.
It's the ability to create objects of a certain class these objects of same class have same features and specifications this makes the code reusable and easier to maintain, as when you need to modify these objects you only need to refelct your change on the class itself.
For me I consider it a way of organizing your code, and you can reuse it later easily.
Compartmentalization of your code.
This is my simplest answer for you. but off course , it has many other things.
strategy behind using oop concept is (object) and its principles inheritance,polymorphism,encapsulation,abstraction
every principle used for its own action and advantage.
like
inheritance code re usability
Abstraction is used with interface for different layers in programming
polymorphism is used for maintenance
encapsulation is used for hiding information
object which define states and behaviours.