(原创)LINUX_UNIX设计思想-读书笔记
第一章
一、Unit哲学
1、小即是美
2、让每一个程序只做好一件事情
3、尽快建立原型
4、舍高效率而取可移植性
5、使用纯文本文件来存储数据
6、充分利用软件的杠杆效应
7、使用shell脚本来提供杠杆效应和可移植性
8、避免强制性的用户界面
9、让每一个程序都成为过滤器
二、原则
1、允许用户定制
2、尽量使操作系统内核小而轻巧
3、使用小写字母,并尽量保持简短
4、保护树木
5、沉默是金
6、并行思考
7、各部分之和大于整体
8、寻找90%的解决方案
9、更坏就是更好
10、深层次思考
第二章
1、程序从小规模开始并尽量保持
2、软件开发力求简单
3、偏离了UNIX的基本操作思路
(1)参数过多
(2)函数代码太多
(3)要靠阅读注释才能明白
(4)无法定义全局变量
(5)无法确定一个异常处理在什么条件下触发
(6)不得不打印代码才能理清思路
第三章
一、Unit开发人员的开发步骤
1、撰写一份简短的功能规格文件
2、编写软件
3、使用迭代的软件测试或者重新编写代码的开发过程,直至完成全部功能
4、如果有必要,再撰写一份详细文档
二、尽快建立模型
1、建立模型是学习的过程
2、降低风险
第四章
1、不要花太多时间去优化软件
2、可移植性高于效率
第五章
1、充分利用软件的杠杆效应
2、良好的程序员编写优秀代码,优秀的程序员借用优秀代码
3、自动化的完成任务
4、使用shell脚本来提高杠杆效应和可移植性
5、小事物在反复放大之后,可以聚集起到不可思议的能量
第六章
1、真正的力量不在于有多强大,而是小而有能力
2、避免强制性的用户界面
3、让每个程序都成为过滤器
4、程序不创建数据,只有人类才会创建数据
5、尽量不要把注意力放到程序可以做什么上,而应该考虑一下程序的发展方向,然后就可以纵览全局,发现这个程序只是其中的一小部分
6、真正好的程序是不会受到人类生理机能的限制的
第七章
1、允许用户定制环境
2、尽量使操作系统内核小而轻量化
3、使用小写并尽可能短
4、保护数目
5、沉默是金
6、并行思考
7、各部分之和大于整体
8、寻求90%的解决方案
9、更坏就是更好
10、层次化思考
第八章
1、让Unit只做好一件事
2、采用那种只做好一件事的小程序来逐步构筑原型,事情会容易得多;这样只需付出最小的努力就能添加新的功能
3、软件永远是完不成的,它会一直发展下去
第九章
1、Unit与其他操作系统的比较
第十章
1、就算一群人认同你的观点,也不代表你就是对的。我同样可以找出另外一群认同我的观点的人
2、Unit系统从来没有试图去满足新手易于使用的需要,用户必须刻苦学习,然后才能利用上它内在的强大功能
3、图形用户界面和操作系统之间是一种形式与功能的关系
4、内容为王
5、有没有图形界面并不重要,真正重要的是那些被传达的信息
6、视觉内容:“用自己的眼睛去看”
7、有声内容:“听得到吗?”
第十一章
1、 起初他们忽视你,而后嘲笑你,接着打压你,最后就是你的胜利之日
第十二章
1、 一张缺少乌托邦的世界地图一文不值
2、 舍弃高效而取可移植性
3、 面向对象编程,充分利用软件的杠杆效应
4、 极限编程,尽快建立原型,从而客户一起开展迭代开发工作
5、 重构,简化再简化,采用小规模、渐进的模式来改进代码,而不是一股脑地推倒重来
6、 强大的、具有高度凝聚力的开发组织
7、 更坏就是更好
8、 廉价、高效、移动的通信
9、 你的努力会得到更多的回报
(原创)LINUX_UNIX设计思想-读书笔记的更多相关文章
- JAVA编程思想读书笔记(二)--容器
接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量).BitSet(位集).Stack(堆栈).Hashtable(散列表) No2 ...
- <<操作系统精髓与设计原理>>读书笔记(一) 并发性:互斥与同步(1)
<<操作系统精髓与设计原理>>读书笔记(一) 并发性:互斥与同步 并发问题是所有问题的基础,也是操作系统设计的基础.并发包括很多设计问题,其中有进程间通信,资源共享与竞争,多个 ...
- 部署:持续集成(CI)与持续交付(CD)——《微服务设计》读书笔记
系列文章目录: <微服务设计>读书笔记大纲 一.CI(Continuous Integration)简介 CI规则1:尽量频繁地把代码签入到分支中以进行集成 CI规则2: ...
- MySQL性能优化总结___本文乃《MySQL性能调优与架构设计》读书笔记!
一.MySQL的主要适用场景 1.Web网站系统 2.日志记录系统 3.数据仓库系统 4.嵌入式系统 二.MySQL架构图: 三.MySQL存储引擎概述 1)MyISAM存储引擎 MyISAM存储引擎 ...
- JAVA编程思想读书笔记(五)--多线程
接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/detail ...
- JAVA编程思想读书笔记(四)--对象的克隆
接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObje ...
- JAVA编程思想读书笔记(三)--RTTI
接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象.换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说, ...
- Kafka/Metaq设计思想学习笔记 转
转载自: http://my.oschina.net/geecoodeer/blog/194829 本文没有特意区分它们之间的区别,仅仅是列出其中笔者认为好的设计思想,供后续设计参考. 目前笔者并没有 ...
- Java编程思想读书笔记之内部类
现在是够懒得了,放假的时候就想把这篇笔记写出来,一直拖到现在,最近在读<Java编程思想>,我想会做不止这一篇笔记,因为之前面试的时候总会问道一些内部类的问题,那这本书的笔记就从内部类开始 ...
随机推荐
- Cyclic Nacklace
Problem Description CC always becomes very depressed at the end of this month, he has checked his cr ...
- Wamp,XAMPP 无法启动,端口未占用的故障处理
打开服务管理里:Service.msc 找到服务:WinHttpAutoProxySvc(WinHTTP 实现了客户端 HTTP 堆栈并向开发人员提供 Win32 API 和 COM 自动化组件以供发 ...
- 单表多次join的sql
select o1.emp_name as 员工姓名1 , o2.emp_name as 员工姓名2 from tableTest join employee o1 on tabletest.[Emp ...
- 补充:tableView优化总结
tableView优化方式总结 (说明:一下只是我自己的小总结,会有不足,望大神指正,多谢大家了) 1 缓存 cell 的行高.目的方便第二遍访问 cell. 2 减少图片的blend 操作.包括:设 ...
- 用Eclipse插件Bytecode Outline来查看Java字节码
在遇到一些小问题的时候我们经常会使用Javap反编译取得字节码来分析,虽然Javap能完成这个工作,但是有两个缺点,一方面操作麻烦,需要很多步骤,一方面没有文档注释,对新手来说看起字节码来比较麻烦. ...
- poi实现将数据输出到Excel表格当中
今天简单的学习了一下POI,一下是所使用到的jar,这些jar可以到apache去下载
- Spring学习总结二——SpringIOC容器二
一:指定bean的依赖关系 例如examplebean对象依赖examplebean1对象,那么在创建examplebean对象之前就 需要先创建examplebean1对象. 1:创建Example ...
- Winform---文件夹操作
一.文件夹的操作 private void button1_Click(object sender, EventArgs e) { //文件夹操作 ////新建文件夹 //Directory.Crea ...
- Qt之软件打包
新建文件:gen.bat,写入: set PATH=C:/Qt/Qt5.5.1/5.5/mingw492_32/bin;C:/Qt/Qt5.5.1/Tools/mingw492_32/bin;%PAT ...
- 如何调试异步加载的js文件(浏览器调试动态加载js)
描述 1:jQuery->var obj= new $.js_Obj():等异步加载js文件,执行方法. obj.method(): 2:页面估计不变,通过声明不同的js文件,进行页面内容的转换 ...