跟原PO一样是大三CS
而且同样不喜欢硬件类课,以后应该也只会做纯软相关的工作
但我还是把digital logic, computer organization, architecture全部修过了,
而且我们学校的要求还是要把CPU写到FPGA上再自己用verilog做个VGA显示CPU的结果。
我自己的总结是,学这些还是蛮有必要的。
比如考虑矩阵乘法问题,如果你不懂cache的原理,就没办法知道为什么for内外层交换会加
速。
或者为什么有if之类的条件会让CPU指令变慢。
而且不讨论课程内容,单纯谈学一个陌生的东西有什么好处。
1. CS学生我觉得很重要的能力不是会什么“已经掌握的技术”(比如你提到的web),而是
面对一个新的需求有办法快速找到方法满足;比如我现在实习的公司在用go写后端,但是我
进去的时候根本没用过,完全靠自学。
另外补充,我觉得真的比较重要的能力是算法+系统底层,因为这两个不好速成。
2. 学困难的东西对于训练抗压性还蛮有用的,有些人遇到不会的东西求助别人,有些人是
逃避;然后这种行为很容易变成习惯,一时逃避一时爽,一直逃避一直爽。
可能因为环境的因素(我读的大学完全没有一个高中时认识的人,而且上大一以后一年大概
回家2次),我遇到问题从头到尾都是自己想办法(虽然过程很痛苦),后来发现其实课业
这种有标准答案的问题都是可以解决的问题,硬著头皮读下去,结果都不会太差,重点是坚
持学完就行了。
不过说了这么多我并没有想给什么建议,甚至可能修学去实习也很好?只是分享一些经验,
怎么决定还是要自己判断。