Revised Definition (Jeemin Kim)

This assignment aims to introduce its readers to the concept of Object-oriented Programming (OOP), a programming model in the domain of software engineering. Java, Python, and other programming languages widely used in the industry implement the fundamentals of OOP. This makes it important for both students majoring in a field related to computer science and those seeking for an entry-level job as a programmer, as the topic is commonly asked in technical interviews.

Parenthetical definition:

Object-oriented programming (OOP; a computer programming model based on the concept of objects) languages include Java, Python, C++, and more.

Sentence definition:

Object-oriented programming (OOP) is a type of programming in which programs are composed of objects which communicate with each other (Merriam-Webster, n.d.). An object can be defined as a data field that has unique attributes and behavior.

Expanded definition:
How is Object-oriented programming (OOP) significant?

Object-oriented programming (OOP) changed the way we view programs . Earlier, a program was viewed as a sequential means of performing calculations or manipulations. However, From an object orientation perspective, a program is viewed as a group of objects that can interact with the user as well as other programs or objects (Encyclopedia.com, n.d.). The structure of object-oriented programs makes it more comprehensible for the user. Programmers have more ease in debugging and collaborating with other programmers. See the following Comparison to understand the advantages of using an object-oriented language.

Comparison

Object-oriented programming (OOP) is often compared to procedural programming. Procedural programming is a programming paradigm that directly inputs procedures or instructions on a device to finish a task by following logical steps (Hackr.io., n.d.). While procedural programming is useful for general-purpose programming (e.g. creating a basic calculator for arithmetic), its code is often not reusable or mutable, which makes it difficult for programs that need to take into account real-word information. On the other hand, OOP is a programming paradigm that encapsulates data into objects that contain meaning and are self-sustainable. This makes it easy for programmers to reflect real-word information and make it more understandable. It also allows for programmers to reuse, update or modify code or information with more ease.

Structure

The structure of object-oriented programming include the following building blocks (Gillis & Lewis, 2021):

  • Classes are data types that act as a blueprint or template for objects, attributes and methods.
  • Objects are instances of a class that are created with specifically defined data.
  • Methods are functions that are defined inside a class that describe a behavior of an object.
  • Attributes are defined in the class template and represent the state of an object.

Figure 1: An example of the structure and naming in OOP. Source: Gillis, A. S., & Lewis, S. (2021, July 13). What is object-oriented programming (OOP)? SearchAppArchitecture.

Example

The concept of OOP can be better understood by using real-world examples. Say that we are creating a dog simulation game. It would first make sense to create a Dog class, because any instance of a dog will have common attributes or behavior. If we create a specific instance of a dog, such as a golden retriever named Goldie or poodle called Noodle, each instance or object will be created with property values including its color and size contained in that instance. Each dog instance can perform methods (i.e. exhibit behavior) that are defined in the class, such as “Sit” and “Lay Down”.

Figure 2: Image of Dog class and instance (object). Source: Singh, A. (2020, January 14). Object-oriented programming. Medium.

Citation

Encyclopedia.com. (n.d.). Object-Oriented Languages. Encyclopedia.com. Retrieved June 13, 2022, from https://www.encyclopedia.com/computing/news-wires-white-papers-and-books/object-oriented-languages

Gillis, A. S., & Lewis, S. (2021, July 13). What is object-oriented programming (OOP)? SearchAppArchitecture. Retrieved June 8, 2022, from https://www.techtarget.com/searchapparchitecture/definition/object-oriented-programming-OOP

Merriam-Webster. (n.d.). Object-oriented programming definition & meaning. Merriam-Webster. Retrieved June 8, 2022, from https://www.merriam-webster.com/dictionary/object-oriented%20programming

Singh, A. (2020, January 14). Object-oriented programming. Medium. Retrieved June 8, 2022, from https://medium.com/@singhamritpal49/object-oriented-programming-9beb509d4fcf

What is procedural programming? [definition] – key features. Hackr.io. (n.d.). Retrieved June 8, 2022, from https://hackr.io/blog/procedural-programming

Leave a Reply

Your email address will not be published. Required fields are marked *

*