程序开发心理学阅读笔记——第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]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...
随机推荐
- 解决win 7&win xp等系统无法正常用U盘安装或启动
目前,制作启动U盘通常是用ultraiso,但由于各种硬件设备与系统的更新,导致现在装系统会出现各种错误. 在用ultraiso制作的启动U盘,装XP时,可能找不到引导项:装win7时,可能提示”wi ...
- DOM 中 Property 和 Attribute 的区别
原文地址:http://web.jobbole.com/83129/ property 和 attribute非常容易混淆,两个单词的中文翻译也都非常相近(property:属性,attribute: ...
- [leetcode]_Count and Say
题目:一开始没看懂, 后头经过WA发现 输出 的意义 是 出现的次数+值. 1 => 一个1 => 11 11 => 两个1 => 21 111=> 三个1 => ...
- project 2010 使用技巧
快捷键 设置任务子任务 ALT+SHIFT+向右方向键 1.工作时间设置 新建一个日历后,可以在 “项目 >> 项目信息 >> 日历” 中进行选择
- PHP数组操作大全
<?php /** * File: phpstudy : array_test.php * Created by PhpStorm. * User: IhMfLy Pheonix@jtv-070 ...
- spark概论,补充
基本概念 RDD spark最大的亮点是提出RDD(Resilient Distributed Dataset)的概念,也就是可伸缩的分布式数据集合,本身只读,可恢复.spark本身不做物理储存,通过 ...
- onActivityResult无法调用
最新项目中使用到了Fragment.在fragment中重载了onActivityResult方法,始终无法调用到. 大体是这样:选择图片的功能纠结了很久,能正常发送选择图片,但是选择后无法调用到on ...
- tcp,第一个例子,客户端,服务端
1.客户端 package cd.itcast.xieyi; import java.io.IOException; import java.io.OutputStream; import java. ...
- C# 乘法口诀表的实现方法
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 乘法运算 ...
- UVA 100 The 3*n+1 problem
UVA 100 The 3*n+1 problem. 解题思路:对给定的边界m,n(m<n&&0<m,n<1 000 000);求X(m-1<X<n+ ...