• How to be a Programmer
  • 目录
  • Introduction
  • 入门
    • 个人技能
      • 学会 Debug
      • 如何通过分割问题 Debug
      • 如何移除一个错误
      • 如何用使用日志调试
      • 如何理解性能问题
      • 如何解决性能问题
      • 如何优化循环
      • 如何处理 I/O 开销
      • 如何管理内存
      • 如何处理偶现的 Bug
      • 如何学习设计技能
      • 如何进行实验
    • 团队技能
      • 为什么预估很重要
      • 如何预估编程时间
      • 如何搜索信息
      • 如何把人们作为信息源
      • 如何优雅地写文档
      • 如何在垃圾代码上工作
      • 如何使用源代码控制
      • 如何进行单元测试
      • 毫无头绪?休息一下
      • 如何决定下班时间
      • 如何与不好相处的人相处
  • 进阶
    • 个人技能
      • 如何保持活力
      • 如何才能被广泛信任
      • 在时间和空间之间该如何权衡
      • 如何进行压力测试
      • 如何权衡简洁与抽象
      • 如何学习新技能
      • 学会打字
      • 如何进行集成测试
      • 交流语言
      • 重型工具
      • 如何分析数据
    • 团队技能
      • 如何管理开发时间
      • 如何管理第三方软件风险
      • 如何管理咨询
      • 如何适度交流
      • 如何直言异议以及如何避免
    • 评判
      • 如何权衡开发质量与开发时间
      • 如何管理软件系统依赖
      • 如何评判一个软件是否太不成熟了
      • 如何决定购买还是构建
      • 如何专业地成长
      • 如何评估面试者
      • 如何决定什么时候使用奇妙的计算机科学
      • 如何与非工程师交谈
  • 高级
    • 技术评判
      • 如何从不可能中找到困难的部分
      • 如何使用嵌入型语言
      • 选择语言
    • 机智地妥协
      • 如何与时间压力作斗争
      • 如何理解用户
      • 如何获得晋升
    • 服务你的团队
      • 如何发展才能
      • 如何选择工作内容
      • 如何让你队友的价值最大化
      • 如何划分问题
      • 如何处理无趣的问题
      • 如何为工程获取支持
      • 如何发展一个系统
      • 如何有效地沟通
      • 如何告诉人们他们不想听的东西
      • 如何处理管理神话
      • 如何处理混乱的组织
  • 词汇表
  • 附录 A - 书籍/网站
  • 附录 B - 历史 (至2016年1月)
  • 附录 C - 贡献 (至2016年1月)
Powered by GitBook

进阶

2. 进阶

  • 个人技能
    • 如何保持活力
    • 如何才能被广泛信任
    • 在时间和空间之间该如何权衡
    • 如何进行压力测试
    • 如何权衡简洁与抽象
    • 如何学习新技能
    • 学会打字
    • 如何进行集成测试
    • 交流语言
    • 重型工具
    • 如何分析数据
  • 团队技能
    • 如何管理开发时间
    • 如何管理第三方软件风险
    • 如何管理咨询
    • 如何适度交流
    • 如何直言异议以及如何避免
  • 评判
    • 如何权衡开发质量与开发时间
    • 如何管理软件系统依赖
    • 如何评判软件是否太不成熟了
    • 如何决定购买还是构建
    • 如何专业地成长
    • 如何评估面试者
    • 如何决定什么时候使用奇妙的计算机科学
    • 如何与非工程师交谈

results matching ""

    No results matching ""