




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浅谈程序设计语言 很荣幸在刘玉龙老师的带领下于大学四年级的上半学期学习了C#这门程序设计语言,并开展了多次上机实验,认真地在Microsoft Visual Studio 2008软件上切实地进行了操作,由初步到加深地了解了软件的运行过程,同时完成了与实验相对应的报告总结。程序设计语言,顾名思义,是指用于书写计算机程序的语言。它有3个方面的因素,即语法、语义和语用。1)语法表示程序的结构或形式,即表示构成语言的各个记号之间的组合规律。2)语义表示程序的含义,即表示按照各种方法所表示的各个记号的特定含义。3)语用表示程序与使用者的关系。 说到程序设计语言,不得不提它的历史,计算机程序设计语言的发展经历了从机器语言、汇编语言到高级语言再到面向对象语言的历程。机器语言,计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言,用机器语言编程的程序成为目标程序。只有目标程序才能被计算机直接识别和执行。但机器语言编写的程序无明显特征,难以记忆,不便阅读和书写,且依赖于具体机种,局限性很大,机器语言属于低级语言。汇编语言,实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。它同样需要编程者将每一步具体的操作用命令的形式写出来。汇编程序通常由三部分组成:指令、伪指令和宏指令。汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作,例如移动、自增,因此汇编源程序一般比较冗长、复杂、容易出错,而且使用汇编语言编程需要有更多的计算机专业知识,但汇编语言的优点也是显而易见的,用汇编语言所能完成的操作不是一般高级语言所能实现的,而且源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。 高级语言,目前绝大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。同时,由于省略了很多细节,编程者也就不需要有太多的专业知识。高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,如目前流行的VB、C+、FoxPro、Delphi等,这些语言的语法、命令格式都各不相同。像最简单的编程语言PASCAL语言也属于高级语言. 面向对象语言,是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。 面向对象语言借鉴了20世纪50年代的人工智能语言LISP,引入了动态绑定的概念和交互式开发环境的思想;始于20世纪60 年代的离散事件模拟语言SIMULA67,引入了类的要领和继承,成形于20世纪70年代的Smalltalk。主要特点: (1)识认性,系统中的基本构件可识认为一组可识别的离散对象; (2)类别性,系统具有相同数据结构与行为的所有对象可组成一类; (3)多态性,对象具有惟一的静态类型和多个可能的动态类型; (4)继承性,在基本层次关系的不同类中共享数据和操作。 其中,前三者为基础,继承是特色。四者结合使用,体现出面向对象语言的表达能力。回顾大学经过的这几年,我们陆续学习了C语言、C+语言、java语言,以及到目前的C#语言,虽然对学过的每种语言并不是相当深入地了解,但对于它们各自间的特点和性质还是比较熟悉的,下面做一个相对完整的分析。 C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。 C+语言是一种优秀的面向对象程序设计语言,它在C语言的基础上发展而来,但它比C语言更容易为人们学习和掌握。C+以其独特的语言机制在计算机科学的各个领域中得到了广泛的应用。面向对象的设计思想是在原来结构化程序设计方法基础上的一个质的飞跃,C+完美地体现了面向对象的各种特性。 C语言 & Visual C+优点: (1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。 (2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。 (3)VC是微软制作的产品,与操作系统的结合更加紧密。 缺点: (1)对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。 Java,是一种简单的,面向对象的,分布式的,解释的,健壮的,安全的,结构的中立的,可移植的,性能很优异的多线程的,动态的语言。它的开发环境有不同的版本,如sun公司的Java Developers Kit, 简称 JDK。后来微软公司推出了支持Java规范的Microsoft Visual J+ Java开发环境,简称 VJ+。Java与C/C+语言区别 Java提供了一个功能强大语言的所有功能,但几乎没有一点含混特征。C+安全性不好,但C和C+被大家接受,所以Java设计成C+形式,让大家很容易学习。 Java去掉了C+语言的许多功能,让Java的语言功能很精炼,并增加了一些很有用的功能,如自动收集碎片。 Java去掉了以下几个C和C+功能: (1)指针运算 (2)结构 (3)typedefs (4)#define (5)需要释放内存 这将减少了平常出错的50%。而且,Java很小,整个解释器只需215K的RAM。 面向对象:Java实现了C+的基本面向对象技术并有一些增强。Java处理数据方式和用对象接口处理对象数据方式一样。C#是一种安全的、稳定的、简单的、优雅的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。以及综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。 同时它是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。 另外,其中的面向对象和面向过程的语言至于有什么区别。简单地打个比方:如果你要做个航空系统的网站,对于乘客这里,用面向对象的思想,你把所有乘客的属性,方法等全部写出来,不管项目是否需要这些功能。而面向过程是你想到哪些属性方法就写哪些。当你这个项目需要加一些乘客的功能的时候,如果是用面向对象的思想的话,那么直接在那个功能里面写代码就是了,而面向过程的话则需要重新写,这样一来麻烦很多。不能体现程序本身的一些重用,封装等等性能。总之在学习过程中遇到了些许问题: (1)进行兴趣很高,随着学习的进展,调试程序总是出现问题,严格的语法规则,一时难以接受,产生畏难情绪,总是怕,最后因为怕学不好而导致没有学好。 (2)注重理论学习,忽视上机编程实践,造成“只能用笔在纸上编程”的奇怪现象。一到机器前面就手忙脚乱,如果程序再出现错误,就更不理解该如何查找错误,如何排除错误了。 (3)前期没有抓紧,希望通过突击搞定课程学习。本课程要靠平时的积累,几乎不能靠临时突击,因为前面基础补扎实,到了后面已经无法弥补。 (4)另外一种现象是太注重学习句子的语法规定,忽视了对编程的思路和技巧的训练。学习结束的觉得就是:对每一个句子的语法和每一条规定都明白,就是面对实际问题的时间不理解该如何思考,该如何编程。 (5)急于求成,总想编写综合性的程序,忽视基本概念,忽视基本功的训练和练习。在编写程序中发现问题,一追根源,全是概念或基础问题。 最近才发现学好编程语言类课程,没有什么窍门,只能采用一些“笨”技巧: (1)认真听讲,积极思考,提高上课效率。教师上课讲述的都是课程的重点和难点,听好课程能够达到“事半功倍”的目的。 (2)关键就是主动上机,多多实践,提高动手才能,实习时不能着急。通过上机实践来验证所学的理论,通过在机器上查找错误来巩固概念,通过提高上机才能来促进理论学习,开阔编程思路,提高反映效率,提高分析问题解决问题的才能,锻炼心理素质,提高心理承受才能。 (3)学习初期重点掌握语言的语法和规定。这是基础。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国铝金迷你气缸行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 2025年 钳工技师职业资格考试试题附答案
- 音响发光式电压检测器行业深度研究分析报告(2024-2030版)
- 吉林省智能晾衣架项目可行性研究报告范文
- 2025年中国路径行业市场发展前景及发展趋势与投资战略研究报告
- 2025年 电子商务师三级考试模拟试题附答案
- 中国航空电子行业市场深度分析及投资战略规划报告
- 中国塑料玩具小船行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 中国石英晶振行业市场全景评估及发展战略研究报告
- 中国滴眼剂行业市场发展现状及前景趋势与投资分析研究报告(2024-2030)
- 中医药与老年病科课件
- 2025春季学期国开电大本科《人文英语4》一平台机考真题及答案(第三套)
- 国家开放大学《人文英语4 》期末机考题库
- 2024年河北特岗教师计划招聘真题
- 道教考试试题及答案
- 车位租赁备案合同
- 2024年中考二模 模拟卷 数学(江西卷)(参考答案及评分标准)
- 综合办公室考试题及答案
- 2025年中考押题预测卷:生物(福建卷01)(考试版)
- 劳务费合同协议书
- 人工智能提示词工程师试题含答案
评论
0/150
提交评论