软件设计的核心为抽象,软件工程师如果不懂抽象就像厨师不会掌握火候,投资人不懂复利一样可怕,就是你还木有摸到这个行当的窗户。可以这样讲一切设计模式,架构模式,编程语言都是以抽象为核心来展开的。

套用黑格尔的话:世界是物质的,这就抽象出了class,各种各样的物质都有其共同的物质特性,和行为,有如黄金无价,兔子跑的快,人挣钱,其中无价 是黄金的属性,人挣钱是人的行为,由此抽象出了class 的 member very及member fun.物质的世界并不是铁板一块,他们之间存在着各种各样的关系,这种关系本身就抽象出来了继承和模板。而这些概念就是语言设计的核心,从这些概念出发去理解各种语言将达到最好的效果,可以这样讲:几百页厚的C++ 说到底也就是讲了3种抽象方法而已。

1,运算符

2,类

3,模板。

计算机语言的出发点就是抽象,在计算的世界了一切皆抽象。

c++ 语言设计原理之我为抽象狂相关推荐

  1. [C++程序语言设计笔记一]面向对象编程抽象,继承,重写基本介绍

    今天是个不错的日子,不仅有人收了我做徒弟从此传授我有关C++的一些知识,由于前一段时间喜欢上了外挂的研究也用到了一些MFC的知识及一些Windows APIs编程,但是对C++还是没有从根本上认识.我 ...

  2. SOA系列文章(二):服务设计原理:服务模式和反模式

    服务设计系列的法则已经发展到最佳通信实践和取样相关编码的程度.本文提供了设计和实现网络服务的基本原理,并且对面向服务的体系结构(SOA)的相关概念做了一个简要的回顾,以及有关于几种模式和反模式的详细讨 ...

  3. 软件工程(总体设计②设计原理)

    设计原理 模块化 模块是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它. 按照模块的定义,过程.函数.子程序和宏,都可作为模块. 面向对象方法学中的对象是模块,对象内的方法也是模块.模 ...

  4. 深入解读 MySQL 架构设计原理,剖析存储架构选型核心

    孙玄,江湖人称"玄姐",前58集团技术委员会主席,前转转二手交易平台首席架构师.今天想跟你聊点儿企业里那些年薪百万的架构师,他们的架构设计思维是如何升级的,以及他们是如何玩转 My ...

  5. 深入剖析Spring架构与设计原理(一)

    深入剖析Spring架构与设计原理(一) 1. IOC的基础 IOC/AOP是Spring的基础, 是Spring平台实现的核心部分. 虽然,我们一开始大多只是在这个层面上,做一些配置和外部特性的使用 ...

  6. skynet设计原理和使用

    skynet设计原理 一.多核并发编程方式 二.skynet 2.1.skynet简介 2.2.环境准备 2.3.编译安装 2.4.Actor 模型 2.5.消息队列 2.6.actor公平调度 三. ...

  7. Go语言设计与实现 -- 内存管理器

    不同的编程语言选择不同的方式管理内存,本节会介绍Go语言内存分配器. Go内存分配的设计思想是: 内存分配算法采用Google的TCMalloc算法,每个线程都会自行维护一个独立的内存池,进行内存分配 ...

  8. Nacos 注册中心主要贡献者详解注册中心的设计原理

    服务发现是一个古老的话题,当应用开始脱离单机运行和访问时,服务发现就诞生了. 目前的网络架构是每个主机都有一个独立的 IP 地址,那么服务发现基本上都是通过某种方式获取到服务所部署的 IP 地址.DN ...

  9. 计算机基础教学评价ppt,教学PPT课件:教学PPT的设计原理和评价标准

    原标题:教学PPT课件:教学PPT的设计原理和评价标准 是一种多媒体演示型软件.在课堂教学中可以作为板书呈现教学内容,比黑板有更多优点. Powerpoint特点分析: 一.优点:1.信息形式多媒体化 ...

最新文章

  1. 出现should be mapped with insert=“false“ update=“false“的解决方法
  2. python【蓝桥杯vip练习题库】ALGO-195 1的个数
  3. Web前端开发笔记——第二章 HTML语言 第八节 表单标签
  4. React后台管理系统-file-uploader组件
  5. 作者:许洪波,男,博士,中国科学院计算技术研究所副研究员、硕士生导师。...
  6. w7设置双显示器_学习工作效率不高?处理事情慢半拍?教你使用双显示器来改善...
  7. Windows Debugging之六
  8. ubuntu .7z解压缩
  9. 解决办法:ImportError: 'module' object has no attribute 'check_specifier'
  10. java的hbox,Java HBox.setPrefHeight方法代码示例
  11. NumPy库---数组的基本操作
  12. java cas单点登录_JAVA - 登录 单点登录 cas
  13. SCI论文下载之chrome插件
  14. 《工业设计史》 第三章:18世纪的设计与商业
  15. OSChina 周五乱弹 —— 毁人不倦的大师们
  16. 惠普HP LaserJet Pro P1106 打印机驱动
  17. 安卓AS一键发布到蒲公英
  18. 经典卷积网络--InceptionNet
  19. C/S和B/S平滑模糊的时代----推荐:云计算时代的生命周期(吕建伟)
  20. 用python玩转数据慕课答案_大学慕课用Python玩转数据章节测验答案

热门文章

  1. 几种查看Matlab函数源代码的方法
  2. 【极海APM32替代笔记】低功耗模式下的RTC唤醒(非闹钟唤醒,而是采用RTC_WAKEUPTIMER)
  3. android开发整人软件,趣味整人软件:让手机屏幕一点就碎
  4. access violation at address 解决之法【转】
  5. 计算机网络教室财产登记册,一般计算机室、网络教室管理员岗位职责有哪些
  6. C# Microsoft.Office.Interop.Owc11 导出excel文件
  7. 博客系统 - 数据库设计(二)
  8. 安装打印机后默认不是中文的原因及解决方法
  9. python在化学中的应用_python化学库
  10. 如何经营一家水果店,怎么做好水果店的经营