如果是从一个完全小白或者小朋友开始,可以建议从Code.Org
和Scratch.mit.edu
这两个图形化编程学习工具开始。
Code.Org里面有面向4-18岁不同阶段的学生,可以作为入门级。
Scratch是面向8-16岁的学生,可以作为进阶级。
这些编程工具的底层是用JavaScript开发的,所以建议第二步是学习JavaScript这样的动态类型脚本语言,如果想要扩展能力还可以学习Ruby, Python, PHP的同类编程语言。我以前是自己语言编程指南的文档,最初可以是一步一步的教程,边实验边学习。
现在应该有更多的资源可以选择,视频网站的教程、大型互联网公司提供的云开发环境等等。
第三步就是学习网络和WEB相关协议,浏览器知识,操作系统知识,帮助你更深的理解程序的运行机制和原理,这样遇到问题可以很快的找到原因。其实编程水平的高低从解决问题这里才能看出来。
如果想往后端发展的话,那就要继续学习Java,C,C++,DotNet这样的后端开发语言。这些静态类型语言编写的程序会更加复杂,学习难度会更高。
接下来需要学习SQL和数据库知识,对于一般的商业型系统开发,使用数据库是必不可少的。
最后就是高级语言学习,那就是大数据、人工智能、物联网、区块链相关的编程学习。编程语言是一样的但是需要学习很多开源框架知识。