zoukankan      html  css  js  c++  java
  • What is Object Oriented Design? (OOD)


    Object Oriented Design is the concept that forces programmers to plan out their code in order to have a better flowing program. The origins of object oriented design is debated, but the first languages that supported it included Simula and SmallTalk. The term did not become popular until Grady Booch wrote the first paper titled Object-Oriented Design, in 1982.

    Object Oriented Design is defined as a programming language that has 5 conceptual tools to aid the programmer. These programs are often more readable than non-object oriented programs, and debugging becomes easier with locality.

    Language Concepts

    The 5 Basic Concepts of Object Oriented Design are the implementation level features that are built into the programming language. These features are often referred to by these common names:



    Encapsulation
    A tight coupling or association of data structures with the methods or functions that act on the data. This is called a class, or object (an object is often the implementation of a class).
    Data Protection
    The ability to protect some components of the object from external entities. This is realized by language keywords to enable a variable to be declared as private or protected to the owning class.
    Inheritance
    The ability for a class to extend or override functionality of another class. The so called child class has a whole section that is the parent class and then it has it's own set of functions and data.
    Interface
    A definition of functions or methods, and their signatures that are available for use to manipulate a given instance of an object.
    Polymorphism
    The ability to define different functions or classes as having the same name but taking different data types.


    Programming Concepts

    There are several concepts that were derived from the new languages once they became popular. The new standards that came around pushed on three major things:



    Re-usability
    The ability to reuse code for multiple applications. If a programmer has already written a power function, then it should be written that any program can make a call to that function and it should work exactly the same.
    Privacy
    This is important for large programs and preventing loss of data.
    Documentation
    The commenting of a program in mark up that will not be converted to machine code. This mark up can be as long as the programmer wants, and allows for comprehensive information to be passed on to new programmers. This is important for both the re-usability and the maintainability of programs.

  • 相关阅读:
    《JAVA高并发编程详解》-Thread start方法的源码
    《JAVA高并发编程详解》-Thread对象的启动
    作为程序员,我建议你学会写作
    【灵异短篇】这个夜晚有点凉
    JAVA中for与while关于内存的细节问题
    通过本质看现象:关于Integer受内部初始化赋值范围限制而出现的有趣现象
    【设计模式】抽象工厂模式
    【设计模式】工厂模式
    【设计模式】单例模式
    【设计模式】基本介绍
  • 原文地址:https://www.cnblogs.com/reynold-lei/p/3411625.html
Copyright © 2011-2022 走看看