1、Unit哲学程序员
一、小便是美shell
二、让每个程序只作好一件事情编程
三、尽快创建原型小程序
四、舍高效率而取可移植性函数
五、使用纯文本文件来存储数据学习
六、充分利用软件的杠杆效应测试
七、使用shell脚原本提供杠杆效应和可移植性优化
八、避免强制性的用户界面操作系统
九、让每个程序都成为过滤器对象
2、原则
一、容许用户定制
二、尽可能使操做系统内核小而轻巧
三、使用小写字母,并尽可能保持简短
四、保护树木
五、沉默是金
六、并行思考
七、各部分之和大于总体
八、寻找90%的解决方案
九、更坏就是更好
十、深层次思考
一、程序从小规模开始并尽可能保持
二、软件开发力求简单
三、偏离了UNIX的基本操做思路
(1)参数过多
(2)函数代码太多
(3)要靠阅读注释才能明白
(4)没法定义全局变量
(5)没法肯定一个异常处理在什么条件下触发
(6)不得不打印代码才能理清思路
1、Unit开发人员的开发步骤
一、撰写一份简短的功能规格文件
二、编写软件
三、使用迭代的软件测试或者从新编写代码的开发过程,直至完成所有功能
四、若是有必要,再撰写一份详细文档
2、尽快创建模型
一、创建模型是学习的过程
二、下降风险
一、不要花太多时间去优化软件
二、可移植性高于效率
一、充分利用软件的杠杆效应
二、良好的程序员编写优秀代码,优秀的程序员借用优秀代码
三、自动化的完成任务
四、使用shell脚原本提升杠杆效应和可移植性
五、小事物在反复放大以后,能够汇集起到难以想象的能量
一、真正的力量不在于有多强大,而是小而有能力
二、避免强制性的用户界面
三、让每一个程序都成为过滤器
四、程序不建立数据,只有人类才会建立数据
五、尽可能不要把注意力放到程序能够作什么上,而应该考虑一下程序的发展方向,而后就能够纵览全局,发现这个程序只是其中的一小部分
六、真正好的程序是不会受到人类生理机能的限制的
一、容许用户定制环境
二、尽可能使操做系统内核小而轻量化
三、使用小写并尽量短
四、保护数目
五、沉默是金
六、并行思考
七、各部分之和大于总体
八、寻求90%的解决方案
九、更坏就是更好
十、层次化思考
一、让Unit只作好一件事
二、采用那种只作好一件事的小程序来逐步构筑原型,事情会容易得多;这样只需付出最小的努力就能添加新的功能
三、软件永远是完不成的,它会一直发展下去
一、Unit与其余操做系统的比较
一、就算一群人认同你的观点,也不表明你就是对的。我一样能够找出另一群认同个人观点的人
二、Unit系统历来没有试图去知足新手易于使用的须要,用户必须刻苦学习,而后才能利用上它内在的强大功能
三、图形用户界面和操做系统之间是一种形式与功能的关系
四、内容为王
五、有没有图形界面并不重要,真正重要的是那些被传达的信息
六、视觉内容:“用本身的眼睛去看”
七、有声内容:“听获得吗?”
一、 起初他们忽视你,然后嘲笑你,接着打压你,最后就是你的胜利之日
一、 一张缺乏乌托邦的世界地图一文不值
二、 舍弃高效而取可移植性
三、 面向对象编程,充分利用软件的杠杆效应
四、 极限编程,尽快创建原型,从而客户一块儿开展迭代开发工做
五、 重构,简化再简化,采用小规模、渐进的模式来改进代码,而不是一股脑地推倒重来
六、 强大的、具备高度凝聚力的开发组织
七、 更坏就是更好
八、 廉价、高效、移动的通讯
九、 你的努力会获得更多的回报