当前位置:首页 > 教育培训 >

c语言是面向什么的程序设计(c语言程序设计是面向过程的程序设计)

来源:原点资讯(www.yd166.com)时间:2023-06-19 12:21:26作者:YD166手机阅读>>

这年头,信息奥赛逐渐进入了大众的视野。孩子进入四年级以后,总有家长问:孩子该学C还是C ? 其实还有Python,我先选择性忽略。

从计算机从业人员的角度而言,两门语言有着很大的区别,C语言是面向过程的通用程序设计语言,而C 则是面向对象的通用程序设计语言。

啥叫面向过程和面向对象?通俗地讲,面向过程侧重于分析解决问题所需要的步骤,然后用一个个函数去实现这些步骤。而面向对象则侧重于分析问题中的参与对象以及这些对象之间的关系。

CSDN上举的一个例子比较形象。

用面向过程的方法写出来的程序是一份蛋炒饭,而用面向对象写出来的程序是一份盖浇饭。

啥意思呢?

蛋炒饭制作的最后一道工序是把米饭和鸡蛋混在一起炒匀。盖浇饭呢,则是把米饭和盖菜分别做好,你如果要一份红烧肉盖饭呢,就给你浇一份红烧肉;如果要一份青椒土豆盖浇饭,就给浇一份青椒土豆丝。

蛋炒饭的好处就是入味均匀,吃起来香。如果恰巧你不爱吃鸡蛋,只爱吃青菜的话,那么唯一的办法就是全部倒掉,重新做一份青菜炒饭了(讲的是紧耦合)。盖浇饭就没这么多麻烦,你只需要把上面的盖菜拨掉,更换一份盖菜就可以了(讲的是松耦合)。

盖浇饭的好处就是"菜"“饭"分离,从而提高了制作盖浇饭的灵活性。饭不满意就换饭,菜不满意换菜。用软件工程的专业术语就是"可维护性"比较好,“饭” 和"菜"的耦合度比较低。蛋炒饭将"蛋”“饭"搅和在一起,想换"蛋”"饭"中任何一种都很困难,耦合度很高,以至于"可维护性"比较差。软件工程追求的目标之一就是可维护性,可维护性主要表现在3个方面:可理解性、可测试性和可修改性。面向对象的好处之一就是显著的改善了软件系统的可维护性。

当然,C语言在解决紧耦合问题方面也不完全像上面的例子那么不堪。一名C语言高手也能写出很好的松耦合程序,而只学习了C 语法的程序员却写不出好的面向对象程序。这背后,是程序员对问题抽象和系统可扩展性的深入理解和追求,已经上升到了内功层面。抽象与解耦,这是一名优秀的程序员深入骨髓的思维方式,并不会因为你学了一门语言就有根本的改观。

好了,说了这么多。那肯定要学C 啊。

其实,千万不要听外人忽悠,对于参加信息竞赛的中小学生而言,上面说的这些都不是原因。孩子学C 原因只有一个,就是C 是考试语言!

中小学生所学的C ,基本不涉及面向对象的内容,所以基本等同于C。家里有一本中国计算机学会主编的《CCF中学生计算机程序设计》书,就是用的C 语言,里面对面向对象的内容基本上只字未提,而这其实才是C 的核心。所以,信息竞赛所学的C ,其实是被阉割了的C !

当然,如果要真正学C ,那推荐《C Primer》和《C 编程思想》。不过,中小学生要理解面向对象这一套东西,还是有难度的。

公众号xuanbamath创立四周年

为大家精选了12篇必读文章。

  1. 深度好文:小学数学应该学什么,怎么学?
  2. 一个数学学霸爸爸辅导孩子的心路历程
  3. 是什么样的教育,竟要让我们的孩子以命相搏?
  4. 奥数冠军教你如何解题(付费阅读,买一赠一)
  5. 讲座视频:怎样在生活中引导孩子进行数学思考?
  6. 为什么飞机的往返飞行时间不同?
  7. 古诗词中的数学
  8. 孤独而高冷的素数
  9. 原来,毁掉一个孩子的深入思考这么容易!
  10. 没有葫芦也要会画瓢, 说说我的奥数启蒙经历
  11. 少儿编程,我这样教

12.李国杰院士作序推荐高考数学满分得主新书《给孩子的数学思维课》

c语言是面向什么的程序设计,c语言程序设计是面向过程的程序设计(1)

,

栏目热文

c语言可以面向过程编程吗(c语言是面向什么的程序设计)

c语言可以面向过程编程吗(c语言是面向什么的程序设计)

C语言的历史可以追溯到1972年,当时美国电话电报公司(AT&T)的贝尔实验室开发了一个名为“UNIX”的操作系...

2023-06-19 11:40:19查看全文 >>

c语言是一种面向对象的语言(c语言是一种面对对象的高级语言)

c语言是一种面向对象的语言(c语言是一种面对对象的高级语言)

1:c语言介绍以及由来:C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。面向过程:是指的就是分析出解...

2023-06-19 12:02:53查看全文 >>

c语言是面向对象的编程吗(c语言是面向对象设计的方法吗)

c语言是面向对象的编程吗(c语言是面向对象设计的方法吗)

C语言本身并不是一种面向对象编程语言,但是可以通过一些技巧来模拟实现面向对象的效果。在C语言中,我们可以使用结构体来代替...

2023-06-19 12:07:54查看全文 >>

c语言是面向过程还是面向对象(c语言是面向对象设计的方法吗)

c语言是面向过程还是面向对象(c语言是面向对象设计的方法吗)

1. 什么是语言,什么是C语言语言就广义而言,是采用一套具有共同处理规则来进行表达的沟通指令,指令会以视觉、声音或者触觉...

2023-06-19 12:08:00查看全文 >>

烘焙学习课程明细(烘焙培训必看)

烘焙学习课程明细(烘焙培训必看)

烘焙课程大揭秘社区学校新一期的课程已经发布啦!细心的小伙伴们应该已经注意到啦,这次我们增加了不少高质量的新课程~同学们快...

2023-06-19 12:00:03查看全文 >>

c语言属于面向过程的编程语言(面向过程化的编程语言)

c语言属于面向过程的编程语言(面向过程化的编程语言)

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向对象是...

2023-06-19 11:49:16查看全文 >>

c语言是一种面向对象的编程语言(c语言能面向对象编程吗为什么)

c语言是一种面向对象的编程语言(c语言能面向对象编程吗为什么)

术语面向对象编程: OOP, Object-oriented Programming面向对象设计: OOD, Objec...

2023-06-19 11:57:54查看全文 >>

c语言为什么不能作为面向对象语言(c语言是面向对象的程序设计语言)

c语言为什么不能作为面向对象语言(c语言是面向对象的程序设计语言)

1,C语言不是面向对象语言。因为这一点,任何学习C语言的人必须学会用函数思考问题。当你真正的去学习一门面向对象语言时,就...

2023-06-19 12:02:23查看全文 >>

c是一种面向对象的程序设计语言(面向对象程序设计期末考试题及答案)

c是一种面向对象的程序设计语言(面向对象程序设计期末考试题及答案)

目录01.为什么会选择学习c 02. C与C 的历史03. C 的特点04. c 的缺点05. c 的具体应用...

2023-06-19 12:11:30查看全文 >>

c语言是面向对象的语言对吗(c语言是面向对象的设计语言对吗)

c语言是面向对象的语言对吗(c语言是面向对象的设计语言对吗)

1、c语言是面向过程还是面向对象的语言?C语言是一门面向过程的语言。所谓面向过程就是以事件作为我们编程的中心。比如说我要...

2023-06-19 12:04:41查看全文 >>

文档排行