程序员技术练级攻略

2020-02-17  本文已影响0人  忧郁的大能猫

本文是俺阅读耗子叔的极客时间专栏而做的一点小笔记备忘,其中大部分的内容是一个程序员需要了解掌握的计算机知识体系架构和书籍推荐](https://time.geekbang.org/column/intro/48)而做的一点小笔记备忘,其中大部分的内容是一个程序员需要了解掌握的计算机知识体系架构和书籍推荐)

经常读技术博客的读者肯定知道陈皓(网民左耳朵耗子)的博客,其中有一篇较早的博客是程序员技术练级攻略。讲的是一个技术小白如何在技术的道路上打怪做任务练级,并成为大牛。文章中提供了一条学习技术的路线大纲,但它并不带领着你去学习,而是起着一个指导的作用。在这篇博客发表后的7年后,也就是2018年,博主又系统的写了新的一篇,程序员练级攻略(2018)。这一篇相较于前一篇来说更加的系统,内容更加的详细,且于新技术的发展更加贴切。完整版的需要在极客时间付费阅读。以下是俺记的阅读笔记,有兴趣的读者可以去极客时间来进入更深入的了解

入门篇

零基础启蒙

正式入门

《代码大全》好的书在你不同的阶段来读,你会有不同的收获,而且还会产生更多的深层次的思考

Java语言,Java工业级的编程语言,世界上目前为止综合排名最好的语言,生态强大,大型的互联网或是分布式架构基本上都是 Java 技术栈一些程序员只在自己熟悉的技术而不是合适的技术上工作,这其实并不好,这会让你的视野受限,而视野会决定你的高度

+ 《Java 核心技术(卷 1)》

+ 《Head First Java》

+ 《Spring in Action》

+ 《Spring Boot 实战》

《鸟哥的 Linux 私房菜》

MDN 官方HTTP文档

《MySQL 必知必会》

js jQuery ES6的Promise模式 异步编程的一种解决方案

css Bootstrap

ASCII和Unicode字符编码

编程IDE Eclipse、Intellij、Visual Studio Code

Git 《Pro Git 中文版(第二版)》

Chrome调试 超完整的Chrome浏览器客户端调试大全

MySQL WorkBench

投票系统的项目 Java Spring Boot来实现

修养篇

《97 Things Every Programmer Should Know》

坚持 Google 英文关键词

在 GitHub 上只用英文。用英文写代码注释,写 Code Commit 信息,用英文写 Issue 和Pull Request,以及用英文写 Wiki

用英文词典

用英文教材

《How To Ask Questions The Smart Way》

X-Y Problem又叫“过早下结论”:提问者其实并不非常清楚想要解决的X问题,他猜测用Y可以搞定,于是他问大家如何实现Y

《OWASP Top 10 2017 PDF 中文版》

《完美软件:对软件测试的各种幻想》

《Google 软件测试之道》

各个语言编码规范、工具、API的使用规范

专业基础篇

编程语言

go可以替C/C++,Java写业务代码,目前还取代不掉,除非业务简单Go的确替换不了java,一个是业务代码复杂,且java的生态强大,go生态还不完善;go的应用场景为各种中间件

这门语言已经 10 多年了,其已成为云计算领域事实上的标准语言,尤其是在Docker/Kubernetes 等项目中,Go 语言最突出之处是并发编程《The Go Programming Language》

理论学科

《算法》

《算法图解》

《算法导论》

《编程珠玑》

《数据结构与算法分析》

练习算法的网站

《数据库系统概念》

《计算机网络》

《现代操作系统》

《计算机程序的构造和解释》

《编译原理》

系统知识

系统知识是理论知识的工程实践,这里面有很多很多的细节

单机1万个并发连接问题

《Unix 高级环境编程》

《Unix 网络编程》 第 1 卷 套接口 API 、第 2 卷 进程间通信

《TCP/IP 详解 卷 I 协议》

《Linux C 编程一站式学习》。

《TCP/IP 网络编程》。

《图解 TCP/IP》

《The TCP/IP Guide》

《Wireshark 数据包分析实战》

软件设计篇

高手成长篇

发展方向

上一篇 下一篇

猜你喜欢

热点阅读