澳门新葡亰信誉平台游戏新手求助

by admin on 2020年1月20日

尊敬的所有高手们,本人初步踏入编程的奇妙世界,有点迷茫,学习了一段delphi,但很讨厌那种pascal的代码,感觉还是C,C#之类的容易理解点,我想好好学习一门语言,望高人指点,指条明路,不胜感激。我应该选哪个方向,应该专研哪种语言?未来的发展前景是怎么样?

从什么语言入门并不重要,但是一个优秀的程序员至少应该牢牢地掌握住一门语言,最好能够达到“精通”的地步!C++语言具有广大的用户群,拥有丰富的学习资源,更有着广阔的应用前景,因此很多程序设计爱好者都希望能够把C++学好。但是C++显然要比C或者BASIC等语言复杂许多,很多人觉得学好C++实在不容易。在此我想为那些希望学好C++的读者提出一些建议和意见。
  首先我们应该对C++语言有一些定性的认识,这样做能够让我们从它与其他一些语言的联系中获得一些提点。C++是由C语言发展而来,它比C语言更加丰富更加复杂,对于那些有着一定C语言基础的读者,很多前辈都建议他们把把C++当成一门新的语言来学习,最好认为C++和C没啥关系!我却并不这样建议读者,因为两者本身并不冲突。如果你没有C语言基础,你完全不必担心,因为两者没啥关系,所以你完全没必要为了学C++而先把C学一遍。但是如果你有一定C语言基础,那么恭喜你,从C向C++过渡你将事半功倍。很多人认为C++比Java复杂的地方在于它保留了指针,很多初学者一看到指针就一筹莫展,要知道C++的一个强大之处就在于它拥有指针。如果你有一定的C语言基础,那么无疑学习C++时,指针对你来说将不再神秘。你还可以从C语言那里继承过来许多东西,它们在C++中同样适用。拜读过布鲁斯艾柯的名作《Thinking
In
C++:卷1》的人应该知道,这本书正是选择了一种从C向C++过渡的讲法来帮助读者学习C++的。这本书里并没有劈头盖脸的向读者灌输类的概念,而是选择读者所熟悉的C中的结构体来做铺垫,再转而过渡到C++中的类。总之如果你没有C的基础,无需担心;如果你有C的基础,那就更好了!
  尽管我们认为有一定的C语言基础,再学习C++会容易些。但也要避免一些混淆。千万不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样。一定要参考专业的C++书籍而不是靠自己的臆测。这也是我需要提醒读者的。
  C++是一种面向对象的语言,这是它与C的最大不同。尽管它还很保守,因为它保留了许多面向过程的痕迹,相对于Java而言,它并不纯粹。但面向对象的核心概念和思想在C++中仍然得到体现,例如继承、多态和类等概念。如果你对面向对象思想有所了解,那么学习C++会更容易上手。如果你希望利用C++来学习面向对象思想,那可能不是好的选择。当然,你可以仅仅为了学习C++而学,只是把面向对象思想的体现当作是C++的某种特殊语法来对待,那样的话你就不会被那些复杂的概念所搞晕。当你对C++认识得比较深刻之后,再接触一些面向对象的理念或许更好。
  尽管很多人仍然大力的推荐你学习C++,也会有人告诉你“C++语言不行了,应该学Java或者Python”,请一定要明确没有什么语言行不行的,只有你自己学得好不好。如果你学得似懂非懂,那就是让你学最新的语言也是白费。如果你的C++学得很牛,那你这块金子就必然有发光的时候。还有人会疑惑学C++有前途吗?或者由于到底是学这个好呢还是那个好呢?这些都是阻碍你静下心来好好学习的思想关卡。学哪个并不重要,才好才是硬道理。任何好的前途也都是以扎实深厚的知识为基础的,如果你总是想着学哪个,或者学了有没有用,那么你当然永远都学不好,学不好自然谈不上有什么前途可言。你要做的只是踏踏实实学习的人,而不是只观望不学习的人,更不是只学习而不坚持的人。
  C++中有很多非常有特点的技术,例如STL、模板、异常等,不要被它们蒙住,更不要被它们吓住,这些东西都是为了让编程更容易而设计的。这些知识并不难,难的是长期坚持实践和不遗余力的博览群书。一方面我要告诉读者的是标准C++非常重要,在过去的很长一段时间里,中国的程序员并不太注意标准C++,但可喜的是这种状况正逐渐得到改善。很多人不明白标准C++和C++有什么区别,甚至搞不清楚标准C++到底是什么。任何东西都应该有个标准,不然东说动,西说西,到底应该以谁为准呢?C++语言也有标准,C++标准是由国际标准化组织规定的,是在全世界范围内被接受和认可的。标准化是大势所趋,是人心所向,是不可逆转的历史潮流。很多读者会发现,在TC上编写的C++程序移植到Visual
C++ 6.0上可能编译报错,在Visual C++ 6.0上编译的程序在移植到DEV
C++上有可能报错,甚至是移植到Visual C++
2005上仍然报错。这就是没有标准化的危害。总所周知,Visual C++
6.0对标准C++支持较差,而GCC或者Visual C++
2005等则更符合标准C++的要求。可见标准化是非常重要的,更是语言发展的方向。STL、模板和异常等都是在C++标准中有严格规定的。要学就应该学标准C++,而非山寨C++。
  另一方面,千万不要被TC、VC、GCC、BCB等词汇所迷惑,它们都是集成开发环境,而我们要学的是一门语言。掌握了一种开发环境的使用跟学会一门语言是两回事,会用Visual
C++,并不能说明你就掌握了C++,所以也不要被集成开发环境的摇篮宠坏了,应该提早断奶,摆脱对开发环境的依赖。学好了C++语言本身,到任何开发环境下都能从容应对。
  未完,待续…

澳门新葡亰信誉平台游戏 1

本文出自 “白马负金羁”
博客,请务必保留此出处

众所周知,C语言是在B语言的基础上发展起来的,而B语言又是从A语言的基础上发展起来的。在学C的时候,我就曾经突发奇想,难道下一个取代C语言的是D语言吗?呵呵,当然不是,且不谈曾有D开头的语言虽盛极一时,但也无法撼动C语言的王者地位,其实就算有语言能取代C,也不应该是D,而应该是P,呵呵。为什么呢?且听我慢慢道来,虽然现今语言是由ABC这样传承下来的,但是B与C语言的命名并不是因为ABC的字母顺序的关系而是与剑桥Matin
Richards编写的BCPL有着非常深的渊源。B语言是1970年贝尔实验室的Ken
Thompson将BCPL进行了修改,并取BCPL的第一个字母,为新语言取名为“B语言”。而C语言则是贝尔实验室的D.M.RITCHIE在B语言的基础上设计而成,他又在BCPL中取第二个字母作为这个语言的名字–“C语言”。所以如果按这条路继续走下去的话,那么下一代语言应该是P语言吧,哈哈~

作者按:真的吗?当然不是,呵呵~因为早期的高级语言是面向过程的,现今基本已经属于没落了。而新兴的语言基本都是面向对象语言(当然也有函数式语言和逻

辑式语言),其中最突出的代表之一就是C++,基本上已经与BCPL没什么直接关系拉,那么是否真的会出现下一代君王叫P呢?就只能看他的开发作者的心情拉,呵呵~

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图