这是我对初级开发者在学习编程过程中的一些建议,针对的对象主要是大学前期对编程感兴趣的新手。
选择一种能够快速见效的编程语言和平台
你需要选择一个既实用又喜欢的平台,让它保持您的兴趣,激励您快速扩展您的知识,最重要的是你要喜欢。
有的文章建议初学者首先学习C语言,因为它是必需的、基础的语言;但是有些人会让您先学习Lisp,因为它有坚实的理论并通过一种简单的方式教给你许多编程概念。
这些都是好的建议,只不过思考问题的角度不同。但是对于“第一种”要学习的语言,我认为选择一种你喜欢而且能够激发潜力的语言是比较重要的。Lisp和C语言都很好,但在更高版本中更容易欣赏到这些特点。
我建议您将VisualBasic.NET作为首先要学习的语言。微软提供了免费完整的IDE,你只要安装包文件就可以了。重要的是,平台里包含了创建桌面程序和web程序的快速可视化设计器,你不需要学习整个图形工具而只需要熟悉编程环境就可以了。学习的代价是非常小的,同时你会学到很多以后学习其他编程语言的编程技巧。从教学的角度考虑,VB.NET不是特别的令人讨厌的陋习,它简单有趣,让您在一周内就可以做出实用的程序。
另外一种语言选择是Python。这种语言和VB.NET有许多相似之处,有terser语法。选择Python的唯一原因是它有一个较小的内置库和不提供固定的、标准的创建桌面程序或基于网络的应用服务设计器和框架。您可以单独下载这些工具包,但它不是立即见效,没有设计器您将在启动和运行上花费不少时间。
参加论坛和在线社区
通过加入论坛你会学到很多东西,坚信知识就是力量,在发问、解答问题或者仅仅是参与讨论的过程中你都会获得他人的尊重。
不要陷入“政治”讨论
参加您喜欢的编程语言社区或论坛,不要陷入编程的宗教讨论。许多程序员对他们的行业有强烈的偏见,包括丰富的经验。他们大部分的争论围绕个人喜好、语言适用的不同领域,技能和知识水平而展开。这些争论会浪费你的时间,还不如利用这些时间去学习或写软件。
耐心、自信、谦逊
了解你知道的以及不懂的,对不知道的知识不要灰心,只要不断的改进和学习,你就会变得更好。
学习技术正如你学习编程
为您最喜爱的游戏或应用程序去学习数据库、XML、网络协议、提供编写插件的具体的API等。用你学习的第一种语言作为基础,去拓展需要的技术知识、尝试不同的东西,而不要太在意你的代码是否完美。
不要忽视理论
最初的焦点是作事情并且让它有乐趣,这样做的过程中要明确知道你的工作意义。学习语言细节和相关的技术理论是很重要的。
购买其他编程语言书籍
有些书籍看起来可怕又好像不是您需要的类型,其实并非如此,这些都是应该购买的。和其他书籍相同,前面提到的知识是一样的,但他们是有深度的并提供了很多更深入的语言运用。当你在寻求一本书时,要确保它能在解释如何做和实际上做什么之间提供良好的平衡。
购买编程技术书籍
在这个阶段,您不应该买那些与行业相关以及教你如何成为“专业开发者”的任何书籍了,应该买一些像编程实践、编程技巧方面的书籍等。我强烈建议您购买《Code》,作者是Charles Petzol。这本书内容翔实,有启发性,易懂,并会指导你正在做的东西。
如果可以,找一位“领路人”
找一个聪明、热情并有经验的程序员做指导。即使他们只能抽出极少的时间帮你解决疑问,但是对你的学习也是极有帮助的。尊重他们的时间,只发问在其他地方你不能容易找到答案的问题。