OOP 概念的编程基础思想----我的感想
(The essential of OOP concept Thought)

Actually the philosofy of object oriented programming is very simple. What is an object actually? Do you know? Don't think it to complicated,keep it simple. I think you do know, yet you don't realize it when you are perfroming OO programming job. Or Who know you know.

Like in the nature, object is actual what we call "THING". A car is a thing, a bird is a thing, you are a thing too!!!! Don't forget. Object, the thing, is madeup by its parts/components, just like you have a head,a body, two hands and two legs and your tiny thing to make baby. Ha Ha Ha Ha. To be a thing, one has character/propery, has a mean to perform actions,right? Since you have your character and you can move to do some things right. So I think now you get to realize something I want to tell you.

So just like in the nature,object oriented programming(OOP)is all this about like in the nature. An object instant has its propery and its methods to perform jobs to be done.An object belong to some kind, this is so call CLASS. The class is like a kind of group of things with similar propery and methods.

Like in the nature, object,thing can multiplicate themselves. Like you can make babies with the woman you "love" right. Your baby has something in common with you,yet not quite the same, he/she has its own character/propery and he/she growup to be someone with its own behaviour right. So this come to the essential, the foundation of object oriented programming:

1. Inheritant
2. Incaptulation
3. Polymorphism

This is the beauty of Object Oriented Software Engineering,the simulation of the nature, the world we are living. The simplcity of it, and actually we all know about. But unfortunately many C++ and other OO programmers seem to forget some what it is actually very natural and simple!!!! They think in the terms of technique, the syntax, the construction of loop statement,the selection,the branching of code,the constructor, the destroyer, memories allocation,and all kind of tricks in order to get his/her program done.

This is stupib,wrong attitude to become an object oriented programmers. They simply forget the essential,the thought,the foundation of Object Oriented Engineering!!!! So my advice is, keep it simple yet perform it accordingly with correctness. Think and imagine like in the nature.

Just like thing happen and behave in the nature. Nothing secret,nothing complicated. Think like the way it happen in the nature. If a C++ or OO programmer doing his/her programming the way I tell you as above. It will become much and much easier to create even very advanced sophisticated software based on C++ or other OO programming language. This is the way,I think the proper way to perform ones OO programming job. The simplicity,the nature is the beauty!!!!

Bernardus160 于荷兰 2001-11-12

--------------------------------------------------------------------------------
 Bernardus160 回复于:2001-11-15 07:46:45

OOP 概念的编程基础思想----我的感想
(The essential of OOP concept Thought)

事实上,面向对象(物体)编程的哲学是非常简单的。究竟什么是对象(物体)呢?你知道吗?不用(要)把它想的太过复杂,其实它很简单。我想你应该知道的,只是你在从事面向对象(物体)编程的工作还未意识到它,否则,天晓得你知道什么!
 
同自然界一样,对象(物体)就是那些被我们称为“东西”的东西。汽车是个东西,小鸟是个东西,你也一样是个东西!!!!这一点你可不能忘记哦(雨飞谓: 除非你自己承认自己不是东西。^v^嘿嘿~~)。对象(物体)这个东西,是由它的各个部分(被称为组件)组合而成,就好像你是有头,身体,双手,双腿,和你的那个生小孩的“小东西”(雨飞谓:俗称“鸡巴”)一样。哈哈哈哈。作为一个对象(物体),当然要有自己的特性(被称为属性),还意味着会有动作的功能,不是吗?就像你有你的独特性格和你会以你的性格去做一些事情一样。我想现在你应该意识到我想对你说些什么了吧。
 
类比与自然界,面向对象(物体)编程同自然界几是完全相似的。一个对象(物体)实例有它自己的属性和完成他自己工作的方法。一个对象(物体)属于某种类型,它被称为CLASS(类)。类就像是具有相似属性和方法的一组事物(物体)。
 
形同自然界,对象(物体)具有繁殖与多种表现形式。就像你和你“爱”过的女人生的小贝贝一样,你的小贝贝会有一些和你相同的地方,但是也不完全一样,它还有他自己的个性特征(属性)和他自己的特有行为。所以所有这些才是面向对象(物体)编程的本质和基础:
 
1、继承(遗传性)
2、封装(涵存)
3、多态(一体多样化)
 
这就是与我们所生活的自然界非常相似的出色(美丽)的面向对象(物体)软件工程。事实上这个相似点地球人都知道的。但是不幸的是许多从事C++编程和其它面向对象(物体)语言编程的程序员们好像都忘记了这个实际上非常简单而自然的东西!!!!他们所想的是有限的技术,语法,循环、选择、分支结构的代码,构造,析构,内存分配,和各种各样为了他们完成代码的技巧。
 
作为面向对象(物体)的程序员们这种做法是相当愚蠢和错误的。他们完全忘记了面向对象(物体)软件工程的本质、思想和基础!!!!所以我想忠告大家,保持简单作法思想性的原则且在进行编程时相应地正确行事,以使自己能够从错误中纠正过来。一切以自然为样去思考,想象和行事。
 
