




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一人解释C语言: 目前最著名、最有影响、应用最广泛的windows、linux和UNIX三个操作系统都是用C语言编写的。OS(operating system)是计算机系统(由软硬件两个子系统构成)的核心和灵魂,它是软件中最庞大最复杂的系统软件。既然如此庞大复杂的OS都可以用c语言编写,从狭义而言,还有什么系统软件和应用软件不能用c语言编写呢?由此可以肯定的说,c语言是一门十分优秀而又重要的语言。 c语言程序设计是过程性程序设计语言,它的发展贯穿了计算机发展的历程,它蕴含了程序设计的基本思想,囊括了程序设计的基本概念,所以它是理工科高等院校的一门基础课程。 从市面上有关c语言的书籍和高等院校采用的教材来看,它们有一个共性,那就是:脱离了实际应用(全是小打小闹的小例子),纯粹的过程性程序设计,没有软件工程思想的体现,没有一定程序设计风格,仅仅是为了让大家明白什么是c语言而已。 高等院校开设c语言程序设计的目的是让学生对程序设计有个入门,有个直观的理解,同时为其他后续课程作铺垫。 C+: C+语言是在C语言的基础是扩展而成的.所以两种语言的基本语法和语义是相同。C+中加入了面向对象程序设计(OOP)的特征。 下面的三个主要性质刻划OOP语言的特点: 封装性:把一个数据结构同操作的函数(行为或方法)组合在一起。封装性是借助于一种新的结构和数据类型机制类实现的。 继承性:建立一个新的派生类,它从一个或多个先前定义的基类中继承函数和数据,而且可能重新定义或加进新的数据行为,这样就建立了类的层次。 多态性:给行为取一个名字或符号,它共享一个类的层次,在这个层次中的每个类都以适合自己的方式实现这个行为。 C#: C#(读做 C sharp,中文译音“夏普”)是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言,并定于在微软职业开发者论坛(PDC)上登台亮相.C#是微软公司研究员Anders Hejlsberg的最新成果.C#看起来与Java有着惊人的相似;它包括了诸如单一继承,界面,与Java几乎同样的语法,和编译成中间代码再运行的过程.但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角. Java: Java是一种可以编写跨平台应用软件的面向对象的程序设计语言,由升阳(太阳微电子,Sun Microsystems)公司的James Gosling等人于1990年代初开发的.具有以下特征的高级程序语言: 简单 面向对象 可分布 可解释 强壮 安全性 结构化 轻便 功能强大 多线程 动态. Java既可以被编译,也可以被解释。通过编译器,可以把Java 程序翻译成一种中间代码 - 称为字节码 - 可以被Java解释器 解释的独立于平台的代码。通过解释器,每条Java字节指令被 分析,然后在计算机上运行。只需编译一次,程序运行时解释 执行。二人解释我也来说说。最早的是C语言,它与后面几种的最大区别就是它不是面向对象,而是面向过程的。因此在C语言中,最常用的做法就是对函数的调用。C+是在C上发展起来的,他是C的超集。但他与C有着本质的区别,那就是C+是面向对象的,他支持了面向对象的诸如类、继承、多态等概念,这是编程思想上的转变。C+,没这东西。C+ Builder不是一种语言,他是Borland公司开发的一套C+的IDE,也就是一套编程软件,就像微软的Visual C+一样。因为C+ Builder较好的实现了可视化编程,使得对Windows应用程序的界面编写大为方便,因此得到了广泛的认可。顺便说一下VC+,由于VC+的编程需要一定的MFC编程基础,因此与所见即所得的C+ Builder相比,入门的门槛较高,因此仅在专业领域比较流行。Java是完全面向对象的编程语言。这也是他们与C+的最大区别。在Java中,根本告别了算法+数据结构的思维方式,完全采用对象及对象调用的编程思路。C#与Java类似,这是微软为了对抗Sun的Java炮制出来的东西,使用C的语法规则和Java的编程思想。C#和Java多用于Web应用,而C+多用于系统底层的编程,或者与Windows系统紧密关联的软件,如游戏软件。因为Windows系统本身就是用C+编写的。而Java则需要在Windows系统与Java语言之间搭建一个虚拟机系统,因此工作效率和实效性比C+要差,Java的最大好处是可移植性强,而这恰恰是因为使用了虚拟机的实现方式,从而做到了与平台的无关三人解释其实所有的高级语言大多是互通的,就像我专业学的C,学的时候大概多编些程序就能很好把握了,熟能生巧嘛然后自学JAVA,那是很快的。如果说系统地学C用了半年,那么自学JAVA,C+只用了1到2个星期。每个语言都有自己的优点,只要有一门学通,工作不会发愁的。而且如果要学其他语言就会快的多不管最先学什么语言,入门都有一定的难度,入门后就简单多了。四人解释21世纪是网络的时代,所以大部分软件都基于网络。目前市场上基于网络的软件大致按结构分为B/S软件和C/S软件其中C/S软件是指的客户端(Client)/服务器(Server)结构的软件, 也就是需要使用者下载客户端到本地,远程连接服务器使用。这类软件有:QQ,网游(魔兽卡丁车劲舞团),网上银行的个人客户端,以及一些商业软件如ERP系统,MIS系统。B/S是指的浏览器(Browse)/服务器(Server)结构的软件,没有客户端,不需要用户下载,只有你有浏览器能上网,就可以使用。这类软件有:所有的网站(百度、新浪、搜狐等),大部分的商业系统,ERP,MIS,OA,以及一些在线游戏,在线聊天系统等。总的来说,B/S慢慢取代传统的C/S成为引领市场软件的主导。C/S和B/S有哪些开发语言呢? C/S,20世纪,90年代到21世纪初,微软是C/S世界的一大霸者,它的产品如VB(Visual Basci),VC+(Visual C+)占据C/S领域的绝大部分市场。其中C+是一个跨时代,举足轻重的产品。 原因有二:一:它基于最经典的C语言的基础,保留很多C的精华 二:它是面向对象的编程语言(OOP)。和微软产品相抗衡的还有Delphi,PowerBuilder等。都具有一定份额。但是他们不如C+的地方,就是它们不是面向对象的。 顺带一提的是,Java也在这个时候异军突起,它的Swing和AWT组件,也被很多用户用来开发C/S结构的程序。虽然Java是一门更优秀完美的OOP语言,但是在C/S平台上,它无法和上述几种产品抗衡。21世纪后,微软为了与Java抗衡,开发出了.NET产品。所有微软的语言都被移植到.NET平台,所有有Visaul C+.NET,Visual Basic.NET等。但是最为出色的,是新一代的开发语言C#的诞生。是微软抗衡Java的最大武器。 C#.NET是目前最方便,功能最强大,最完美的C/S程序开发语言。再说B/S的 20世纪,B/S一直由两门语言占据着市场。即ASP和PHP,在开发中小型网站时,这两门语言显示出它独特的魅力。但是,随着网络的迅速普及,很多大型项目也逐渐往B/S方面转型,所以ASP和PHP逐渐暴露出他们的不足,它们无法开发出大型的企业级项目。这个时候:企业级三个字逐渐成为一种潮流,一种需求。在这个潮流下,J2EE诞生了,它的全名是Java 2 Enterprise Edition,Java企业版,或者称Java企业级开发平台。 J2EE是B/S开发领域的网站,一直到现在都是。微软当然也不会轻易服输,在有了.NET平台后,它们也致力于企业级平台的开发,当然最经典的产品是ASP.NET,它的语言就是C#,这符合了我上面说过的,C#是对付Java最大的武器。另外,随着移动设备(手机等)的普及,移动软件开发也成为一个潮流。在这个领域内,值得一提的还是Java的J2ME和.NET平台。科技日益发达,慢慢出来一些新生队伍,像(ROR)Ruby On Rails的崛起,不难想象它以后会成为一种潮流。说了这么多,你觉得你应该学什么呢? 推荐你走两条路 Java-J2EE C#.NET五人解释本人对Java的看法:跨平台 没有其他有点可以说 天天在那里吹开源 仔细去看他的代码基本都用C+封装了 开源纯粹是扯淡 运行速度慢的和蜗牛一样 简单的循环测试比.net慢3倍以上 函数调用等还没有进行测试 写个b/s Web应用程序还可以 写其他就不值一提 .Net封装非常全面更新速度太快 学起来把人能类类似(微软的人BT VS2008还没有玩几天 VS2010预览版都出来了)封装太高所以类功能很复杂干什么的都有 但是类底层都是开放的(可以提供对没有进行高级封装的类进行使用比如:TCPClient封装Scoket你可以使用TCPClient也可以使用Socket)而且.Net框架以及全部开源(包括所有类代码 以及底层CLR PAL CTL等已经全部开源) .Net目前不能跨平台 但是他起初设计构架是能够跨平台 实现一次编译到处运行 不过目前微软没有开发其它版本的.Net运行时框架 但是修改PAL就可以实现.Net框架的移植(不是所有都能移植Systen.Window.Forms命名空间的类不能被移植因为这个命名空间下类基本都是对Windows系统底层API的一次封装).Net基本保持了C+中的所有东西 比如:指针 运算符重载 goto语句 结构等 不过指针必须在写有unsafe关键字的类或方法内使用 而且项目必须写允许不安全运算符 别人都说Java很难 .Net简单Java实现一个功能需要些很多代码(代码写的多上班累所以工资高 天天加班).Net实现一个功能一点代码可以搞定封装很全面(代码写的少上班不累 不用加班 所以工资相对不高)简单的说你学什么东西决定拟以后生活如何!你自己看吧不过我还是喜欢.Net在很多方面都可以简单的实现 包括类库中没有封装的类因为.Net能够很容易调用其它语言编写的DLL和COM对象 很容易的和C+进行交互以及进行互相之间的函数指针传递 Web开发不次于Java 应用程序开发更是Java没有办法相比的。六人解释C+的优点两级很擅长:1:是比较贴近底层,所以处理很实时,2:更加抽象,函数,类的编写可以和类型无关,只要关心逻辑就行了,这就是C+模板的威力,C+的应用也很广泛,不仅仅局限在桌面领域C# JAVA 都是更高级的编程语言,JAVA 是个和操作系统无关的语言,就是说程序一旦写成就可以在有JAVA虚拟机的平台上运行,而且JAVA 的用法,思想也比C+简单,好学,是现在快速开发的首选C#现在是Windows平台的一门面向对象的语言,由于其.net框架封装了大量的组件,其使用非常方便,现在是Windows平台搞快速开发的第一选择,(非JAVA),语法和JAVA 类似,只是多加了点东西而已,而且C#可以直接使用C+开发出来的模块。总上所述,如果想搞短时间快速开发用JAVA C#都不错。但是想搞大规模,长时间运行的高质量软件,还是C+,代码一旦超过一定限度,C+的优势就越来越大七人解释主流的3种操作系统Windows,Linux,Unix,内核都是用C语言和汇编写的,上层高级特性是用C+写的。魔兽世界等几乎所有的网络游戏,百度搜索引擎(B),我们所用的大多数软件都是用C+写的(硬件也有很多用到C+的)。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NET windows网络框架的主角。 如果抛开一切非技术方面的因素,C# 无疑是这个星球上有史以来最好的编程语言,它几乎集中了所有关于软件开发和软件工程研究的最新成果。面向对象、类型安全、组件技术、自动内存管理、跨平台异常处理、版本控制、代码安全管理你不可能在另外的一种语言中找到所有这些特性。尽管像很多人注意到的一样,当我罗列上述特性时,总是让人想到JAVA,然而C# 确实走得更远。但现实的情况是,非技术的因素往往更能决定一个产品的未来,尤其在计算机软件的历史上,技术卓越的产品,如OS/2、Mac OS、UNIX等,都败在了Windows那漂亮的脸蛋儿下。而这一次,微软的角色好像从一个赤手空拳的革命者变成了仗势欺人的老地主,如果真是要变天,那C# 这孩子岂不是投错了胎?可能情形并非如此糟糕,毕竟瘦死的骆驼比马大,而且C# 已经提交给了一个标准化组织,一旦成了国际标准,说不准真有哪个手痒的大侠(也有可能是微软自己)给移植到Linux 和别的平台上。那样的话,JAVA可就惨了。因为JAVA的用户主要是网络服务的开发者和嵌入式设备软件的开发者,嵌入式设备软件不是C# 的用武之地,而在网络服务方面,C# 的即时编译和本地代码Cache方案比JAVA虚拟机具有绝对的性能优势。何况C# 一旦成为一个像C+ 一样的公共的标准,软件开发商既可以省去JAVA的许可证费用,也不必担心成为微软的奴隶,那些反微软的人士和主张厂商独立的人士可能也不会有什么意见。这可能正是微软所期待的。如果把C# 和 JAVA 在网络服务领域的争夺比作未来制空权的争夺的话,那么C# 和传统通用快速开发工具VB、DELPHI等的较量将是地地道道的白刃战。可能最惨的程序员就是VB程序员,在微软,VB就像离任的克林顿,不但失去了所有的光辉,而且乱事缠身。想想吧,VB6写的项目必须用转换工具转换成基于.NET的代码才能在VB7中调入,几乎面目全非。由于VB7遵循为迎合.NET而建立的通用语言规范(CLS),几乎把所有原来只在C+、JAVA等语言中可以运用的特性统统加了进来,只是语法和原来兼容。如果你是第一次在VB7中看到自己的旧VB6项目转换之后的代码,一定要当心你的心脏!所以,努力吧,别告诉我你将就此退休。DELPHI的状况也好不到哪里去,原来的看家本领是做起应用来又快又好,可现在看看最新的VS.NET Beta 1, 你会感到如此熟悉,众多的属性列表、组件谁让你穷呢,连总设计师都养不住。其实在编程语言中真正的霸主多年来一直是C+,所有的操作系统和绝大多数的商品软件都是用C+作为主要开发语言的。JAVA的程序员绝大多数也是C+的爱好者,PHP的成功里面也有类似C+的语法的功劳。在操作系统、设备驱动程序、视频游戏等领域,C+在很长的时间内仍将占据主要地位,而在数量最大的应用软件的开发上,C# 很可能取代C+的位置。首先,C# 和JAVA一样,简直就是照搬了C+的部分语法,因此,对于数量众多的C+程序员学习起来很容易上手,另外,对于新手来说,比C+要简单一些。其次,Windows是目前占垄断地位的平台,而开发Windows应用,当然微软的声音是不能忽略的。最重要的是,相对于C+,用C# 开发应用软件可以大大缩短开发周期,同时可以利用原来除用户界面代码之外的C+代码。但是,C# 也有弱点。首先,在一些版本较旧的Windows平台上,C# 的程序还不能运行,因为C# 程序需要 .NET运行库作为基础,而 .NET运行库作为现在的的Windows(XP及以后版本)的一部分发行, Windows Me 和 Windows 2000用户只能以Service Pack的形式安装使用。其次,C# 能够使用的组件或库还只有 .NET 运行库等很少的选择,没有丰富的第三方软件库可用,这需要有一个过程,同时各软件开发商的支持也很重要。第三,JAVA的成功因素里有一些是反微软阵营的吹捧,虽然“只写一次,到处运行”只是一句口号,但毕竟已经是一种成熟的技术。而C# 的鼓吹者目前只有名声不佳的微软,且只能运行在Windows上。实际上这两种语言都不是不可替代的,理智的说,对软件开发商而言,什么用的最熟什么就是最好的工具。尤其对C+的使用者,C# 没有带来任何新东西,因为.NET运行库在C+中也可以使用,没有要换的绝对的理由。综上所述,我个人认为,近几年,C# 将不可避免地崛起,在Windows平台上成为主角,而JAVA将在UNIX、Li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年工程造价师资格认证考试试题及答案解析
- 2025年复工复产安全培训测试题含答案
- 2025年广东非煤矿山安全考试高频题解及答案
- 2025年安全管理一级模拟测试题答案
- 小学数学教学课件的制作
- 说句吉祥话课件
- 2025年C证安全员考试重点突破及答案
- 语音客服安全知识培训课件
- 2025年机关物业维修工面试题库
- 2025年智能楼宇工程师面试题及答案解析
- 安宁疗护国内外发展现状及改进策略
- (高清版)DG∕TJ 08-2310-2019 外墙外保温系统修复技术标准
- 平安银行 校招笔试题目及答案
- 白酒手续转让协议书
- 病区安全质量管理
- 广东省2025届高三年级下册模拟测试(一)英语试卷(含答案)
- GA/T 2161-2024法庭科学非法集资类案件资金数据分析规程
- 贵州省建筑工程施工资料管理导则
- 无损探伤工技师技能考试题库(附答案)
- 2025年军队文职人员(司机岗)历年考试真题库及答案(重点300题)
- 部编教科书语文一年级上册教师教学用书
评论
0/150
提交评论