学编程学的不想学其他科目,怎么办?

avatar 2017年05月09日12:36:56 4 3145 views
博主分享免费Java教学视频,B站账号:Java刘哥
今天上课的时候,刷知乎的时候,看到了这个问题,顿时吸引了我。看了很多前辈的经验分享,收获颇丰,于是整理了几个回答,分享给大家,答案都很精彩,莫衷一是。

 

问题来自知乎
本人大二,开始接触javaWeb。觉得老师教的很慢就自己开始自学,但是一个月过去了,满脑子Servlet和jsp。现在听数电和概率论的时候,上课总是不能集中精神,一点都不想学。请问这种情况正常吗?如果不正常,怎么破?

答1:来自幻化成风




兄弟,你在误入企图, 顺利的话你后面的数电, 数据结构,数据库,操作系统,网络,编译原理也听不进去.

但是这些课程其实比jsp重要一百倍, jsp只是众多招式中的一种, 还有很多比jsp有意思的方向你可能只接触到jsp比如android, .net,php,大数据,分布式,机器学习,所以你不能保证毕业后一定会做jsp, 你自学的那点jsp毕业面试时你会发现在面试人眼里都是小儿科,根本不值得一提..

而这些课程是众多招式共同的内功. 内功知道吧,比招式重要,决定了你以后的高度, 所以建议兄弟对jsp点到为止,毕业后再决定做什么方向, 好好学习计算机的课程,实验认真做,不然毕业你会后悔的,毕业没有条件做一些实验的..

这些课程不是没有编程的, 学数据结构算法你可以刷leecode里的题,学数据库时你可以写个小的数据库系统,学操作系统你可以写个小os, 小编译器, 小的tcp/ip栈,代码网上有参考的, 找不到可以问我, 祝你好运!!

答2:来自八里土人


轻轻答一发吧。

很多大学生都喜欢学编程而不喜欢学其他科目,最重要的原因是:

编程课程不需要高深的数学,不需要复杂的公式,所有的内容只要有小学文化水平就可以学。

畏难是第一条。把时间花到编程上,逃避那些难的科目,总比花在玩游戏上更心安理得。

第二条是廉价的成功感。学一点东西就可以模仿出输出,能短期看到成果,对人脑是一种正反馈,脑子就回报一点那个什么胺(编者注:多巴胺),让你觉得愉悦。

但是,上大学来不就是为了提高自己去社会上和别人竞争时的门槛吗?既然不需要太复杂太难就学会了,你比蓝翔技校的培训生高在哪里?

=======================================

很多评论都提到了编程其实也是高深的学问,这里一并回答一下。

我不认为编程是浅显的事情,我说的是编程的课程是比较浅显的,而且是相对浅显。

成为一个好的程序员,不谈高手,一般好的程序员就必须了解很多计算机原理,数据结构与算法,网络通信,操作系统原理,文件系统设计,编译原理,多核多任务,接口,硬件加速。。。。。等等。这些内容都不简单。想做好程序员,要读别人的代码无数,自己debug和调试系统无数,向无数大侠请教无数。。。。。。

更进一步,理解客户需求,设计系统架构,设计接口,设计通信,设计安全等等,需要更多更深对系统的掌握。

而这里说到的浅显,是入门编程课程比较简单。如有得罪,请各位原谅。我自己不是什么编程高手,看的多,编的不多。

答3:来自代码之诗


谢邀。 先声明两点:1、我刻意没有看其它答主,以便完全真诚的表达;2、我虽然经常面试应聘者有自己的判断标准,但我不保证自己的看法适合其它人。

我想从用人者的角度来看待这个问题。

一个熟悉工具及其应用的程序员,在职场都是极受欢迎的。如果同属应届生,他连 java 语法都磕磕巴巴,你能打开 eclipse 熟练的建立工程引用 struts spring hibernate mybatis ... 开工,显然你面过的机会比他大无数倍——除了大公司,大多数职位都是接到了活或马上有活了才招人的,来个学生慢慢培养不是没有但真的不多——就算愿意培养也怕你刚能干活就走人不是吗。

这世上最恶毒的词就是:但!是!我恶毒一下:但是,熟练对于技术工人是吃一辈子饭的硬功夫,对于工程师就不是。特别是软件工程师,熟练算不了什么。哪个程序员没有一段“每天编程16hr以上”的经历呢,用不了两年,在“熟练”这个问题上,大多数同行都在一个水平线上——不在这条线上的哥们该改行了。大学时代那种自发式学习的积累效率一般般,它不会比 deadline 的压力更有效,它很快就被抹平了。以我二十年的编程经历,我也经常为一些年轻程序员在特定领域的熟练程度感到惊叹。