就像自然界中的事物发生与演变一样,没有神秘的事物,也没有复杂的事物。对事物的思考就像它在自然界中发生那样想像演变就可以了。如果一个从事C++或者其他面向对象(物体)语言程序设计的程序员能够像我以上所说的那样去编制他们的程序,那么将会更加容易的去构建基于C++或者其他面向对象(物体)程序设计语言的高水平先进的软件,而且会做得更快更好。这只是一条路,一条我认为对从事面向对象程序设计工作比较合适的路。简单而自然是最好,最美丽的!!!!

OOP 概念的编程基础思想----我的感想相关推荐

  1. 泛型编程、STL的概念、STL模板思想及其六大组件的关系,以及泛型编程(GP)、STL、面向对象编程(OOP)、C++之间的关系

    介绍STL模板的书,有两本比较经典: 一本是<Generic Programming and the STL>,中文翻译为<泛型编程与STL>,这本书由STL开发者 Matth ...

  2. MFC界面编程基础(00):基本概念

    下一篇:MFC界面编程基础(01):Windows 编程模型 MFC:微软基础类库(英语:Microsoft Foundation Classes,简称MFC) 如果你是在windows平台上做GUI ...

  3. python 舍去小数_零基础小白Python入门必看——编程基础概念

    1. 程序的构成 程序由模块组成,一个模块对应python的源文件 ,一般后缀为:.py 模块由语句构成 语句是python程序的构造单元,用于创建对象.变量赋值.调用函数.控制语句等. 2. 对象 ...

  4. python编程基础(一):编程思想

    编程核心思想:以前我java老师曾告诉我们编程思想:初级选手应该从内而外.从小到大,先从实现一个简单的小功能开始,一点一点往里加,最后让功能变复杂(简单->复杂:可以先假定最理想.最简单的数据, ...

  5. Python笔记002-Python编程基础概念

    第二章(1):Python编程基础概念 1. Python 程序的构成 Python 程序有模块组成.一个模块对应 Python 源文件,一般后缀名是:.py. 模块有语句组成.运行 Python程序 ...

  6. java面向对象程序_面向对象编程基础(java)

    面向对象编程基础 1.1 面向对象概述 在程序开发初期,大家使用的是结构化开发语言,也就是面向过程(opp),但随着市场需求剧增,软件的规模也越来越大,结构化语言的弊端也暴露出来. 开发周期无休止的拖 ...

  7. java面向对象编程基础

    java面向对象编程基础 前言:什么是java 是咖啡飘香的清晨 - 是斯坦福校园意浓情深 - 是James的思想睿智 是剁手党双十一挥舞的利刃 是大数据云计算驰骋的平台 - 是ATM上吐出的钞票 - ...

  8. java oop概念_JAVA OOP(一)——OOP概念,类与对象

    OOP概念,类与对象 OOP--面向对象编程 类与对象 类 对象 OOP--面向对象编程 首先,我们来举一个例子: 现在我要用用代码实现下列要求,定义一只猫,它的名字叫"小芳",年 ...

  9. python编程语言零基础入门,Python编程基础知识点

    python语言基础知识有哪些? python语言基础知识如下:1.Python语言是一种解释型.面向对象的编程语言,是一种开源语言.2.表达式从左到右在同一个基准上书写. 3.对象的含义:对象是某个 ...

最新文章

  1. linux 内核调整相关参数
  2. 遇见那个对的人,便是爱情
  3. tensorflow中的正则化解决过拟合问题
  4. 初入WEBOTS半个月来的一点总结
  5. 【2016.11.16】HTML学习笔记
  6. 仿苹果手机闹钟_原来iPhone闹钟这么牛!用6年苹果今天才发现,以前不懂一直想删...
  7. Java并发编程的艺术笔记(四)——ThreadLocal的使用
  8. 搭建excel在线编辑服务器,网站如何实现在线编辑Excel?
  9. 计算机汉字录入技能怎么上,用手动录入怎么样把文件录入电脑?快速录入文字...
  10. oracle迁移价格,oracle 迁移的一般方法
  11. shell 脚本实现的 deamon 守护进程
  12. 学嵌入式职业发展方向有哪些?
  13. NYOJ 366 (全排列)
  14. 批流融合系统-SparkV2/Beam
  15. 华为鸿蒙17日,华为又有大动作,于10月17日发布全新系列手机,或将采用鸿蒙系统...
  16. 读书和不读书的人,最大的区别是什么?--林语堂
  17. 破除谷歌浏览器Google Chrome启动时打开hao123,2345等流氓网页
  18. H265(HEVC)视频下载 测试专用
  19. 面向对象案例——贪吃蛇游戏
  20. 抢占中国P2P海外第一股 宜人贷寓意为何

热门文章

  1. 渡河问题matlab程序,商人渡河问题(MATLAB版)
  2. 安装Linux虚拟机
  3. jQuery的绑定与解绑方法
  4. Step1我学习ros2的一些经历(从ubuntu安装到ros2中的位姿转换)
  5. 微信中禁止网页下拉出现网页由XXX提供
  6. c# datetime._C#| DateTime.TimeOfDay属性(带示例)
  7. 关于台电X16 plus (Tpad)安装win10系统
  8. 0x00007FFEB46D3F57 (mfc140ud.dll)处(位于*.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000000
  9. 直方图均衡化取整怎么计算_玩转直方图处理之直方图均衡化、规定化
  10. linux安装perf工具