对于大一学习计算机的新手(c/c++ )提出一些学习经验

 对于刚刚上大一的新手,且是那种十分有上进的学生,在学习计算机的过程中必然会有一大堆的困惑,比如:

1 .如何学好编程(这与以往的应试教育完全不同,按照以往的那种学习方式,看书刷题不过是成为一个考试学霸而已,笔者见过太多考试很牛掰,但是写出来的代码却很恶心的人)

2.学习计算机的方向和目标,计算机道路永无止境,知识永远学不完, 如果盲目的学习,可能会错失在正确时间学习到相当重要知识的机会, 所以要有目标的学,并且在大一就需要迅速的奠基自己深厚强大的基础.

3.如何循序渐进的学习,错误的学习顺序,会很打击学生的学习热情,以及很容易浪费时间,在重要的时间段里学习一些自己很快就会忘记的东西.

 针对以上的问题,笔者提出以下的一些建议,这些都是笔者自己的一些经验,源于笔者当时学习踩过的坑!以及当时没有把握住的机会, 还有就是笔者自认为做的还不错的地方:

1.首先,我们先谈谈在开始编程之前的事, 选择自己的工具。很多学校(比如笔者学校), 还会在使用一些十分古老的编程工具,像许多大一开c/c++的课程的学校,还在使用vc6.0, 这实在是非常非常落后的编译器,十几年前就有的东西,如今计算机发展迅速,还在用那么落后的工具(且很多编程语言的新标准都不能使用,如:c++11)是不利于学习且用的也不舒服。这里笔者推荐几款自己比较喜欢且常用的编译器:

   ①Vs2013,这是笔者十分喜欢的一款编译器,有十分炫酷的界面,以及可以使用很多编程语言的新标准,还有就是有强大的代码补全功能。唯一的缺点就是太大了,建议读者在安装的时候参考网上的一些教程,或者是咨询一些牛掰的学长(学习计算机的朋友,在安装软件踩过的坑应该很多吧,记住踩坑后学会用百度).(http://jingyan.baidu.com/article/09ea3ede3b2496c0afde3944.html     这里放上vs2013的安装教程链接. 安装包链接: https://pan.baidu.com/s/1bVpY26 密码: 6kdu)

          ②Dev,这是笔者十分常用的一款编译器,因为他十分的快捷方便,Vs下面要很多步后才能写程序,再运行,这里只需要按下Ctrl+N就可以直接建立一个项目写代码了.

③.还有其他一些就是如: codeblock(简洁且功能很不错!但是笔者现在不怎么用,因为比较喜欢vs) 以及其他等等(这些到时候新手估计也成老手了,大家自己选择吧!) 链接: https://pan.baidu.com/s/1b575fg 密码: awne

2. 然后,我们就可以开始选择如何开始学习了,笔者非常非常非常建议新手在学习的开始(以及以后),能够去看一下网络上的学习视频,这些学习视频来自全国最顶尖的学校,甚至是世界*的学校,你可以在上面有体系且十分详细的学习到你的专业课知识:

  这里,我放上几个笔者十分喜欢且常用的视频地址,建议新手能够把他收藏到你的浏览器最最显眼的地方,然后经常观看之!!

  ①. http://www.xuetangx.com/event/computer       ----      学堂在线,这个最吸引人的就是那个清华专题了,他很系统的画出了一个学习结构,且每种课程,他都放好了链接.

②. https://www.coursera.org/                                ----  Coursera, 世界上的好学校都在这里了,这里你可以学习到一些更高级的东西,等大家视野开阔之后自然会明白其中的美妙)

③. http://www.icourse163.org/                              ----- 中国大学Mooc,想要的课程在上面链接找不到,来这看看吧,也是不错的教程

选择自己常用的一个教育平台就可以了,个人十分推荐学堂在线.

3. 看过视频做了一些简单的了解后,我们就可以来选择书籍来进行深入,细致,系统的学习了,在大学,阅读一些课外的专业书籍,是十分十分十分十分必要的!!这可以帮助你提高学习学校教的知识的能力,阅读过这些书籍你会发现你学习的书很容易就理解了), 下面的书籍是按照笔者觉得很好的学习顺序来描述的 :

①. 学习C语言入门的同学,可以选择,K. N. King等人的《C语言程序设计:现代方法》(第二版),比较新的C程序设计语言的教材。这是一本可以结合你自己学校的书籍来阅读的一本教程, 结合你学校的教程来读,效果是很好的!

②. 学习c++入门的同学,可以选择 《c++primer》来结合学校的教程阅读,记住是结合学校的教程读(额,我就是这样的,感觉这样做没错..),感觉笔者在学习指针的时候理解了好久,结果看了《c++primer》指针这块之后一下子就看懂了~ 在大一,建议至少把前400多页都看完!(这是我的经验之谈,个人觉得这是十分有帮助的), 之后最好尝试着用上面的知识写一些程序,不然你会很快就忘了......(ps:一个非常非常非常重要的地方,看书必须写代码,看书必须写代码,看书必须写代码,重要的事说三遍!任何不以敲代码为目的的学习编程都是在耍流氓!!!刚开始的时候照着书敲代码,不理解就慢慢理解,书多看几遍!!笔者属于那种蠢到家的人,一些看不懂的地方可以看7,8遍。然后,就必须自己动手独立的写代码,如书后的习题之类的,或者学校提供的刷题网站)

