叠叠甲先,本人很少码字发文,所以不喜勿喷。本文仅代表个人观点。
本人学的是数字媒体技术,从接触编程到现在为止,约有7年(属于技术宅)。现活跃于学校编程社和几个项目组(不打算法竞赛)。最近一年半以来,因为项目与技术的需求,社交圈也扩大了不少,发现大家大多选了计算机之后,并不十分了解这一个大类。现在又逢新生季,就想着写点啥。
1.工程的计算机院下分有:计算机科学,软件工程,大数据,网络工程,数字媒体技术。其中我们认为地位比较重要的应当是,计算机科学和软件工程,前者在计算机专业中拥有十分完备的体系,所以推荐考研深造,算是一个比较偏理论的专业(但是学起来更难),后者也是很传统的计算机专业,但是学习方向跟前者并不一样,反而是一门比较吃经验和技术的专业(不想拼大厂的话,本科能力够了,可以直接去就业,在公司里面实习的开发经验会比课本知识更有用)。网络工程的地位是比较尴尬的,而且我对它的了解也不是非常多,如果不想自学,最后走编程方向的话,网络工程也可以往网络硬件方面发展(和网络里的硬件设备打交道)。大数据的话是一门比较新的专业,本科阶段的学习体系并不是非常完备(至少工程是这样的),如果人想沿着主赛道发展的话,推荐考研。工程的数字媒体技术最抽象,你可以在这里同时学到阉割了的软工和美术,可以说你的选择非常自由,不过我们的优势是女生比较多
2.关于学编程是否需要英语或者数学好这个问题,我的回答是并不强相关。用编程解决问题的时候,可以用纯数学的思维,也可以用计算机的思维,对于像我一样学前端的同学来说,数学几乎是完全没必要的,但是以后想要往算法方向学习的话,那么数学就非常需要了。而英语跟编程没有直接关系,除非你需要看外国的文献。别看编程用的符号都是一堆像英文一样的东西,其实大体来说,你并不需要记住他们的意思(如同你看到生僻字之后,你只要知道生僻字是代指了什么意思,至于生僻字具体是啥就不用在意了)
3.好就业吗?关于这个问题,我的回答是,工作岗位一直有,但是不好竞争,而且跟个人需求也有关系。但是有一点是可以确定的,就现状而言,如果你只是老老实实的完成了学校教的所有内容的话,那么你几乎就是没法找到工作的。
4.南工程计算机怎么样?南工程除了电以外,其实都没什么好值得让你吹的专业了。但是计算机的学习更多的其实要靠自己的自觉,作为一个就业时需要靠经验和学历堆砌的专业,无论如何如果你平时不练莫得经验的话,都是纸上谈兵。
5.那平时该怎么学呢?这个说实话,不可一概而论,就我而言,其实编程语言的底层运算逻辑都是一样,不管是哪门语言,都是在用类似的逻辑去解决实际的问题(然后细节不一样),剩下的就是各个语言里面会有自己特殊的地方。有一点注意的是,没有哪一门语言存在学完这个说法(从量上来说,基本上很难学完),从解决问题的技巧上来说,这更加是不可能的。以c语言为例,除了简单的变量,数学计算,条件分歧和函数循环以外,额外学完数组字符串,就可以写一些小东西了。而这一部分基础内容是可以迁移到c++和Java的, C++和java再学完面向对象的基础用法后就可以了(这边推荐找一些薄的书学呢)。然后用这些东西反复的去写东西,练习具体用法,有能力的应该要找一些前辈们的课设代码研究研究,多改改。上进一些的建议可以去加各种项目组(但切记要做和自己学的内容有关的事情)。而前端的话和后端的思维逻辑是完全不一样的,可以完全把它当成搭积木,是比较easy的。
6.推荐学算法吗?不推荐。算法题是很需要考验你的巧思的,如果在高中阶段做数学题总是卡机,然后老师一评讲就恍然大悟,懊悔自己为什么没有想到这种解题方法,结果到下一次同样的知识点,换了一个题目的形式就又不会做了,那么你就不太适合学算法。
这边有一点,有很多同学一开始会去各种刷算法的网站上通过刷算法学习编程,然后被算法坑到了,认为自己学不好编程,其实不是这样的。解决编程问题更像是你要先在脑中构建出一个解决相应问题的方法,然后再用编程的语言把它写出来。
7.代码跑不动怎么办?在问别人问题之前,先仔细想想看看是为什么跑不动,好一点的编程软件调试功能都挺好用,一般推荐直接调试打断点测试(甚至是初学的时候,因为很多东西都不懂,好多功能都是一点一点的调试出来的)
如果感觉有代码没有生效,那么请至少在那个代码的上下几行之间多写一点输出语句,看看它有没有被调用到。如果干脆就报错了,那么也得请看看报错的内容是什么,在哪一行?然后请记住报错类型,下次再遇到相似的报错,就大概有了一个解决方向。
写的什么乱七八糟的(
本人学的是数字媒体技术,从接触编程到现在为止,约有7年(属于技术宅)。现活跃于学校编程社和几个项目组(不打算法竞赛)。最近一年半以来,因为项目与技术的需求,社交圈也扩大了不少,发现大家大多选了计算机之后,并不十分了解这一个大类。现在又逢新生季,就想着写点啥。
1.工程的计算机院下分有:计算机科学,软件工程,大数据,网络工程,数字媒体技术。其中我们认为地位比较重要的应当是,计算机科学和软件工程,前者在计算机专业中拥有十分完备的体系,所以推荐考研深造,算是一个比较偏理论的专业(但是学起来更难),后者也是很传统的计算机专业,但是学习方向跟前者并不一样,反而是一门比较吃经验和技术的专业(不想拼大厂的话,本科能力够了,可以直接去就业,在公司里面实习的开发经验会比课本知识更有用)。网络工程的地位是比较尴尬的,而且我对它的了解也不是非常多,如果不想自学,最后走编程方向的话,网络工程也可以往网络硬件方面发展(和网络里的硬件设备打交道)。大数据的话是一门比较新的专业,本科阶段的学习体系并不是非常完备(至少工程是这样的),如果人想沿着主赛道发展的话,推荐考研。工程的数字媒体技术最抽象,你可以在这里同时学到阉割了的软工和美术,可以说你的选择非常自由,不过我们的优势是女生比较多
2.关于学编程是否需要英语或者数学好这个问题,我的回答是并不强相关。用编程解决问题的时候,可以用纯数学的思维,也可以用计算机的思维,对于像我一样学前端的同学来说,数学几乎是完全没必要的,但是以后想要往算法方向学习的话,那么数学就非常需要了。而英语跟编程没有直接关系,除非你需要看外国的文献。别看编程用的符号都是一堆像英文一样的东西,其实大体来说,你并不需要记住他们的意思(如同你看到生僻字之后,你只要知道生僻字是代指了什么意思,至于生僻字具体是啥就不用在意了)
3.好就业吗?关于这个问题,我的回答是,工作岗位一直有,但是不好竞争,而且跟个人需求也有关系。但是有一点是可以确定的,就现状而言,如果你只是老老实实的完成了学校教的所有内容的话,那么你几乎就是没法找到工作的。
4.南工程计算机怎么样?南工程除了电以外,其实都没什么好值得让你吹的专业了。但是计算机的学习更多的其实要靠自己的自觉,作为一个就业时需要靠经验和学历堆砌的专业,无论如何如果你平时不练莫得经验的话,都是纸上谈兵。
5.那平时该怎么学呢?这个说实话,不可一概而论,就我而言,其实编程语言的底层运算逻辑都是一样,不管是哪门语言,都是在用类似的逻辑去解决实际的问题(然后细节不一样),剩下的就是各个语言里面会有自己特殊的地方。有一点注意的是,没有哪一门语言存在学完这个说法(从量上来说,基本上很难学完),从解决问题的技巧上来说,这更加是不可能的。以c语言为例,除了简单的变量,数学计算,条件分歧和函数循环以外,额外学完数组字符串,就可以写一些小东西了。而这一部分基础内容是可以迁移到c++和Java的, C++和java再学完面向对象的基础用法后就可以了(这边推荐找一些薄的书学呢)。然后用这些东西反复的去写东西,练习具体用法,有能力的应该要找一些前辈们的课设代码研究研究,多改改。上进一些的建议可以去加各种项目组(但切记要做和自己学的内容有关的事情)。而前端的话和后端的思维逻辑是完全不一样的,可以完全把它当成搭积木,是比较easy的。
6.推荐学算法吗?不推荐。算法题是很需要考验你的巧思的,如果在高中阶段做数学题总是卡机,然后老师一评讲就恍然大悟,懊悔自己为什么没有想到这种解题方法,结果到下一次同样的知识点,换了一个题目的形式就又不会做了,那么你就不太适合学算法。
这边有一点,有很多同学一开始会去各种刷算法的网站上通过刷算法学习编程,然后被算法坑到了,认为自己学不好编程,其实不是这样的。解决编程问题更像是你要先在脑中构建出一个解决相应问题的方法,然后再用编程的语言把它写出来。
7.代码跑不动怎么办?在问别人问题之前,先仔细想想看看是为什么跑不动,好一点的编程软件调试功能都挺好用,一般推荐直接调试打断点测试(甚至是初学的时候,因为很多东西都不懂,好多功能都是一点一点的调试出来的)
如果感觉有代码没有生效,那么请至少在那个代码的上下几行之间多写一点输出语句,看看它有没有被调用到。如果干脆就报错了,那么也得请看看报错的内容是什么,在哪一行?然后请记住报错类型,下次再遇到相似的报错,就大概有了一个解决方向。
写的什么乱七八糟的(