代码之外的功夫

[美] Gregory T. Brown

生活

职场 编程

2018-3-1

人民邮电出版社

目录
前言 vii
第1章 善用设计原型,探索项目创意 1
1.1 从理解项目背后的需求入手 2
1.2 利用线框图表达功能需求 3
1.3 编程之初立即搭建测试系统 4
1.4 全面探讨不足,改善追求实效 6
1.5 早问多问,验证设想 8
1.6 力求缩小自己的工作范围 8
1.7 谨记原型并非生产系统 12
1.8 巧妙设计特性,轻松收集反馈 13
第2章 观察增量变更,发掘隐藏依赖 19
2.1 不存在所谓的“独立特性” 19
2.2 两特性同屏必相互依赖 21
2.3 避免不必要的实时数据同步 23
2.4 复用旧代码,寻找新问题 25
第3章 准确识别痛点,高效集成服务 29
3.1 面对小众需求,切记未雨绸缪 30
3.2 谨记外部服务并不可靠 31
3.3 服务一旦有变,查找过期的模拟对象 34
3.4 遭遇烂代码,维护必头疼 35
3.5 不存在纯粹的内部问题 37
第4章 设计严密方案,逐步解决问题 39
4.1 收集事实,清晰描述 40
4.2 写代码之前手动解决部分问题 42
4.3 核实输入数据,随后进行处理 44
4.4 善用演绎推理,检验工作质量 46
4.5 欲解复杂问题,先知简单情况 47
第5章 谨记自底向上,优化软件设计 55
5.1 找出关键词,认清问题 56
5.2 从实现最小化功能入手 57
5.3 避免对象间不必要的时间耦合 60
5.4 逐步提取可复用的组件与协议 63
5.5 进行大量实验,发掘隐藏抽象 66
5.6 了解自底向上方法的局限 67
第6章 认清现实瑕疵,改善数据建模 71
6.1 分清概念建模和物理建模 71
6.2 明确设计模型,追踪数据变化 74
6.3 理解康威定律,实践数据管理 78
6.4 谨记工作流设计与数据建模密不可分 81
第7章 逐渐改善流程,合理安排时间 85
7.1 敏捷、安全地应对意外故障 86
7.2 识别并分析操作瓶颈 88
7.3 注意权衡工作的经济效益 89
7.4 限制积压工作,力求减少浪费 92
7.5 力求整体大于部分之和 95
第8章 认清行业未来,再议软件开发 101
作者介绍 110
封面介绍 110
【展开】
内容简介

本书虽然面向程序员,却不包含代码。在作者看来,90%的程序设计工作都不需要写代码;程序员不只是编程专家,其核心竞争力是利用代码这一工具解决人类社会的常见问题。以此作为出发点,作者精心构思了8个故事,以情景代入的方式邀请读者思考代码之外的关键问题:软件开发工作如何从以技术为中心转为以人为本?透过故事主人公的视角,读者能比较自己与书中角色的差异,发现决策过程的瑕疵,提升解决问题的综合能力。

书中的故事涵盖程序员的整个软件开发生涯,但经过了浓缩,可供所有软件开发人员快速阅读。

【展开】
下载说明

1、追日是作者栎年创作的原创作品,下载链接均为网友上传的的网盘链接!

2、相识电子书提供优质免费的txt、pdf等下载链接,所有电子书均为完整版!

下载链接
热门评论
  • 丸子(^.^)v的评论
    "程序员不只是编程专家,其核心竞争力是利用代码这一工具解决人类社会的常见问题。" 认识到这件事尤其重要, 很多公司拿程序员月产代码行数 来作为生产力的衡量指标 就让很多年轻的程序员被误导到 认为这就是生产力 一年前一个月提交超过1万行代码 perf还拿了差评 现在一个月提交1行代码 1个CL 上至总监VP 各个看到我那一行代码眼睛都睁圆了 纷纷加自己进抄送列表 这就是区别 BTW 提交那1行代码就是上个月的事 (+ +)
  • superweiyan的评论
    其实写的蛮一般的
  • 灰色房间的评论
    先搭建一个极简框架。
  • Prodesire的评论
    书中所描述的,比较像是开发经理所面对的,即程序设计中解决问题、沟通等以人为本的方面。代码是解决问题的有力工具,但还有更多需要关注的,是在编码的上下游环节。本书在这方面的经验分享,可以说是毫无保留又十分精准了。
  • 豆瓣兔的评论
    对于一个it界设计师也同样适用。很快的扫了一片书,对于书中的例子没有深入地读,只是结合现在的一些疑问,做为对设计的思考。作为一个程序员,90%的代码都是不需要的。 当项目和问题真实的展现在眼前时,如何用有限的资源和时间做出最合理的工作,去掉大部分根本不需要的忙碌和多余的思维,是需要结合自己的工作现状,思考之后再进行工作的。
  • wowo的评论
    如何高效忽悠产品经理
  • Just me的评论
    解决问题而不是代码,项目管理也很重要
  • geky的评论
    通过模拟场景来解释作者的一些经验与想法,算是可作为参考的小品,能带来一些启发。价值不够大,甚至没有什么能做笔记的点。
  • 谢小漫的评论
    简单的例子,太简单的说明软件开发过程,一般般。
  • 半米街区的评论
    代码只是程序员解决人类社会问题的一个工具和手段,我喜欢这样的论调。各类开发语言和框架层出不穷,it码农总是在追随新语言和新工具的时尚浪潮,但是不论哪种语言或者框架,都只能是匠人手中趁手的工具,而不能成为指挥匠人的思想。设计,不论哪行哪业的设计,目标就是要解决问题,而程序员的设计,应该是如何在代码之外,发现问题的本质与核心,再借以代码直捣问题核心。当然,简洁漂亮的代码是你个人的烫金名片。code is our reputation, design is our thought!