③. 面向过程编程学完后,大概大一上学期就应该结束了(不过大神们早就应该提前学完了!),这时候,那些想要在计算机专业上很牛掰的同学注意了,且想在之后参加一些算法竞赛(或者其他竞赛),这个时候(大一上学期)如果学校有组织参加比赛,一定要参加!!!不要觉得自己水平不够!!只要面向过程编程学完就可以打算参加比赛了!(PS; 这是笔者十分遗憾的事,当时在这里被其他大神甩开了老远!),这时候参加竞赛,会被比赛逼迫的去写程序,这段时间里,提高的空间是非常非常大的!到了这里,我就应该推荐如何搞竞赛的书籍了!(ps: 看书写代码缺一不可!!)

      ⒈《挑战程序设计竞赛》:在网上的人大多数会推荐刘汝佳的那本《算法入门经典》,我也会推荐,但是我会先推荐学这一本!!从这本你可以很快的了解到算法的一些基础,并开始你的刷题计划了! (ps: 这里放上笔者常用的两个刷题的网站:  http://www.tyvj.cn/Problem        http://acm.hust.edu.cn/vjudge/index    第一个是纯刷题的,第二个相当于把各种牛逼的刷题网站(链接)放到一起了.)

  2. 《算法竞赛入门经典》: 真心讲,这本其实不怎么适合新手,看上面的代码可以说时十分头疼的事,但是这本书几乎是必看的!!!当你觉得你已经刷了一些题目,就可以来学习这本书了,上面推荐的题目,最好能够按照上面要求来练习!!不会就去百度,去看别人的博客!!挑战难题是你学习计算机一件非常非常非常必要的品质和能力!!)

4. 我并不想给新手推荐太多的书籍,以及告诉他们什么什么是你以后要学的,这会让新手很茫然(感觉什么都想学,结果导致什么都学不好!), 让他们大一打好一个坚实的基础!并且让他们养着一个强大的学习习惯(能力)才是非常非常非常必要的!!

5.下面我介绍几个很有用的经验

①. 学会用搜索引擎。俗话说,大学教会你使用搜索引擎,然后搜索引擎教会你一切!遇到实在不会的东西,麻烦,困惑,在搜索引擎上(国内就百度了),首先使用搜索引擎寻找答案,如果实在搜不到再去问别人!!!(百度,google,*是你今后学习生涯经常要用的东西,记住收藏到你浏览器的最显眼的地方!)

②. 认识一些牛掰的学长!!他们真的真的真的对你的学习生涯起到决定作用,自认为,我做的最最最正确的决定就是认识一些很好的学长,他们在对我的启发和帮助受益匪浅!!!他们的建议十分的宝贵!!他们会教会你如何学习,我自认为,学长教我的东西比老师教我的东西还要多(毕竟大学靠自学嘛)

③. 强大的自学能力,让别人来督促你学习,是一件很恶心的事,如果你自己不能在大学主动的去寻求知识,可以这么说,你是不会有多牛逼的......之前说过了,那些学习网站都是十分十分完美的资源!

④. 问问题的方法,问问题的方式,决定了别人是否会给予你回答!⑴那种不经过思考就问别人的问题,是最糟糕的.⑵问别人问题,不要复制全部的代码给别人,然后说,某某大神,能帮我调一下代码吗?(别人的时间是很宝贵的好吧!如果是新手还可以这样,等以后一些几百行的代码复制给别人....不说了)⑶. 记住,问别人题目,把你觉得搞不明白的(一小行)代码发给别人,还有就是注意你的代码风格!(建议模仿《c++primer》上面的代码风格,看起来很舒服).⑷ 记住感恩别人,别人没有义务回答你的问题,别人回复你慢,也是因为别人也是很忙的,我自认为对帮助我的人感谢至极!

⑤. 英语,英语也是非常需要重视的!他决定了你未来的路有多远,基本上,未来你看的文档资料,都是英语的...

总结: 在我看来,在刚刚开始学习编程的时候,希望能多花些时间,有很多朋友,在刚刚开始的时候,没有好好学习,之后想学习的时候,却已经被打击的失去了学习的信心和热情。还有遇到难题不可怕,努力的去寻找解决的方法吧!(搜索引擎,学长的帮助)。还有就是希望能多阅读!上面内容,足以让新手拥有好的学习习惯,之后他们估计也能自己去寻找应该阅读的书籍吧!

  引用一句话:学习计算机是一条不归路,身后是悬崖,唯有向前!

(以上纯属个人观点,欢迎大家对我的总结评价,我也会根据此修改,希望能对新手有一个好的建议!)

上一篇:样本方差:为嘛分母是n-1


下一篇:vc 在edit控件中动态插入数据滚动显示