您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 面向对象程序设计C++课件
面向对象程序设计C++本课程学什么?有什么用?教材:面向对象程序设计:C++语言描述作者:(美)约翰逊鲍尔等著蔡宇辉,李军义译出版社:机械工业出版社VC++6.0作业软件在上海大学的乐乎网络硬盘中的下载地址提取码:shuleidian上海大学雷电上海大学雷电计算机的发展计算机发展的速度、性能的极限1.“摩尔定律”:微处理器的速度会每18个月翻一倍。2.“吉尔德定律”:主干网的宽带将每6个月增加一倍。3.“麦特卡尔夫定律”:网络的N个联结能够创造N平方的效益。4.“比尔·盖茨定律”:软件的发展无极限,它只受人的想象力的限制。世界工业现状中国经济转型。发达国家制造业回归,西方强国“再工业化”。世界上很多国家都在制定制造业发展战略。当前,信息技术、新能源、新材料、生物技术等重要领域和前沿方向的革命性突破和交叉融合,正在引发新一轮产业变革,将对全球制造业产生颠覆性的影响,并逐渐改变着全球制造业的发展格局。特别是新一代信息技术与制造业的深度融合,将促进制造模式、生产组织方式和产业形态的深刻变革。以德国工业4.0、美国工业互联网、新工业法国为代表,主要发达国家围绕建立制造竞争优势,加快在信息基础设施、核心技术产业、以智能制造为核心的经济体系等方面进行战略部署,谋求在技术、产业方面继续领先优势,占据高端制造领域全球价值链的有利位置。上海大学雷电国家战略2015年5月19日,国务院正式印发了我国实施制造强国战略第一个十年的行动纲领——《中国制造2025》。工信部部长苗圩说:1.一个目标:制造业大国向制造业强国去转变2.就是通过两化融合发展来实现这个目标3.“三步走”3个十年,四项原则,五条方针,十个领域(新一代信息技术产业,新能源,…总理李克强说:上海大学雷电《中国制造2025》可简单概括为“一二三四五五十”《中国制造2025》的“要害”:实现中国“智”造。“智”从哪里来?就是要集众人之智。权威解读《中国制造2025》:1.对新一轮科技革命和产业变革的战略高度做出的一项重大战略决策。50多位院士和100多位专家参加制定。德国工业4.0主要体现产业界的意图,《中国制造2025》体现国家战略意图。2.《中国制造2025》将智能制造作为主攻方向。上海大学雷电国家战略2015年07月04日国务院发布《国务院关于积极推进“互联网+”行动的指导意见》工信部部长苗圩说:我说:上海大学雷电我认为“互联网+”是一个很大的概念,互联网+社会就变成社会信息化,互联网+环保,就可以绿色化发展。但是我认为最具备条件的,还是互联网+先进制造业,这将成为“互联网+”最先突破的一个领域。互联网企业+制造业Google+无人汽车。。。。阿里巴巴+智能机器人。。。百度+人工智能。。。传统企业+互联网GE+互联网(工业互联网)你所在的企业+互联网国家战略具体化1.智能制造就是要研发出一批智能化的产品。比如机器人。2.整个生产过程的智能化或者叫信息化。3.旨在通过物联网、云计算、大数据等新一代信息技术,与已有的信息化、自动化技术结合在一起,把制造系统的各元素联结起来,形成信息物理系统,实现相互协同、遥相呼应。实例:全无人驾驶交通体系。上海大学雷电如何实现机器的智能化智能的机理是什么?是程序。见下页机器的能够实现智能化吗?1.离开语言还会有智能吗?世界可以用语言描述(自然,数学语言…),可以用符号标识,与媒介无关,中文英文阿拉伯文都可以,关键是标准统一,映射统一。人用语言工具可以推理,计算—智能。2.只有0,1两个符号的机器可以描述世界吗?可以计算和推理吗?图灵机。上海大学雷电上海大学雷电程序软件智能智慧生命体用计算机语言编写的命令序列的集合与计算机系统有关的程序、规程、规则,以及文件、文档及数据代码数据01010101000000010010101语言智能、数学逻辑智能、空间智能、身体运动智能、音乐智能人际智能、自我认知智能、自然认知智能硬件的灵魂C/C++C#JavaJavaScript汇编语言BasicObjective-CFortran宇宙的法则是很简单的,但结构是很复杂的。不是庐山真面目,只缘身在此山中。本课程的本质特征天下不会掉馅饼,实现《智能制造》、《互联网+》其实就是要设计程序。如何用01数字来描述世界,分析计算变换驱动世界,即如何设计出智能电脑程序。越来越智能,程序越来越复杂,设计决定了其成败,80年代就开始出现软件危机了。见下页本课程介绍的程序设计方法的精髓是:按照人对世界的认识的方法来设计程序。只有想不到,没有做不到!上海大学雷电上海大学雷电软件危机计算机硬件的性价比不断提高,促使把更多更复杂的问题交给计算机去解决。上海大学雷电编程是重要的,但更具有决定意义的是系统设计(好比建筑设计图等)。软件危机:系统的复杂性超出了所能驾御的程度。85%的错误是在需求分析和设计时犯的。人们一直在寻求更先进的软件方法与技术而奋斗。面向对象的方法是当前软件领域(分析、设计、编程、测试)的主流技术。面向对象的程序设计是使计算机向有表述能力的媒体发展的思想方法,解决方案。我们为什么比美欧落后那么多?中国是制造业大国,却不是强国,前面的分析已知道了,就是软件落后。起步相同,为什么那么落后?中国是仿冒强国,却是原创弱国。同样,我们这门课,很难学习,常常是不理解为什么要这么做,于是就是生搬硬套。有人问金庸在剑桥大学读到了什么好书,金庸说:上海大学雷电在中国的文化里,理性思维似乎是一直受抑制的,中国文人传统都是非理性思考者。所谓非理性思考,主要是形象思维,包括联想、比方等形式,这些思维方式作为人类与生俱来的思维方式的一种,一方面当然具有它的好处(如,联想启发新思路,类比也有助于用新的方式解决既有问题),然而,这样的思维方式同样也充满了各种各样的谬误,随处可见的不靠谱的类比和文字游戏。在科学上满足于司空见惯,想当然,浮躁,缺乏逻辑分析,所以很难深入下去。上海大学雷电例:宇宙有边界吗?形象思维中,有!没有!有!!没有!!只有诡辩理性的思维,程序设计的思维方法:什么是边界?先要定量或数字化的定义,即要先建立模型--非欧几何、空间弯曲、相对论。又如√2=1.4142135623730950488016887242097有人问金庸在剑桥大学读到了什么好书,金庸说:上海大学雷电读到好书并不重要,重要的是学到了英国与中国完全不同的研究学问的方式。“中国人写文章大致有个方向,高屋建瓴地写;英国教授则要求,写文章每一句话都要有根据,要拿出证据,否则不成立。做学术必须有根有据。软件定义网络软件定义数据中心软件定义硬件软件定义服务。。。软件定义世界人类发展出高等数学和电脑程序来解决复杂的事物关系,成为现代文明高速发展的核心动力,而文学家艺术家哲学家等就退出了人类文明推动力的核心群体,逐步边缘化。软件定义一切,软件驱动世界上海大学雷电上海大学雷电面向对象的程序设计总要落脚到一种语言来描述.学习那种计算机语言最好?PC机上:上百种计算机语言大浪淘沙FORTRAN(最古老的高级语言)BASIC-QBASIC-VisualBASIC-VisualBASIC.NETPASICAL-Delphi;Object-C(苹果)JavaC-C++-VisualC++-C#(最新的计算机语言)VisualC++.NET.(见01-客观认识C++.ppt)其他机种各种硬件驱动程序、单片机、数字信号处理器等:汇编语言(与机器有关)、C语言、C++语言客观认识C++.ppt最大的优点:全能,高效、专业。最大的缺点:开发效率低自动化专业的学生当然是学习C/C++语言最好!上海大学雷电系统编程C++是一种倾向系统编程的通用程序设计语言:是更好的C支持数据抽象支持面向对象的编程支持泛型编程系统编程是指,传统上与操作系统和基础工具有关的任务。包括:操作系统内核、设备驱动程序、系统工具、网络、字处理工具、编译器、某些种类的图形学和GUI、数据库系统、游戏引擎、CAD/CAM、电信系统等等。这类工作很好地代表了当前的C++用户。上海大学雷电支持面向对象程序设计的通用语言:C++(VisualC++),Java,Delphi,VisualBASIC.NETC++指的是面向对象C语言。C++被奉为一门激动人心的语言,它利用了对象的最受欢迎的特征并尽可能避免运行时刻的缺点和开销,而且使在C语言中已有的大量投资不会浪费。所以它最适合开发服务器软件。本课程介绍C++面向对象程序设计最重要概念类,及其对象之间的相互作用。为什么C++会成功上海大学雷电怎样才能学好C++语言?自然语言:单词、语法、句子、段落、文章C++语言:关键字、语法、语句、函数、类(模块)、文件学外语:听、说、读、写学计算机语言:读、写C++语言入门容易得道难!最基本的、最死板的是语言本身(语言语法或语言规则)最难的、最灵活的是用语言工具对应用的设计,无止境。最好的学习方法是:阅读(通读教材、多读各类资料、源程序),上机实践编程。目的本课程是一个综合性实践性课程面向对象程序设计的理论、原理、概念和技术方法C/C++语言数据结构,Visual开发工具,软件工程电气工程及其自动化应用领域目标:有能力开发应用软件。这门课就是一扇门,师傅带进门进了这扇门,要多看看,学学,出门就会感觉不同了,目的也就达到了。上海大学雷电示例和就业系统集成:奥巴马学编程奥巴马向美国人喊话,呼吁每个美国人都学习编程=videoMultiNeed招聘1.://arts.51job.com/cls/class_050502.htm上海大学雷电第一章面向对象编程上海大学雷电C/C++语言面向对象的基本元素1.见婴儿学对象2.幼儿园学抽象3.中小学学推理和计算4.大学学建模,学程序设计电脑拥有或要学有对象的定义上海大学雷电现实世界的认识C++语言描述存在性、占有空间地址,内存大小可见性作用域符号标识标识符(变量)类别(特征,行为模式)类对象间信息交流对象访问(通过标识符、地址)函数调用(完成一个过程)为什么需要面向对象思维?软件是由一群有智慧、善传递信息的对象组成,富有“人性”---拟人化、人格化。例:冰箱赋予人性后,就变得主动积极活生生,智能化。在面向对象思维下,分析员、设计师、程序员达到了心心相印的境界。例:“我的一个朋友结婚了”----对象模型的通俗理解对象高度拟人化是软件设计至高无上的方针上海大学雷电上海大学雷电设计过程例:“我的一个朋友结婚了”----对象模型的通俗理解第二步:分析建模第三步:面向对象详细设计•通用算法设计•类及对象设计•消息、接口设计•子系统、组件设计第四、五步:编程,写代码;测试第一步:认识现实世界----系统分析上海大学雷电软件开发软件开发是什么?编程本身是一种个体的、富灵感的、逻辑性强的活动,但现代的软件开发更是一种群体的工程活动。1)教学观2)工程观3)艺术/工艺观。开发人员的主要动作是:理解问题空间,并设想出技术上可行的方案来解决问题;把头脑中的“内部”过程用可执行的计算机语言表达出来;留下必要的工作标记(marker)以支持首要目标(项目组内的交流)和次要目标(传递这次开发的设计思想)。设计方法:面向对象的程序设计。中心任务:设计类。上海大学雷电第一章面向对象编程1.1.1面向过程的编程自顶向下,函数层层调用.基本概念:函数子程序.Main()BuildChassis(…)BuildEngine(…
本文标题:面向对象程序设计C++课件
链接地址:https://www.777doc.com/doc-1960761 .html