加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

unix系统内幕 太迷茫了,感觉学不下去了……

发布时间:2022-09-21 15:10:47 所属栏目:Unix 来源:
导读:  大家好,我是良许。

  有个读者朋友跟我发了这么一段话:

  良许大佬,我是您的读者,从2018年就开始关注您了,一开始得知您转行的故事,再到后面看您在职搞公众号,再到后面全职创业,一路看着您走
  大家好,我是良许。
 
  有个读者朋友跟我发了这么一段话:
 
  良许大佬,我是您的读者,从2018年就开始关注您了,一开始得知您转行的故事,再到后面看您在职搞公众号,再到后面全职创业,一路看着您走过来,真心替您高兴!
 
  您的故事深深触动了我,因为我也是非科班专业,我的专业是生物,但目前是一名公务员。虽然拿着稳定的工资,但我的职业生涯真的是可以一眼望到头。
 
  您转行的故事对我产生了很大的影响,我现在也在自学转行,希望能够像您一样转行成功。但是我现在学习效率很低,计算机专业真的太多知识了,我越学越迷茫,感觉都学不下去了!
 
  您能告诉我,您当年的学习路线是怎样的呢?当时是怎么学习的?非常感谢!
 
  首先非常开心,我的故事能够影响到一些人,我写公众号的意义也体现出来了。我转行的经验还算成功,经常有小伙伴私信我请教转行的细节。
 
  其实当年我也挺迷茫的,后面我通过培训班的教程大纲,还有自己的摸索,总结出来计算机专业基础学习路线的大纲。
 
  要说「非科班如何自学转行计算机专业」,我觉得应该是包括下面三大块:
 
  计算机基础知识;特定业务技能;解决问题的能力。
 
  计算机基础知识,是根本,是任何从事编程工作的工程师都应该具备的能力,包括:计算机组成原理、计算机操作系统、计算机编译原理、数据结构与算法、各种编程语言等等。
 
  基础知识是基本功,你基础打扎实了从事任何一个领域的工作,都会游刃有余。
 
  特定业务技能,就是你所从事的细分领域所应具备的业务及专业技能。比如,你做嵌入式,就需要学习一些硬件知识;做算法,就需要掌握比较深的数学及算法知识;做人工智能,就要学习更多专业技能了。
 
  现在企业的业务各不相同,所以细分出来的领域也非常多。想要做到每个领域都精通,几乎不可能。所以大部分程序员只能挑选少数几个领域进行深耕。
 
  解决问题的能力,这个应该是各个企业都非常看重。企业是请你来解决问题,不是吃干饭,更不是来创造问题。这是程序员的软实力,你是菜鸟程序员还是资深程序员,差别就在这。
 
  在学校里,遇到程序问题还可以跟同学们甚至老师一起讨论,但在企业里,大家都很忙,遇到问题几乎都需要自己想办法解决。
 
  业务技能及解决问题能力,需要自己长时间的积累,以及刻意训练,甚至贯穿程序员的整个职业生涯。
 
  而计算机基础知识,大家学习的内容都差不多,下面我就给大家总结一下,作为计算机专业的学生,应该掌握哪些基础知识。
 
  本文较长,全是干货,5000字长文警告!!欢迎点赞收藏,便于下次阅读。
 
  首先给大家看一张图,计算机专业学生大学四年一般课程安排:
 
  各个学校可能会有些许的差异,但基本上都大同小异。
 
  所以如果想自学计算机的话,可以按照上面学校的课程安排,自己去学习即可。
 
  但是,上面的这些课程,很多又非常杂,如果你时间有限的话,可以先抓住计算机基础知识部分学习。
 
  计算机基础知识部分,又分为:基础中的基础(数学/英语)、计算机组成原理、计算机操作系统、计算机编译原理、计算机网络、数据库、数据结构与算法、编程语言等等。
 
  这几部分内容,我又都做成了思维导图,大家可以看看:
 
  一、基础中的基础
 
  俗话说,基础不牢,地动山摇。所以如果你想学好CS,一定要在学习编程语言、计算机组成、计算机操作系统、编译原理、数据结构/算法等等之前,先打好最基础部分。
 
  最基础的部分一般包括以下内容:
 
  数学英语
 
  这两块内容,对于任何想学习CS的专业课之前,是必修的基础课。
 
  其实,等你工作到一定年限之后你就会发现,代码只是工具而已,不管你是用Java、Python、还是C++,其实这些语言都或多或少有相通性,最终的结果都是要用来解决实际问题的。
 
  所以,为什么会有很多人非常擅长写代码,却成不了一个好的「软件工程师」。这也正是区别「码农」与「工程师」的关键之处。
 
  而如果你想拥有非常好的业务能力,肯定会离不开数据结构和算法。而这两块都需要很强的数学功底。
 
  而现在国外的计算机水平领先国内几十年,一些新技术、新框架往往都会先出现,所以你需要扎实的英文水平第一时间获取到这方面的信息。同时,如果编程过程中遇到问题,还可以在国外的论坛上得到更多的解答。
 
  二、专业理论基础
 
  在打好数学及英语基础之后,就可以开始学习计算机专业基础知识了。其中理论基础包括以下5门课程:
 
  学好这几门课程,无论是你将来读研、读博,走学术路线,还是参加工作进入职场,走技术路线,升职加薪,都是非常非常关键的。
 
  但是很可惜的是,现在太多人急于求成了,过于注重编程语言的学习,这4门课被严重忽略了,草草带过。
 
  这是非常错误的行为!!如果你想成为一名优秀的软件工程师,这些课程一定要认真学习一遍!
 
  很多人自学CS,一上来第一步就是开始学编程语言,比如Java/Python/C++,但实际上,学习编程语言不代表你就是学会了CS,编程语言只是一门工具而已。就比如,你学会了PS,并不代表学会了设计;你学会了打字,并不代表学会写作一样。
 
  实际上,你完全不需要学任何理论知识,都有可能使用编程语言实现一些很简单且很实用的功能。但是,一旦涉及到更多需要基础含量的工作,理论基础扎实不扎实就马上体现出来了。
 
  1. 计算机组成原理
 
  计算机组成原理介绍了计算机的基础知识,包括计算机的各子系统(运算器、存储器、控制器、外部设备和输入输出子系统等)的基本组成原理、设计方法、相互关系以及各子系统互相连接构成整机系统的技术。
 
  学好了这门课程,你的七大姑八大姨,或者你暗恋很久的翠花,叫你修电脑的时候,就会游刃有余。
 
  这门课程不仅介绍了计算机软硬件的相关知识,也介绍了计算机的各大基本部件的组成原理、设计方法及相互关系。
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章