百科问答小站 logo
百科问答小站 font logo



计算机学院的学生该怎样提高自己的编程能力? 第1页

  

user avatar   zhang-xu-guang-21 网友的相关建议: 
      

要想坦诚的回答这个问题,首先我们必须面对以下事实:

1. 绝大多数计算机专业学生不会成为科研者,而是普通开发人员,就是所谓的“码农”。

2. 绝大数企业,没有耐心,也没有财力去从头培养一个“眼高手低”的毕业生。从一开始,他们需要的就是一个“开箱即用”的求职者。

3. 计算机毕业生,直接能进入大厂的是少数,绝大多数人都得从中小厂家干起。

所以,对绝大多数计算机毕业生来说,如果想逃离“毕业即失业”的命运,在大学的时候就一定要千方百计的提高自己的动手(编程)能力,眼高手低是个致命的缺陷。

同时,还要清醒的认识一个现实,我们现在很多大学的计算机课程设计就是偏理论、偏基础。在学校,按部就班的学习,无论你的纸面成绩如何,都不能直接证明你的动手能力。

大学的老师,因为职业定位的不同,科研能力可能很出色,但软件工程能力就不一定了。

因此,学生想要提高自己的编程能力,自学是最主要的途径。

编程本身并不难,难在内容太庞杂,无论是市面的课程,还是图书,其中都混杂了太多“无用”的东西。因此,自学编程的成败就在于在有限的时间里,学到真正有用的东西。而关于什么是有用的东西,长期沉浸在一线的开发人员是最有发言权的。

所以,对计算机专业的学生来说,在自学编程技巧之前,首先要有获得一个明确的学习纲要,从而把有限的时间用在最关键的事情上。

如果是学习Java,可以参考我的一些回答:

如果是其他领域(例如前端),请努力去认识一个一线的开发人员,从而获得一个目标明确的学习纲要。

在缩小了学习范围之后,就涉及到如何学习的问题,下面是能想到的关键点:

1.基础知识学习

在学习基础语法的过程中,一开始有不明白、记不住的内容不要紧,这是必然的。要想真正理解一门语言,只能在实践中才可能,这个实践就包括框架的学习。

所以,对基础知识的学习,不要纠结,不要恋战,快速的过一遍,大概理解即可,然后快速的进入实际框架的学习中。只有在这个阶段,通过两者的磋磨,相互启发,从而才能真正掌握一门语言。

2.学习笔记 & Demo

在自学编程的过程中,一定要记学习笔记,一定要收集Demo。

这是因为自学是孤独的,没有实际工程的相伴,遗忘如影相随。学习笔记和Demo不仅是和遗忘作斗争的利器,同时也是一种自我对话,自我激励。

同时,程序员的工作,在很大程度上就是“复制粘贴”的过程,而一个整理有序的学习笔记和demo,就是一个“复制粘贴”的宝库。

最后,等你学成毕业要去面试的时候,学习笔记也是你的面试复习考库,而且还是量身定制的宝库。

3.实践

编程是一门实践的学科,参与一个完整的项目是必不可少的,但因为学生的原因,接触一个真正的项目机会极少。但是,没有关系,自己设定一个“虚拟”的项目,把产品经理、架构师、程序员集于一身,是一个非常“刺激”,也极具价值的体验。

“虚拟”项目有两种,一种是自己想出来的,例如“学生管理系统”、“图书管理系统”等各种管理系统。这种项目的特点是规整全面,范围可控,缺点是需求和设计都是自己想出来的,不那么实际。

另一种是参照市面上已有的应用,“照葫芦画瓢”模仿一个。这种项目的优点是非常接地气,缺点是一个真正的商业项目,往往非常复杂,因此非常考研学生的时间和心性。

但无论如何,以我的经验,上面的做法确实可以解决编程实践的问题。

其实,上面的三点,不仅是对一个学生有用,作为一名职业程序员,一个需要终身学习的职业,上面的三点一直陪伴我从学生时代直到今天。

最后,我想说的是,编程并不难,也存在明确的学习路径,坚持一定能成功,真所谓:心有所执,必有所成


user avatar   lu-luce 网友的相关建议: 
      

计算机学院的学生该怎样提高自己的编程能力?

第一步:照着书上的代码敲一遍,调试通过。熟悉各种面试用算法。之后刷各种试题网站。

第二步:自己写一个小程序,例如五子棋。坦克大战。建立基本的软件工程素养。

第三步:看开源代码。看看牛人是怎么写程序的。

编程能力就好像是写作能力。

没有一个人是靠一套《大学语文》变成作家的。看书没有用。

变成作家只有一个方法。那就是不停的写,写,写,写。同时大量仿写阅读到的名家名作。




  

相关话题

  socket编程到底是什么? 
  如何看待奥巴马呼吁每个美国人都学习编程? 
  编程新手如何提高编程能力? 
  如何看待第三方百度云Pandownload作者被捕? 
  在业务需求完全一致,技术指标要求不一致时,是否应该为此提供使用不同优化算法的接口? 
  Borland 是间什么样的公司 他给我们留下了什么文化遗产? 
  程序员如何简单易懂的向老板解释架构的重要性? 
  能用一种语言独立完成算法导论中 90% 以上的算法属于什么水平? 
  计算机科学与技术是什么专业是不是很杂很广泛很难学精? 
  对程序员来说,你认为最键盘上没用的几个键是哪几个? 

前一个讨论
从国家角度来说,基础科学研究没啥好处吧?
下一个讨论
有什么更高等的数学学好后能降维打击考研数一?





© 2024-12-18 - tinynew.org. All Rights Reserved.
© 2024-12-18 - tinynew.org. 保留所有权利