下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

C++的用处和带给你的影响

作者:课课家教育     来源: http://www.kokojia.com点击数:1478发布时间: 2016-07-14 16:54:16

标签: C++的用处C++的影响系统架构

大神带你学编程,欢迎选课

  随着时代的发展,编程语言在发展的路上越走越远。在1980年C++被开发出来到至今,出现了许多流行的编程语言。例如:java、PHP、C#、GO。这些编程语言发布出来之后由于各自的特性被不同的编程人员所喜爱。导致了C++的地位越来越受冷漠,在网上总可以看到“是否还需要学习C++”、“C++的用途还大不大”这一类的文章。所以我们来讨论一下对于C++的用处。

C++的用处和带给你的影响_C++的用处_C++的影响_系统架构_课课家

  C++的描述

  不管现在C++普遍度高不高,不可否认的是C++是一门高深的语言。从另一个角度来说的话,C++是一门接近于全能的语言。但是C++无法取代汇编语言,这是为什么只是接近全能的原因。现在的Java、GO、还有一些热门的语言都有着自己的领域。但是C++在某些领域拥有者根本性的优势:低级系统程序设计、高级系统程序设计、嵌入式程序设计、数值科学计算、通用程序设计以及混合系统设计等等。

  C++开发的例子

  你或者总是在烦恼C++能在什么地方有应用,对自己学习C++有一定的担忧。下面是一些用C++开发的例子:

  1. Adobe Systems:所有主要应用程序都使用C++开发而成,比如Photoshop & ImageReady、Illustrator和Acrobat等。

  2. Maya:知道“蜘蛛人”、“指环王”的电脑特技是使用什么软件做出来的吗?没错,就是Maya。

  3. Amazon.com:使用C++开发大型电子商务软件。

  4. Apple:部分重要“零件”采用C++编写而成。

  5. AT&T:美国最大的电讯技术提供商,主要产品采用C++开发。

  6. Google:Web搜索引擎采用C++编写。

  7. IBM:OS/400。

  8. Microsoft:以下产品主要采用C++(Visual C++)编写:

  Windows XP

xp系统图标_C++的用处_C++的影响_系统架构_课课家

  Windows NT:NT4、2000

  Windows 9x:95、98、Me

  Microsoft Office:Word、Excel、Access、PowerPoint、Outlook

  Internet Explorer,包括Outlook Express

  Visual Studio:Visual C++、Visual Basic、Visual FoxPro

  .NET Framework类库采用C#编写,但C#编译器自身则使用C++编写而成。

  Exchange

  SQL Server

  FrontPage

  Project

  9. KDE:K Desktop Environment(Linux)。

  10. Symbian OS:最流行的蜂窝电话OS之一。

Symbian OS 图标_C++的用处_C++的影响_系统架构_课课家

  C++是一门全能的编程语言不是没有道理的,关键在于你是否能发挥它的强大。很多毕业生会说毕业的时候接触社会上的一些需求和招聘才知道:做硬件都偏向于C甚至于汇编,软件又是容易上手的Java或者C#比较多。很多地方对于C++都并不感冒。感觉自己所说的C++都不足以自己找到工作。

  其实不然,选择了一种语言,你就选择了一种思维方式,一种程序设计思想。你如果想要跳出C++对你的束缚,你就要更加的去了解学习它,直到你可以深刻的认识和熟练的运用它。世界上一些大师级的人物,也常常毫不掩饰自己对某种语言的偏爱。一些人对语言尚一知半解,就大谈要跳出语言的束缚了,但他们就如同井底之蛙一般不是吗?C++语言复杂至极,研究性强,但一般来说,总得花费3-5年的时间去学习。

  没有所谓的选择哪个语言比较好,如果你未来打算开发安卓应用就去学习Java,如果网站开发就学习PHP或者JavaScript,IOS的开发就学习Swift。要看你个人的爱好以及对将来的打算。不同的语言,有着自己不同的就业领域。总得来说,无论你走哪一条路,学习C++总会对你带来好处,毕竟许多语言都是在此基础上进行开发的。

  设计模式和统一建模语言

  设计模式(Design Patterns)和统一建模语言(Unified Modeling Language,UML)是两个不同的概念。前者主要目标在于提供可重用的面向对象软件设计方案,后者则是一种描绘软件蓝图的标准语言。

  UML所描述的模型可以映射成C++、C#、Java等语言代码,还可以映射到关系型数据库。这个映射过程可以是双向的,并且会有相对应的软件工具支持。

  不同的语言有着不同的特性,对于设计模式在该语言中多少会有些影响。例如:使用C语言来描述设计模式,那么,继承、封装和多态等特性就变成了需要研究的设计模式,但是对于任何一门面向对象的语言来说,这都是多余的。如果看到这里对C++有兴趣的朋友,可以去阅读一下《Design Patterns: Elements of Reusable Object-Oriented Software》(中文版名《设计模式》机械工业出版社)这本书,他主要以C++和Smalltalk语言为讲解手段。

  软件系统架构和设计

  我们来聊一聊系统的架构。在企业级软件开发中,架构第一重要。架构如果存在缺陷,系统就会存在硬伤。不可否认的是优秀的架构来自于优秀的设计。

  一个好的软件,即使它没有明确地使用建模思想、架构方法,但在开发者的骨子里、潜意识中,大都具有良好的设计思想和架构。如果一个连几行像样的代码都没有写过的人,怎么可能对程序思想和架构有着深刻的了解和认识。

  我们也常常听到一些声音,不要太拘泥于语言(技术)细节了,要从大处着眼,要有大局观,架构怎么怎么重要,这些都是大实话。不过现实情况往往是,很多程序员不是太拘泥于语言(技术)细节了,而是对语言(技术)细节掌握得还远远不够。

  书本的知识固然重要,但是如果你觉得你知识读了几本书就以为自己成了气候,那就是对自己的太过自负了。要成为架构师、设计师不是纸上谈兵,而是要一步一步实践一步步积累出来的。

  数据库的作用

  只要你接触编程,数据库知识几乎是非掌握不可的,知识你对它的了解深浅不同罢了。现在市面上的软件,基本每一个都需要用到数据库。用户的注册、游戏的数据存储、使用数据的记录等等都需要数据库的存放。所以学习数据库并熟悉使用是非常必要的。

  最后说一句,对于C++的看法每个人都有不同的看法,所以C++对你来说是好是坏只能见仁见智了。不过也不要因为网上对某种语言不喜的言论就轻易放弃自己所学的东西。360行 行行出状元,编程也一样,当你熟练地运用你所学的语言的时候,可能你会发现工作一点都不难找了。

赞(18)
踩(4)
分享到:
华为认证网络工程师 HCIE直播课视频教程