很多同学想学好计算机编程,但是自己辛辛苦苦努力了半学期发现,自己的去年上学期学习的编程方面的知识跟没学一样,全部都忘得一干二净。那么,如果想要重新学会他,亦或者想要学好一门新的编程语言,有什么能够快速上手的办法呢?
对于高级程序员来说,学会新的编程语言有C/C++的基础的话,学好新语言两个星期左右就能得心应手,没错,他们的编程经验丰富,编程水平比较高,而我们很多新手就不能这样。当然本篇文章也是针对新手来写的。
首先,编程水平的概念有点大,我们这里约定编程水平是指代码正确性,代码的逻辑性以及代码可读性三个方面。
- 提高代码的正确性。
- 提高代码的逻辑性
- 提高代码的可读性
所谓代码的正确性是指程序在运行过程中,代码层面运行正常。也就是我们常说的代码健壮(代码健壮其实还包含业务层面)。
学习新编程语言的10个建议(方法):
1、关于编程手册
通常,代码正确性反映工程师对一门语言的掌握程度,是一个日积月累的过程。
遇到问题,首先看手册;通过搜索、浏览专业网站或者请教同事解决问题后,要看手册进行验证。
2、关于经典书籍
每一门语言都会有好多不错的书籍,我们称为经典书籍。通过各种方法,找到一种或几种不错的书籍,认真阅读,不为完成任务的而阅读,细细品味地阅读,求精读而不求多读。
3、关于网络上的技术文章
网络上的技术性文章也是需要阅读的,但它不能代替书籍。
4、阅读语言的官方文档。如果希望在使用之前吸收大量信息,从阅读语言的参考资料中可能会受益。不用担心它们会对你催眠,参考文献通常是用于查找使用,而不是用来记忆。
5、使用互联网搜索。搜索网络是一个很好的方式,可提供有关特定错误和一般最佳做法的信息。还可以在网络中搜索有关解决语言中特定问题的最佳做法的博文。评估搜索结果中显示的博客帖子的质量和决定认真采用他们的建议时,请查看作者的公共代码组合以及发布日期。
6、与社区接触。虽然博客和新闻文章具有大量有用的信息,但是你尝试编写的特定代码片段总会有些微妙之处。不要害怕在邮件列表中发帖,或加入 IRC 和 Slack 频道以寻求帮助。
要提出有帮助的回复的问题,请确保在正确的地方提问。许多语言都有 “初学者” 邮件列表或聊天频道,专门针对可能会频繁询问的问题而建立。。
7、编写玩具程序。一次练习一个新的概念,很少有任务可打败只使用某个概念的玩具程序。你可以将重点放在尽可能让你的代码清洁和惯用性上。
8、了解你的问题和技术栈的特点
我们新学一门技术,往往是为了解决用现有技术栈不太容易解决的问题。因此,很有必要了解你面临的问题,看看解决问题的关键在哪里,可能的路径由多少。
9、列出待学习的技术点
熟悉了待解决的问题,选择了一个技术栈后,就要静下心来,进一步深入了解技术栈,看看究竟这条路上有多少技术点是必须要学的,把它们列出来,一定要列出来,这样才可以一个一个来学,不至于学着学着忘了这个漏了那个。
10、寻找合适的学习资料
互联网时代,知识盈余,信息过量,你想学什么东西,Google或百度一下,有关联的主题成千上万,没关联的主题万儿八千,总之信息浩如烟海,而我们却如落水的蚂蚁,实在有点浩淼水面终生难渡之感。
学过C,学过C++,学过Windows编程,学过MFC,学过Python,学过Qt,学过JavaScript,学过Java,学过Android,学过SQL,学过Node.js,学过Objective C……
总结:
起初,你毫无头绪,不知道该做什么,就像我说的,没关系——只要继续努力即可。
另外,不要忘了去看看其他人是如何解决这些让你疲于应对的问题的。尝试着去理解为什么他们要用这样的方式去解决特定的问题。
这是我用于学习如何解决这类问题的最佳途径之一。
我会看看topcoder上顶级程序员的解决方案,从中我学到了很多东西。
一旦你可以用你所学的编程语言解决这些类型的编程问题,那么你不仅相当接近于掌握语言,而且通过编码面试将会成为一件轻而易举的事情,因为其他的候选人碰到问题只能汗流浃背,自愧不如。
对于新手,可能你暂时并不能做到举一反三,所以你只能慢慢积累,希望你以后也能成为一名优秀的程序员!