The Way To Upgrade - 程序员练级攻略

GitHub: the-way-to-upgrade
程序员练级攻略 ---- 整理自陈皓(左耳朵)专栏《左耳听风》
欢迎 star,一起补充,一起学习

First of all

  • Teach Yourself Programming in Ten Years
  • The Key To Accelerating Your Coding Skills
  • What are some of the most basic things every programmer should know?

程序员修养

  • 英文能力
  • 问问题的能力
    • How To Ask Questions The Smart Way
    • The XY Problem
  • 写代码的修养
    • 重构:改善既有代码的设计
    • 修改代码的艺术
    • 代码整洁之道
    • 程序员职业素养
    • Code Review
      • Code Review Best Practices
      • How Google Does Code Review
    • 安全防范
      • OWASP
      • OWASP 十大 Web 弱点防护守则
      • 防御性编程
  • 软件工程和上线
    • Google软件测试之道
    • Serverside checklist

编程语言

Java

  • Effectic Java
  • Java并发编程实战
  • Java性能权威指南
  • 深入理解Java虚拟机(第3版)
  • Java编程思想
  • 精通Spring 4.x
  • 设计模式

C/C++

  • C程序设计语言
  • C语言程序设计现代方法
  • C++ Primer 中文版(第 5 版)
  • Effective C++
  • More Effective C++(中文版
  • 深度探索C++对象模型
  • Bjarne Stroustrup’s FAQ(中文版)

Go

  • Go by Example
  • Go 101
  • The Go Programming Language
  • Effective Go
  • Go精华文章列表

理论学科

  • 算法
  • 算法图解
  • 算法导论
  • 编程珠玑
  • LeetCode
  • Data Structure Visualizations
  • 数据结构与算法分析
  • 数据库系统概念
  • 现代操作系统
  • 计算机网络(第4版)
  • 计算机程序的构造和解释
  • 编译原理

系统知识

  • 深入理解计算机系统(必读)
  • UNIX环境高级编程
  • UNIX网络编程
  • TCP/IP详解 卷1:协议

简单点:

  • Linux C编程一站式学习
  • TCP/IP网络编程
  • 图解TCP/IP(第5版)
  • The TCP/IP Guide

软件设计

  • 编程范式
  • Six programming paradigms that will change how you think about coding
  • [Programming Paradigms forDummies: What EveryProgrammer Should Know]
  • 领域驱动设计
  • UNIX编程艺术
  • The Clean Architecture
  • The Twelve-Factor App
  • 避免过度设计
  • Instagram Engineering’s 3 rules to a scalable cloud application architecture
  • How to Design a Good API & Why it Matters
  • The Problem With Logging
  • Concurrent Programming for Scalable Web Architectures

Linux系统内存和网络

异步 IO 和 Lock-free 编程

Java 底层

数据库

分布式架构

微服务

容器化和自动化运维

机器人学习和人工智能

前端基础和底层原理

前端新能优化和框架

UI 和 UX

你可能感兴趣的:(Hello,World,ARTS)