一 、计算机基础
本科和研究生的专业都是统计学,接触过的编程语言只有R(勉强说是编程语言吧)。CS于我而言就像一个大黑箱,第一次实习选择的是互联网公司,主要的工作是数据方面的,工作中业务和数据处理的逻辑上相对清晰,但是由于计算机知识的匮乏和编程能力的较弱,感觉在工作中比较吃力(工作中主要接触到的编程语言有Python,SQL,Scala,shell脚本)。在通过代码看业务逻辑的过程中,与计算机有关的一些东西看得我一脸懵逼,比如各种接口、同步异步、网络通信,前端后端等等。在一段时间内曾经疯狂地看python的教程,而且是做笔记的那种,但是收效甚微,感觉大部分时间都在做无用功,感觉整个互联网的运行对于我来说仍然是一个黑匣子。所以在后来,开始尝试看一下CS专业的课本,才发现,CS不仅仅是会编程语言,语言仅仅是工具,要想要把工具运用好,计算机的基础知识一定要足够扎实,这样才能够随心应手地使用各种编程语言,以它们为工具来做到自己想做地一些事情。
二 、当前学习进程
对于CS的学习目前还是在一个相对基础的阶段。看的书也不是特别专业,为了快速提升对相关知识的掌握,前期主要读的书是日本的计算机图解系列的书,如图解HTTP,图解计算机网络。。。。读完系列的图解的书,对于计算机网络,计算机运行有了一定的了解。目前在操作系统这一块了解的相对较少,还有就是目前没有能够很好地掌握一门编程语言,python虽然用过一段时间,但是对python的使用不够熟练,对各种语言的核心的东西了解得不太多。比如,在编程的过程中常常会遇到的多线程多进程的问题,不同版本编译的问题,网络通信中的一些问题。
三、未来学习计划
学习CS最好的方法就是利用CS做一些工程性的东西,能够用才能够成为学习的最强劲动力。
近期计划:
操作系统(主要是从使用操作系统的使用角度上的学习,如何才能够用好操作系统,主要是linux操作系统)
计算机网络:大概理解通信的过程,客户端与服务器之间如何通信,浏览器请求网页等等完整的过程
框架:从简单的前端框架出发认识一下框架
数据库:除了增删改查,还有那些东西需要了解
数据结构与算法:常见的数据结构预算法,以及它们如何提高代码的运行效率
由于python在开发的效率和实现上较快,主要使用python脚本进行实操
网友评论