程序开发心理学阅读笔记——第I篇
1、软件的任务是为了解决某一特定的问题,而软件开发者的任务却需要解决一系列问题。
2、温伯格说,我们不能要求每个人都聪明异常,能够解决所有难题;但是我们必须持续思考,因为只有如此,我们才能明白自己在做什么。的确,只有明白我们在做什么,我们或许才知道应该怎么做吧。
3、“写作本书的主要目的只有一个——启动一个新的研究领域:作为一种人类行为的程序开发,或者简而言之,程序开发心理学。”或许这是我阅读本书的一个大的前提吧,了解它的目的。
作为人类行为的程序开发
阅读程序
4、管理人员清楚:在程序开发过程中,人也是一个要素。当然,他们所关心的,往往不是如何去理解人的这种要素,而是如何去消除这一要素。
5、程序开发也是一种写作的形式,它和其他的写作形式没有什么两样。要学习写作,最直接的途径就是提笔写作。的确,很符合我们现在的状况,提高编程能力的唯一最实用的方法,无疑就是去编程,多编程。
6、阅读代码,就要不断问自己同一个问题:“这段代码在这里有什么用?”这是我们读懂一段代码最好的办法吧。
7、我们要仔细体会机器的局限和语言的局限、程序员的局限。
8、由于未能通晓其使用的计算机、程序语言或他们自己,程序员们到底写了多少冗余的代码?的确我们无法避免这个事实,但应努力去完善它。
9、之所以要研究人们编写程序的过程,最重要的目的无非是为了提高程序的效率、使之更加紧凑、更加廉价或是更加易于理解。
10、高明的程序员善于通过演练和审查过程来发现有价值的东西,而那些自以为是的人却不是这样。正因如此,和司空见惯的情况一样,高手越来越高,低手越来越低。
优秀程序的要素:技术规范、日程计划、适应性、效率
11、在对程序的所有要求中,首当其冲的要求是它必须正确。
12、即使不考虑符合技术规范的问题,效率的问题仍然不是最重要的。程序开发中经常遇到的一个问题是要符合开发的日程计划,推迟完成的程序常常没有意义。
13、一个系统对某一特定环境的适应性越强,它适应新环境的能力也就越弱。
14、效率并不总能用计算机的运行时间来衡量——因为经常需要通过牺牲计算机的运行时间,来换取程序运行前后需要的时间。
15、在计算机运行时间与人工时间之间折衷,“因此我们期望,随着岁月的推移,我们能够听到的关于效率的言论会越来越少——而与此同时,却越来越多的强调有效性。”
如何研究程序设计:自省、观察、实验、心理学测量、利用行为科学中的数据
16、如果不去进行尝试和努力,我们将永远不可能成功。 “重要的是不要停止怀疑”
17、如果离开自省,调查就不可能获得任何成果;而离开了广泛的调查,自省的价值也很难在应用中令人信服。
18、“参与式观察法”,融入到被观察的文化氛围之中而不会被察觉;与此同时,该文化得以继续运转,仿佛没有任何外人在场一样。
19、处理观察到的庞大数据需要付出高昂的代价,为了降低处理的代价,一个办法就是设计一些实验。
20、在任何一个刚刚起步的领域,我们都可能会犯这样那样的错误,然而或许在其中,最大的错误就是因为过于谨小慎微而裹足不前。虽然我们需要尽可能的循规蹈矩,但是更重要的却是要敢于进行试验;只要敢于进行试验,哪怕结果是失败的,也要比什么都不做更好。
21、来自不同个体的差异性,依然是破坏项目可预测性的致命因素。
程序开发心理学阅读笔记——第I篇的更多相关文章
- 程序开发心理学阅读笔记——第II篇
作为社会行为的软件开发程序开发组->程序开发团队->程序开发项目1.要判断程序员的某个集体是否构成一支团队,要看其中的成员以何种方式相互协作,以共同开发软件产品.2.健康的团队要始终能够保 ...
- 还有这种书,程序开发心理学(豆瓣) - 豆瓣读书,转载自:https://book.douban.com/subject/1141154/
登录/注册 下载豆瓣客户端 豆瓣 读书 电影 音乐 同城 小组 阅读 FM 时间 豆品 更多 豆瓣读书 购书单 电子图书 豆瓣书店 2018年度榜单 2018书影音报告 购物车 程序开发心理学 作 ...
- 微信小程序开发:学习笔记[7]——理解小程序的宿主环境
微信小程序开发:学习笔记[7]——理解小程序的宿主环境 渲染层与逻辑层 小程序的运行环境分成渲染层和逻辑层. 程序构造器
- 微信小程序开发:学习笔记[5]——JavaScript脚本
微信小程序开发:学习笔记[5]——JavaScript脚本 快速开始 介绍 小程序的主要开发语言是 JavaScript ,开发者使用 JavaScript 来开发业务逻辑以及调用小程序的 API 来 ...
- 微信小程序开发:学习笔记[4]——样式布局
微信小程序开发:学习笔记[4]——样式布局 Flex布局 新的布局方式 在小程序开发中,我们需要考虑各种尺寸终端设备上的适配.在传统网页开发,我们用的是盒模型,通过display:inline | b ...
- 微信小程序开发:学习笔记[3]——WXSS样式
微信小程序开发:学习笔记[3]——WXSS样式 快速开始 介绍 WXSS(WeiXin Style Sheets)是一套用于小程序的样式语言,用于描述WXML的组件样式,也就是视觉上的效果. WXSS ...
- 微信小程序开发:学习笔记[2]——WXML模板
微信小程序开发:学习笔记[2]——WXML模板 快速开始 介绍 WXML 全称是 WeiXin Markup Language,是小程序框架设计的一套标签语言,结合小程序的基础组件.事件系统,可以构建 ...
- 微信小程序开发:学习笔记[1]——Hello World
微信小程序开发:学习笔记[1]——Hello World 快速开始 1.前往微信公众平台下载微信开发者工具. 地址:https://mp.weixin.qq.com/debug/wxadoc/dev/ ...
- 微信小程序开发:学习笔记[9]——本地数据缓存
微信小程序开发:学习笔记[9]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...
随机推荐
- Excel 统计IP
参考资料: 1:http://zhidao.baidu.com/question/127624244.html 其中的公式改成<1就可以了. 2:http://support.office.mi ...
- poj1005 I Think I Need a Houseboat
这题目只要读懂了意思就好做了,先求出来(0.0)到(x.y)的距离为r,然后求出来以r为半径的半圆的面积,然后再用这个面积除以50,再向上取整就可以啦. #include <stdio.h> ...
- jquery控制元素的淡入淡出切换
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 一个Brushes笔画应用ios源码完整版
效果很不错的画笔App,提供几十种不同的画笔,包括毛笔画笔.拥有绘画App的一些基本功能,包括颜色选择.绘画保存,支持撤销(undo).重做(redo)以及橡皮擦功能等等,甚至还支持类似PhotoSh ...
- Unable to write inside TEMP environment path
安装PostgreSQL 9:Unable to write inside TEMP environment path 注册表:regedit HKEY_CLASSES_ROOT\.vbs,设置默认为 ...
- Windows系统错误代码大全
1 Microsoft Windows 系统错误代码简单分析: 0000 操作已成功完成.0001 错误的函数. 0002 系统找不到指定的文件. 0003 系统找不到指定的路径. 0004 系统无法 ...
- Objective-C基本数据类型、表达式和语句
一.基本数据类型 1.一般的计算机语言在定义变量的时候,需要提供给两个内容:类型和名字. 比如:int myClassID; 2.在Xcode中,无论你使用的是GCC编译器还是LLVM编译器,如果我们 ...
- (转)Arcgis API常用接口调用方法
var map, navToolbar, editToolbar, tileLayer, toolbar;//var mapBaseUrl = "http://localhost:8399/ ...
- PHP变量作用域以及地址引用问题
作用域的概念: 在PHP脚本的任何位置都可以声明变量,但是,声明变量的位置会大大影响访问变量的范围.这个可以访问的范围称为作用域. 主要的常用的包括:局部变量.全局变量.静态变量. 1.局部变量:就是 ...
- 自定义DatePicker,年月日,不显示其中某几项
经过源码研究:该结构主要包含三个NumberPicker: private final NumberPicker mDayPicker; private final NumberPicker mMon ...