黑暗即不可知,人潜意识是惧怕黑暗,因为不可知导致无掌控感(需要有掌控感就需要懂得更多,因此要不断学习,不断挑战和尝试)
能够建立起系统性学科的人当然非常牛(我们没有这个机会,但是可以系统性的学习和借鉴)
建立学科体系,首要的任务是要定义清楚各种基本的概念(构建一个软件系统也是如此)
2022 持续更新:
2022年之前整理
1. 计算机科学
1.1. 基础理论
- https://www.tutorialspoint.com/academic_tutorials.htm
- HTTP2基础:https://developers.google.com/web/fundamentals/performance/http2/?hl=zh-cn
1.1.1. 操作系统
- 操作系统视频(清华大学): http://os.cs.tsinghua.edu.cn/oscourse/OS2018spring/
- 配套理解《Linux鸟哥私房菜》《Linux程序设计》《Unix网络编程》
- 在线UNP(英文版本),包含TCP、套接字、IO多路复用:https://notes.shichao.io/unp/ch2/
1.1.2. 计算机组成
- 计算机组成(哈工大):http://www.xuetangx.com/dashboard/course/
1.1.3. 计算机网络
- https://www.gnugk.org/keepalive.html
- 书籍:
- 《HTTP权威指南》
- 《TCP/IP详解》在线阅读:http://www.52im.net/topic-tcpipvol1.html
- RFC涵盖了通信协议层:链路层,IP层和传输层:
- TCP的那些事:
- 上篇:https://coolshell.cn/articles/11564.html
- 下篇:https://coolshell.cn/articles/11609.html
- TCP的构建块:
1.2. DSA成长之路
- 图示算法:https://visualgo.net/zh/sorting?slide=1-2
- OI Wiki: https://oi-wiki.org/intro/resources/
- MIT麻省理工学院算法导论摘要:https://catonmat.net/summary-of-mit-introduction-to-algorithms
- geeksforgeeks:https://www.geeksforgeeks.org/binary-tree-data-structure/
- 收藏的书籍:https://github.com/tkstorm/awesome-data/book/dsa
- YouTube5Min一节视频: https://www.youtube.com/channel/UCzDJwLWoYCUQowF_nG3m5OQ
- 书籍:
- 《数据结构与算法分析》
- 《算法导论》
- 《算法图解》
- 《算法设计》
- 《计算机程序设计艺术》
- 《编程珠玑》
1.3. 开发人员最佳实践
- 图解CS知识点: https://wizardzines.com/comics/
- 抛弃自我,渴望学习: https://www.tutorialspoint.com/developers_best_practices
- 计算机科学专业TopN:https://www.tutorialspoint.com/computer_whoiswho.htm
- 简历编写:https://www.tutorialspoint.com/effective_resume_writing.htm
- 面试问题:https://www.tutorialspoint.com/questions_and_answers.htm
2. 软件设计开发与应用
2.0.1. 经验法则
- 特征蔓延:业务发展,软件功能特性是不断膨胀和增长的
KISS
:Keep it simple and stupid
、奥卡姆剃刀原则
YAGNI
:You aren't gonna need it
- 你不是真的需要它Rule Of Three
: 三次原则(一次写、二次Copy、三次抽象),三次原则"是DRY原则和YAGNI原则的折衷,是代码冗余和开发成本的平衡点DRY
:Don't repeat yourself
RERO
:Release_early,_release_often
,客户、测试、迭代,小步快跑,同义词:最小可行性产品Pareto principle(80/20法则)
: 帕雷特原则
2.1. 设计模式
- 图解设计模式:http://w3sdesign.com/index0100.php
- 《敏捷软件开发——原则、模式与实践》,设计SOLID、常见设计模式
SRP(Signal Repository)
, 单一功能原则: 认为对象应该仅具有一种单一功能的概念,可以理解为高内聚
Open-Closed(Open-Closed)
, 开闭原则: 认为“软件应该是对于扩展开放,但是对于修改封闭的”的概念。LISP(Liskov)
, 里氏替换原则:认为“程序中的对象应该是可以在不改变程序正确性的前提下被它的子类所替换的”的概念,可以理解为面向接口契约编程
,低耦合+1
,岗位要求就是Lisp原则ISP(Interface Segregation)
, 接口隔离原则:认为“多个特定客户端接口要好于一个宽泛用途的接口”的概念,可以理解为接口细分和专精
,低耦合+1
DIP(Dependency Inversion)
, 依赖反转原则:认为一个方法应该遵从“依赖于抽象而不是一个实例“的概念,即高层<层略层>和底层<组件/服务层>,依赖于同一个接口抽象
架构设计
-《凤凰架构》: https://icyfenix.cn/exploration/guide/quick-start.html
2.2. 性能优化
- 高性能浏览器网络:https://hpbn.co/
2.3. 编程语言
2.3.1. Golang
- go语言设计与实现:
- 清晰的架构
- 包风格:https://rakyll.org/style-packages/
- Go系统指引:
- Go命令行:https://golang.org/cmd
- 高效编写Golang:https://golang.org/doc/effective_go.html
- 语法参照:https://golang.org/ref/spec
- Golang FAQ:https://golang.org/doc/faq
- Go趋势
- Go其他资讯
- Go爱好者周刊
- Essential GO: https://essential-go.programming-books.io/files-and-io-7a55634fb8194a85bcc6036eeba61b39
- GoBlog:http://blog.golang.org
- Go官档:http://golang.org/doc/
- StackOverflow整理的Go学习清单:https://stackoverflow.com/tags/go/info
- Go Road Map:https://github.com/Alikhll/golang-developer-roadmap
- talks golang
- golangtutorials)
- Network programming with Go
- setup-the-rails-application-for-internationalization
- Network programming with Go
- Gopl Code
- Go Meetups
- gopherchina
- golang tutorials: http://golangtutorials.blogspot.com/2011/05/table-of-contents.html
- goExample
- Go图谱
- go头像制作
- go夜读
- YouTube Golang Programming
- Russ Cox blog
- Go高性能Workshop
- 鸟窝收藏Golang Websocket示例
- GO相关算法实现和说明
- Go Web模板小抄
- gocn.vip: https://gocn.vip/
- Golang新手常见错误
- Go练习
- Go书籍
- Go Program Language Book
- go book
- https://goplay.space/
- Go高级语言编程:https://chai2010.gitbooks.io/advanced-go-programming-book/content/ch4-rpc/ch4-04-grpc.html
- Go微服务:
2.3.2. Python
2.4. 数据库
- 数据库如何工作:http://coding-geek.com/how-databases-work/#
- Mysql手册:https://dev.mysql.com/doc/
2.5. 编程图书/视频资料
- 程序员阅读资料清单(github):https://github.com/EbookFoundation/free-programming-books/blob/master/free-programming-books-zh.md
- 半动画短片关于编程:https://www.youtube.com/channel/UC8KxkYgafaJnzyWz1pq_glg
- 哈佛大学公开课:计算机科学cs50:http://open.163.com/special/opencourse/cs50.html
2.6. Web开发
- CORS:https://enable-cors.org/server_nginx.html
- Nginx配置优化最佳实践参考: https://www.slideshare.net/Nginx/nginx-basics-and-best-practices
2.7. 面试指导
- Medium - 软件工程师指导:https://medium.com/better-programming/the-software-engineering-study-guide-bac25b8b61eb
- Google技术面试准备: https://github.com/jwasham/coding-interview-university/blob/master/translations/README-cn.md
- 面试DSA准备:https://hackernoon.com/10-data-structure-algorithms-and-programming-courses-to-crack-any-coding-interview-e1c50b30b927
3. 软件工程
3.1. 工具集
3.1.1. 大型企业的技术栈
- 技术栈对比:https://stackshare.io/stacks/trending
- 获得合适的软件和服务:https://www.g2.com
3.1.2. Linux
- vim配置:https://vimconfig.com/
- 鸟哥私房菜:http://cn.linux.vbird.org
- Linux命令:http://man.linuxde.net
- Linux常用命令:https://tkstorm.com/linux-doc/
- AliDNS: https://www.alidns.com/
3.1.3. SRE
- Linux性能分析Blog(有Netflix): http://www.brendangregg.com/linuxperf.html
- https://landing.google.com/sre/books/
- https://collectd.org/
3.1.4. UML统一建模
- 在线画图工具:https://www.draw.io
- UML:https://www.youtube.com/watch?v=3cmzqZzwNDM&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc&index=3
3.1.5. Git
- GIT操作图谱1:making-sense-of-git-a-visual-perspective
- GIT操作图谱2:git-commands-and-best-practices-cheat-sheet
- GIT操作图谱3:atlassian-git-cheatsheet
Git工作原则:最新、完整而独立:
- 基于远程库的最新代码工作,尽量每一步操作(特别是add/commit/push)都通过
git pull --rebase
获取一下当前最新版本; - 尽可能保证每一个Change的完整性以及独立性,且越小越好;
3.1.6. Docker&K8S
- https://landscape.cncf.io/images/landscape.png
- https://tkstorm.com/docker-doc/
- https://qconuk2019.container.training
3.2. 架构设计方法论
- restful设计:https://www.restapitutorial.com/
- RESTful
- 12factor:https://12factor.net/zh_cn/
- Medium: How to develop Go gRPC microservice with HTTP/REST endpoint, middleware, Kubernetes deployment, etc.
- istio: https://istio.io/zh/
- 浙江大学SEL实验室:http://www.sel.zju.edu.cn/?p=825
- 微服务最佳实践:https://www.mulesoft.com/ty/wp/microservices-best-practices
- 微服务:https://en.wikipedia.org/wiki/Microservices#Technologies
- 转到Microservices系列文章:https://callistaenterprise.se/blogg/teknik/2017/02/17/go-blog-series-part1/
3.3. 微服务架构实战
3.4. 待整理
4. 信息检索
4.1. 编程语言排行
- 编程语言排行PYPL、TIOBE:http://statisticstimes.com/tech/top-computer-languages.php
- PYPL:http://pypl.github.io/PYPL.html
- TIOBE: https://www.tiobe.com/tiobe-index/
4.2. 大会
- gotocon: https://blog.gotocon.com/
- InfoQ各类技术大会
- 活动家: https://doc.huodongjia.com/detail-7110.html
4.3. 优质博客资源
- https://jimmysong.io/
- https://coolshell.cn
- https://saturnism.me/
- http://www.cnblogs.com/yjf512
- http://www.philipotoole.com/
- https://www.barretlee.com
- http://marcio.io/2015/07/handling-1-million-requests-per-minute-with-golang/
- https://www.thegeekstuff.com/2012/08/lsof-command-examples/
4.4. 资讯网站
- 高德纳公司技术趋势: https://www.gartner.com/en/documents/3891569
- 快速入门Ymin: https://learnxinyminutes.com/
- 雷锋网:https://www.leiphone.com/
- ppt分享:https://www.slideshare.net
- Medium:https://medium.com/
- InfoQ:https://www.infoq.cn
- IM站点:http://www.52im.net
- HelloGithub: https://hellogithub.com
- https://www.hashicorp.com/
- 基础教程站点:https://www.tutorialspoint.com/index.htm
- osXDaily(mac相关): http://osxdaily.com
- opensource: https://opensource.com
- 洞见:https://insights.thoughtworks.cn/
4.5. 组织信息
- 中国互联网络发展状况统计报告
- 中国计算机学会(CCF)大数据专家委员会年度报告
- 全国信息技术标准化技术委员会
4.6. 企业信息
- 国家企业信息公示系统:http://www.gsxt.gov.cn/index.html
4.7. 图片搜索
- 发现科学知识,使您的研究可见: https://www.researchgate.net
4.8. 网页分析
5. 安全
6. 软件/库/工具收藏
6.1. 杂项
6.1.1. 数据存储
6.1.2. http
6.1.3. Markdown
6.1.4. 其他杂项
- https://asciinema.org/
- ansible-semaphore
- centos中尚未升级的yum包升级:https://ius.io
- zplug:https://github.com/zplug/zplug
- postman竞品:https://support.insomnia.rest
- http执行相关操作:https://httpbin.org
- 如何扩展开发团队:https://adam.herokuapp.com/past/2011/4/28/scaling_a_development_team/
- 阿里巴巴开源镜像站:https://opsx.alibaba.com
- 工具推荐:https://geekflare.com/
- nlp相关工作:http://www.nlpjob.com/about/
- aliyun镜像:https://mirrors.aliyun.com
- Gogole: https://developers.google.com/web/tools/chrome-devtools/network/reference
- Deloitte(德勤中国):https://www2.deloitte.com/
- 古诗文网:https://www.gushiwen.cn/
6.1.5. 大数据检索
大数据信息检索:http://www.199it.com
6.1.6. 商业数据库:主要是国家、行业、行业数据,但是有些需要付费
- 万得 http://www.wind.com.cn
- 彭博 http://bloomberg.com
- 路透 http://cn.reuters.com
- 锐思 http://www.resset.cn
6.1.7. 学术数据库:国内外的一二手的期刊、论文等
- 知网 http://www.cnki.net
- 万方 http://www.wanfangdata.com.cn
- 中国国家图书馆 http://www.nlc.cn/
- 维普 http://www.cqvip.com
- EBSCO https://www.ebsco.com
- 数据圈 http://www.shujuquan.com/
- 台湾学术数据库 http://fedetd.mis.nsysu.edu.tw/
- 台湾大学电子书 http://ebooks.lib.ntu.edu.tw/Home/ListBooks
- 外国文献搜索SCI-hub https://sci-hub.se/
- 科技方面的文献 https://www.sciencedirect.com/
6.1.8. 趋势
- 站点工具
- Octoverse趋势
- Stack Overflow的趋势排行
- TIOBE语言排行趋势
- Google趋势
- 2020年度搜索排行:https://about.google/stories/year-in-search-2020/
- StackoverFlow报告:https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved
6.1.9. 前端
- CSS布局学习: https://zh.learnlayout.com/
7. 运营、产品相关
7.1. 新媒体运营
7.1.1. 临时
- https://gitalk.github.io/
- https://facebook.github.io/watchman/
- https://docs.google.com/presentation/d/1wZ6fxuazdk8RXQl89fvtnvC--tZukit9Wz-EeViRWaU/edit?usp=sharing