作为一个商科转行做软件工程师的新手小白,即使已经开始工作了,却也一直被一个问题所困惑:我该学习哪些计算机科学相关的科目?网络上的资源千千万,我该从哪里开始?最近发现了一个很有意思的网站,包含的信息量很大,今天来分享给大家,为大家解决“我该学习哪些知识”这个问题。
📌谷歌搜索:TeachYourselfCS即可。
TeachYourselfCS是由Bradfield School of Computer Science的两位教员Ozan Onay和Myles Byrne基于自己的教学经历总结而来的一份指南,主要列出了他们认为想要成为优秀的软件工程师所应该学习的科目,其中包括:编程、计算机系统结构、算法与数据结构、数学知识、操作系统、计算机网络、数据库、编程语言与编译器、和分布式系统。他们也在指南中指出,每个科目大家要预留100-200个小时的学习时间。不久之前我曾经跟原组的一位同事聊天,他出身正统计算机科学专业,也做了很久的工程师,这些被列出来的科目与他提供给我的学习方向不谋而合。其实也侧面印证了,转行做计算机/软件工程真的不是上一个bootcamp读一个master刷1000道题就能解决的事情,很多事情要靠不断的学习和工作中的日积月累,可能这些在职业初期没有明显优势,但是在未来的职业发展上就会发现优势。
TeachYourselfCS除了英文版本,也有对应的中文翻译版本,大家可以在github上面搜索TeachYourselfCS-CN,大家可以按需学习。这份指南在2020年有过一次更新,改动很大,也融入了许多新的内容,所以可以说是非常up-to-date。个人认为想要自学计算机科学的大家完全可以按照指南上提供的资源来学习,或者至少利用他们提供的大方向来学习。
以上。希望能够帮助到像我一样,在成为优秀程序员的路上努力的朋友们:)
最新评论 10
:我是学码农的,但我代码看多了头晕转行了
:哈哈哈对其实我觉得一部分人转码主要是生活所迫。做自己喜欢的事情最最重要呀
:商科呢
:谢谢亲爱的分享!啊哈哈,仿佛捡到了一百万
:嘻嘻这些知识值100万!加油💪🏼
:哈哈,看到了从本科开始学习的全部课程,其实还有线性代数,离散数学,汇编语言与编译原理,计算机组成原理等等我觉得我再说下去会暴露学校
:哈哈哈哈哈,果然就是自己重读一遍计算机本科啊!需要补的课太多了
回复 @困在家里不出门但今年打算接着浪:哈哈哈我有时候读doc,感觉读两行能google十次