{"id":649,"slug":"oop","name":"Object-oriented programming (OOP)","short_description":"Object-oriented programming is a programming paradigm based on the concept of objects fundamental to many programming languages.","url":"https://github.com/topics/oop","github_count":17456,"created_by":"MIT, Alan Kay","logo_url":null,"released":"1960","wikipedia_url":"https://en.wikipedia.org/wiki/Object-oriented_programming","related_topics":["procedural-programming","open-closed-principle","inheritance","polymorphism","orm","functional-programming","event-driven-programming"],"aliases":["object-oriented-programming","object-oriented-design"],"github_url":null,"content":"\u003cp\u003e\u003cstrong\u003eObject-oriented programming\u003c/strong\u003e (\u003cstrong\u003eOOP\u003c/strong\u003e) is a programming paradigm based on the concept of objects fundamental to many programming languages, including \u003ca href=\"https://github.com/topics/java\"\u003eJava\u003c/a\u003e and \u003ca href=\"https://github.com/topics/cpp\"\u003eC++\u003c/a\u003e. OOP can be devided in two sub types: class-based (or “classical”) and prototype-based OOP (found in \u003ca href=\"https://github.com/topics/javascript\"\u003eJavaScript\u003c/a\u003e, for example).\u003c/p\u003e\n\n\u003cp\u003eObject-oriented programming has several advantages over procedural programming:\u003c/p\u003e\n\u003cul\u003e\n  \u003cli\u003eOOP provides a clear structure for the programs\u003c/li\u003e\n  \u003cli\u003eOOP helps to keep the code DRY “Don’t Repeat Yourself”, and makes the code easier to maintain, modify and debug\u003c/li\u003e\n  \u003cli\u003eLogic can be abstracted, encapsulated, composed, inherited and decoupled\u003c/li\u003e\n\u003c/ul\u003e\n","created_at":"2024-07-29T13:51:58.026Z","updated_at":"2026-04-19T00:24:19.807Z","topic_url":"https://awesome.ecosyste.ms/api/v1/topics/oop","html_url":"https://awesome.ecosyste.ms/topics/oop","projects_url":"https://awesome.ecosyste.ms/api/v1/projects?keyword=oop","lists_url":"https://awesome.ecosyste.ms/api/v1/lists?topic=oop"}