学计算机语言，是先一门语言学精通，还是学各种语言?
这是一个非常好的问题，也是很多同学都比较关心的问题，我从学习和实践这两个角度来说说我的看法。 首先，从学习的角度来说，我建议大一的同学可以多学习几门编程语言，除了C语言之外，还应该再开一门全场景编程语言，比如Java、Python就是不错的选择。 在学习编程语言的初期，要尽快掌握基本的编程流程，而不同编程语言在设计时会考虑到不同的应用场景，对于抽象的设计和定义也有一定的区别，所以在学习编程语言的初期，多接触几门编程语言会丰富自己的编程思想。 其次，编程语言说到底仅仅是一种工具，编程的核心是对于逻辑、算法、数据的理解和运用，因此要想真正熟练使用一门编程语言，一定要多做实践，这也是为什么我始终强调科研实践、项目实践和专业竞赛比较重要的原因。 在大一阶段多学习几门编程语言，能够给自己带来更大的选择空间，可以参与的实践场景也会更丰富一些，这是比较重要的。 以我个人为例，我通常会招募一些本科生进组，大数据组通常需要掌握Java或者是Python，视觉组通常需要掌握C++，其他组的同学也有在使用Go、C#等编程语言。对于掌握多门编程语言的同学来说，就会有更多的选择，而且也更容易融入到课题组当中。 虽然对于本科生来说，刚开始进组时，对于编程能力的要求并不算高，但是也要求能够掌握基本的编程流程，同时能够有一个基本的编程思想，具体体现在能否具备一定的解决问题的能力。 目前我联合多名导师，包括一些大厂的企业导师，共同成立了一个面向本科生和研究生的实践平台，借助我们的科研资源和产业资源，陆续开展了一些科研实践活动和项目实践活动，包括前后端开发、深度学习、知识图谱、计算机视觉、自然语言处理等方向，如果感兴趣，可以联系我申请参加。 最后，如果有计算机大类专业的学习、科研和实践相关的问题，欢迎与我交流。