软件工程师之所以在各种工程师中也算收入偏上的,原因就在于:他们总是面对新的问题。会做的活儿不需要你做,这才是软件工程师的常态,否则你凭什么“上升”?学习能力,尤其是快速学习能力,这才是软件工程师的金饭碗。这个时候,基本功就显得无比重要——软件行业早已深刻变化,但我二十年前学的四大原理一结构(微机原理、操作系统原理、数据库原理、编译原理、数据结构)依然故我。在软件行业无论学什么,它们依然在提供知识结构的支撑。

相对来说,其它工科通用专业,模电数电工程数学什么的,显得没那么重要。这要看你最终是否接触硬件,是否接触其它前沿,总之基本功越扎实就越好。技多不压身,是指的基本功——除非你的理想真的只是一个技术工人。

话说回来,在基本功方面,大学课程能给你的帮助并不多。我也一样曾在老师无精打采的讲述中昏昏欲睡。回头想起来,究其原因:大学讲师们大多是博士毕业就留校,他们学业够精深,但很多人缺乏工程实践,由此而缺乏对技术背后的动机的深刻理解。为什么听不懂模电?因为不知道每一条原理用在什么场合。为什么听数电想睡觉?因为你不知道“它们跟我的Java code 有什么关联”。一个资深的硬件工程师或单片机软件工程师,从电路板(多层板看不到就算了)就能猜出大多数硬件设置的动机所在——这其实来自工程实践,从这个角度再去回看那些枯燥的原理,就一点都不枯燥了——它们都是用来解决实际问题的,跟为什么要有这个 jar 包那个 jar 包一样明显。

结论:珍惜你这种“热爱”的学习状态,它会为你将来入职提供不错的起点。但不要荒废你的专业课,课堂上走神无所谓,只要不是在玩手游。但这门课你一定要学会,程度要求不一定高,至少提到什么知识你知道在哪里——一是能拿到学分,二是将来用得着的时候知道该补什么课


答4:来自金旭亮


这种情况很正常。我也有过。想当年复习考研时,总想学习真正有用的东西,总想动手敲代码,但不得不强迫自己将精力集中于应付考试,学习那些考试有用但其实并无多少意义的知识……

你现在不过大二,没必要像我那时一样非得强迫自己去做特定的事,提个建议:

你说你“ 满脑子Servlet和jsp ”,说明你己经进入状态了,正处于一个学习技术的高效期,浪费了实在太可惜(因为让大脑硬要去切换必然带来学习效率上的损失),反正JSP与Servlet那块也没太多东西,而且现在还没到期末,你不妨就把精力集中于此,一口气把Java Web的主要技术都学完,就安生了!

在高效期学习,事半功倍,往往能快速地提升你的开发技能。现在放下来,以后再捡起来学,就很难再有这种效率了。

只要保证这学期考试别挂科,其他时间大可花在编程上,不吃亏,划算的!

===================================================

看了一些回答,感到很奇怪:

学习一门课程,只有天天到教室上课听讲一种方式?概率也好,数电也罢,网上那么多国内外名校的MOOC就不能学?

是不是一个人的学习必须要按照学校的教学计划的安排亦步亦趋?如果学校教学计划规定要先学ABCDEF,再学GHIJK,学ABCDEF要用一学期,学GHIJK要用两学期,那是不是你就一定要在“规定时间”“规定地点”地按这个计划去学习?

学习方式的好与坏要以最终的成效为唯一标准,并且应该是高度个性化的。

“双规式”学习方式其实是非常低效的。

要知道,你不是贪官,不会被双规的!

所以别当木偶啊!要用最适合你自己的方式去学啊!这难道不应该是常识吗?

答5:来自nameoverflow





大一的时候,他们在学高数线代,我在摆弄前端/Python/Ruby/C++/Linux

大二的时候,他们在学数电模电概率论,我在研究编译/数理逻辑/Haskell/Lisp

大三刚开始的时候,他们在学操作系统软件工程计算理论,我在爬 paper 捣鼓自己也说不清是什么的各种东西

现在,他们保研了,拿着 GPA 申国外学校了,在实验室搬砖了,和妹子约会了,我在看考研数学 (手动微笑


答6:haoxiang lin





金老师说得挺对,你有状态的时候不妨一口气学下去,这样效率最高,而且可以一口气深入,不过我觉得还是要补充一下,不止是不挂科就好,建议能高分就高分, 反正gpa刷高了总没坏处。如果真的要在学习这个和刷分之间选择的话。。。

那我建议你牺牲睡眠。。。能兼得就兼得,不然你以后总会有一点遗憾。。

 

原文地址:https://www.zhihu.com/question/32322023

本文地址:http://liuyanzhao.com/4029.html

转载请注明



  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 博客/Java交流群
  • 资源分享,问题解决,技术交流。群号:590480292
  • weinxin
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:1   待审核评论数:0
  1. avatar boke112导航

    看到这个就想起我折腾WordPress,如果在折腾的过程中遇到问题不解决,哪怕睡觉吃饭都会在想着,这个可能是所谓的强迫症吧