Linux/Unix设计思想

Linux/Unix设计思想
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] ,
2012-04
版次: 1
ISBN: 9787115266927
定价: 39.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 168页
字数: 250千字
正文语种: 简体中文
原版书名: Linux and the Unix Philosophy
197人买过
  • 作为开发Unix多年的专家,MikeGancarz曾说过:“要想成为计算机的主人,而不是它的奴隶,你就应该使用Linux!”有别于市面上的其他关注如何使用Linux的书籍,《Linux/Unix设计思想》讲述的是“Linux的思维方式”,揭示了Linux正是Unix这一无所不能的操作系统的完美实现。到目前为止,没有一本书同时介绍Unix和Linux的设计理念,《Linux/Unix设计思想》将这两者有效地结合起来,保留了TheUnixPhilosophy中Unix方面的内容的同时,探讨了Linux和开源领域的新思想。 MikeGancarz,美国佐治亚州亚特兰大市的一名编程及应用顾问。他的团队使用Linux、Unix和Java工具,为金融服务行业开发出多个获奖的成像解决方案。作为Unix应用程序设计专家,他不遗余力地推广Unix已达二十多年。作为开发出XWindowSystem的团队成员,MikeGancarz还始创了一些至今仍应用在Linux的最新窗口管理器中的可用性观念。Mike曾经在DEC公司位于新罕布什尔州纳舒厄城的Unix工程开发项目组工作,主持了将Unix命令和程序移植到64位Alpha处理器的工作。他的首部著作TheUnixPhilosophy(DigitalPress,1995)令数以万计的技术人员受益。 第1章Unix哲学:集思广益的智慧

    1.1NIH综合征

    1.2Unix的开发

    1.3Linux:一个人加上一百万人的智慧

    1.4Unix哲学概述

    第2章人类的一小步

    2.1准则1:小即是美

    2.2简化软件工程

    2.2.1小程序易于理解

    2.2.2小程序易于维护

    2.2.3小程序消耗的系统资源较少

    2.2.4小程序容易与其他工具相结合

    2.3关于“昆虫”的研究

    2.4准则2:让每一个程序只做好一件事

    第3章快速建立原型的乐趣和好处

    3.1知识与学习曲线

    3.1.1事实上,每个人有自己的学习曲线

    3.1.2大师们也知道,变化不可避免

    3.1.3为什么软件会被称为“软件”

    3.2准则3:尽快建立原型

    3.2.1原型的建立是学习的过程

    3.2.2建立早期原型能够降低风险

    3.3人类创造的三个系统

    3.4人类的“第一个系统”

    3.4.1在背水一战的情况下,人类创建了“第一个系统”

    3.4.2没有足够的时间将事情做好

    3.4.3“第一个系统”是单枪匹马或是一小群人开发的

    3.4.4“第一个系统”是一个“精简、其貌不扬的计算机器”

    3.4.5“第一个系统”的概念可以激发他人的创造力

    3.5人类的“第二个系统”

    3.5.1“专家”使用“第一个系统”验证过的想法来创建“第二个系统”

    3.5.2“第二个系统”是由委员会设计的

    3.5.3“第二个系统”臃肿而缓慢

    3.5.4“第二个系统”被大张旗鼓地誉为伟大的成就

    3.6人类的“第三个系统”

    3.6.1“第三个系统”由那些为“第二个系统”所累的人们创建

    3.6.2“第三个系统”通常会改变“第二个系统”的名称

    3.6.3最初的概念保持不变并显而易见

    3.6.4“第三个系统”结合了“第一个系统”和“第二个系统”的最佳特性

    3.6.5“第三个系统”的设计者有充裕的时间将任务做好

    3.7Linux既是“第三个系统”,又是“第二个系统”

    3.8建立“第三个系统”

    第4章可移植性的优先权

    4.1准则4:舍高效率而取可移植性

    4.1.1下一……的硬件将会跑得更快

    4.1.2不要花太多时间去优化程序

    4.1.3最高效的方法通常不可移植

    4.1.4可移植的软件还减少了用户培训的需求

    4.1.5好程序永不会消失,而会被移植到新平台

    4.2准则5:采用纯文本文件来存储数据

    4.2.1文本是通用的可转换格式

    4.2.2文本文件易于阅读和编辑

    4.2.3文本数据文件简化了Unix文本工具的使用

    4.2.4可移植性的提高克服了速度的不足

    4.2.5速度欠佳的缺点会被明年的机器克服

    第5章软件的杠杆效应

    5.1准则6:充分利用软件的杠杆效应

    5.1.1良好的程序员编写优秀代码,优秀的程序员借用优秀代码

    5.1.2避免NIH综合征

    5.1.3允许他人使用你的代码来发挥软件杠杆效应

    5.1.4将一切自动化

    5.2准则7:使用shell脚本来提高杠杆效应和可移植性

    5.2.1shell脚本可以带来无与伦比的杠杆效应

    5.2.2shell脚本还可以充分发挥时间的杠杆效应

    5.2.3shell脚本的可移植性比C程序更高

    5.2.4抵制采用C语言来重写shell脚本的愿望

    第6章交互式程序的高风险

    6.1准则8:避免强制性的用户界面

    6.1.1CUI假定用户是人类

    6.1.2CUI命令解析器的规模庞大且难以编写

    6.1.3CUI偏好“大即是美”的做法

    6.1.4拥有CUI的程序难以与其他项目相结合

    6.1.5CUI没有良好的扩展性

    6.1.6最重要的是,CUI无法利用软件的杠杆效应

    6.1.7“CUI有什么关系?人们都不愿意打字了。”

    6.2准则9:让每一个程序都成为过滤器

    6.2.1自有计算技术以来,人们编写的每一个程序都是过滤器

    6.2.2程序不创建数据,只有人类才会创建数据

    6.2.3计算机将数据从一种形式转换成另一种

    6.3Linux环境:将程序用作过滤器

    第7章更多Unix哲学:十条小准则

    7.1允许用户定制环境

    7.2尽量使操作系统内核小而轻量化

    7.3使用小写字母并尽量简短

    7.4保护树木

    7.5沉默是金

    7.6并行思考

    7.7各部分之和大于整体

    7.8寻求90%的解决方案

    7.9更坏就是更好

    7.10层次化思考

    第8章让Unix只做好一件事

    第9章Unix和其他操作系统的哲学

    9.1雅达利家用电脑:人体工程的艺术

    9.2MS-DOS:七千多万用户的选择不会错

    9.3VMS系统:Unix的对立面

    第10章拨开层层迷雾:Linux与Windows的比较

    10.1内容为王,傻瓜

    10.1.1视觉内容:“用自己的眼睛去看。”

    10.1.2有声内容:“听得到吗?”

    10.1.3文字内容:“视频可以终结广播明星,却消灭不了小报。”

    第11章大教堂?多怪异

    第12章Unix的美丽新世界
  • 内容简介:
    作为开发Unix多年的专家,MikeGancarz曾说过:“要想成为计算机的主人,而不是它的奴隶,你就应该使用Linux!”有别于市面上的其他关注如何使用Linux的书籍,《Linux/Unix设计思想》讲述的是“Linux的思维方式”,揭示了Linux正是Unix这一无所不能的操作系统的完美实现。到目前为止,没有一本书同时介绍Unix和Linux的设计理念,《Linux/Unix设计思想》将这两者有效地结合起来,保留了TheUnixPhilosophy中Unix方面的内容的同时,探讨了Linux和开源领域的新思想。
  • 作者简介:
    MikeGancarz,美国佐治亚州亚特兰大市的一名编程及应用顾问。他的团队使用Linux、Unix和Java工具,为金融服务行业开发出多个获奖的成像解决方案。作为Unix应用程序设计专家,他不遗余力地推广Unix已达二十多年。作为开发出XWindowSystem的团队成员,MikeGancarz还始创了一些至今仍应用在Linux的最新窗口管理器中的可用性观念。Mike曾经在DEC公司位于新罕布什尔州纳舒厄城的Unix工程开发项目组工作,主持了将Unix命令和程序移植到64位Alpha处理器的工作。他的首部著作TheUnixPhilosophy(DigitalPress,1995)令数以万计的技术人员受益。
  • 目录:
    第1章Unix哲学:集思广益的智慧

    1.1NIH综合征

    1.2Unix的开发

    1.3Linux:一个人加上一百万人的智慧

    1.4Unix哲学概述

    第2章人类的一小步

    2.1准则1:小即是美

    2.2简化软件工程

    2.2.1小程序易于理解

    2.2.2小程序易于维护

    2.2.3小程序消耗的系统资源较少

    2.2.4小程序容易与其他工具相结合

    2.3关于“昆虫”的研究

    2.4准则2:让每一个程序只做好一件事

    第3章快速建立原型的乐趣和好处

    3.1知识与学习曲线

    3.1.1事实上,每个人有自己的学习曲线

    3.1.2大师们也知道,变化不可避免

    3.1.3为什么软件会被称为“软件”

    3.2准则3:尽快建立原型

    3.2.1原型的建立是学习的过程

    3.2.2建立早期原型能够降低风险

    3.3人类创造的三个系统

    3.4人类的“第一个系统”

    3.4.1在背水一战的情况下,人类创建了“第一个系统”

    3.4.2没有足够的时间将事情做好

    3.4.3“第一个系统”是单枪匹马或是一小群人开发的

    3.4.4“第一个系统”是一个“精简、其貌不扬的计算机器”

    3.4.5“第一个系统”的概念可以激发他人的创造力

    3.5人类的“第二个系统”

    3.5.1“专家”使用“第一个系统”验证过的想法来创建“第二个系统”

    3.5.2“第二个系统”是由委员会设计的

    3.5.3“第二个系统”臃肿而缓慢

    3.5.4“第二个系统”被大张旗鼓地誉为伟大的成就

    3.6人类的“第三个系统”

    3.6.1“第三个系统”由那些为“第二个系统”所累的人们创建

    3.6.2“第三个系统”通常会改变“第二个系统”的名称

    3.6.3最初的概念保持不变并显而易见

    3.6.4“第三个系统”结合了“第一个系统”和“第二个系统”的最佳特性

    3.6.5“第三个系统”的设计者有充裕的时间将任务做好

    3.7Linux既是“第三个系统”,又是“第二个系统”

    3.8建立“第三个系统”

    第4章可移植性的优先权

    4.1准则4:舍高效率而取可移植性

    4.1.1下一……的硬件将会跑得更快

    4.1.2不要花太多时间去优化程序

    4.1.3最高效的方法通常不可移植

    4.1.4可移植的软件还减少了用户培训的需求

    4.1.5好程序永不会消失,而会被移植到新平台

    4.2准则5:采用纯文本文件来存储数据

    4.2.1文本是通用的可转换格式

    4.2.2文本文件易于阅读和编辑

    4.2.3文本数据文件简化了Unix文本工具的使用

    4.2.4可移植性的提高克服了速度的不足

    4.2.5速度欠佳的缺点会被明年的机器克服

    第5章软件的杠杆效应

    5.1准则6:充分利用软件的杠杆效应

    5.1.1良好的程序员编写优秀代码,优秀的程序员借用优秀代码

    5.1.2避免NIH综合征

    5.1.3允许他人使用你的代码来发挥软件杠杆效应

    5.1.4将一切自动化

    5.2准则7:使用shell脚本来提高杠杆效应和可移植性

    5.2.1shell脚本可以带来无与伦比的杠杆效应

    5.2.2shell脚本还可以充分发挥时间的杠杆效应

    5.2.3shell脚本的可移植性比C程序更高

    5.2.4抵制采用C语言来重写shell脚本的愿望

    第6章交互式程序的高风险

    6.1准则8:避免强制性的用户界面

    6.1.1CUI假定用户是人类

    6.1.2CUI命令解析器的规模庞大且难以编写

    6.1.3CUI偏好“大即是美”的做法

    6.1.4拥有CUI的程序难以与其他项目相结合

    6.1.5CUI没有良好的扩展性

    6.1.6最重要的是,CUI无法利用软件的杠杆效应

    6.1.7“CUI有什么关系?人们都不愿意打字了。”

    6.2准则9:让每一个程序都成为过滤器

    6.2.1自有计算技术以来,人们编写的每一个程序都是过滤器

    6.2.2程序不创建数据,只有人类才会创建数据

    6.2.3计算机将数据从一种形式转换成另一种

    6.3Linux环境:将程序用作过滤器

    第7章更多Unix哲学:十条小准则

    7.1允许用户定制环境

    7.2尽量使操作系统内核小而轻量化

    7.3使用小写字母并尽量简短

    7.4保护树木

    7.5沉默是金

    7.6并行思考

    7.7各部分之和大于整体

    7.8寻求90%的解决方案

    7.9更坏就是更好

    7.10层次化思考

    第8章让Unix只做好一件事

    第9章Unix和其他操作系统的哲学

    9.1雅达利家用电脑:人体工程的艺术

    9.2MS-DOS:七千多万用户的选择不会错

    9.3VMS系统:Unix的对立面

    第10章拨开层层迷雾:Linux与Windows的比较

    10.1内容为王,傻瓜

    10.1.1视觉内容:“用自己的眼睛去看。”

    10.1.2有声内容:“听得到吗?”

    10.1.3文字内容:“视频可以终结广播明星,却消灭不了小报。”

    第11章大教堂?多怪异

    第12章Unix的美丽新世界
查看详情
系列丛书 / 更多
Linux/Unix设计思想
机器学习实战
[美]Peter Harrington 著;李锐、李鹏、曲亚东 译
Linux/Unix设计思想
图灵程序设计丛书:Python基础教程
[挪威]Magnus Lie Hetland 著;司维、曾军崴、谭颖华 译
Linux/Unix设计思想
JavaScript高级程序设计(第3版)
[美]Nicholas C.Zakas 著;李松峰、曹力 译
Linux/Unix设计思想
Python编程:从入门到实践
[美]埃里克·马瑟斯(Eric Matthes) 著;袁国忠 译
Linux/Unix设计思想
R语言实战(第2版)
[美]卡巴科弗(Robert I. Kabacoff) 著;王小宁、刘撷芯、黄俊文 译
Linux/Unix设计思想
大数据:互联网大规模数据挖掘与分布式处理
[美]Anand、[美]Jeffrey David Ullman 著;王斌 译
Linux/Unix设计思想
算法(第4版)
[美]Robert、[美]Kevin Wayne 著;谢路云 译
Linux/Unix设计思想
Spark快速大数据分析
[美]卡劳(Holden Karau)、[美]肯维尼斯科(Andy Konwinski)、[美]温德尔(Patrick Wendell)、[加拿大]扎哈里亚(Matei Zaharia) 著;王道远 译
Linux/Unix设计思想
MySQL必知必会
[英]福塔(Ben Forta) 著;刘晓霞、钟鸣 译
Linux/Unix设计思想
图解HTTP
[日]上野·宣 著;于均良 译
Linux/Unix设计思想
Objective-C基础教程 第2版
[美]Scott、[美]Waqar、[美]Mark Dalrymple 著;周庆成 译
Linux/Unix设计思想
算法图解
袁国忠 译
相关图书 / 更多
Linux/Unix设计思想
LiteOS轻量级物联网操作系统实战 微课视频版
魏杰
Linux/Unix设计思想
Linux综合实训案例教程
陈智斌;梁鹏;肖政宏
Linux/Unix设计思想
Linux操作系统项目化教程
周秀丽;张徐超;周密
Linux/Unix设计思想
Linux操作系统
刘睿;包大宏;兰晓天;李吉桃;王仕杰;吴晓清;张宏洲;杨云江
Linux/Unix设计思想
Linux C语言程序设计(微课视频版)
张同光;田文强;荆春棋;田乔梅;陈明
Linux/Unix设计思想
Linux虚拟化——原理、方法和实战(KVM+Docker+OpenStack)
吴光科;李建尧;柯宇霖
Linux/Unix设计思想
Linux源码趣读
闪客
Linux/Unix设计思想
Linux自动化运维实战(Linux开发书系)
吴光科;彭威城;文·S
Linux/Unix设计思想
Linux云计算——Kubernetes实战
吴光科;程浩;刑亚飞
Linux/Unix设计思想
Linux运维从入门到精通
明日科技
Linux/Unix设计思想
Linux操作系统项目化教程(第2版)
洪伟 主编;丁传炜 谢鹏 副主编
Linux/Unix设计思想
Linux企业高性能架构实战
吴光科;曹森;赵瑞丰
您可能感兴趣 / 更多
Linux/Unix设计思想
宇宙视觉史:从宇宙大爆炸到时间的尽头
[美]查尔斯·刘 著;高爽 译者;[美]马克西姆· 马洛维奇科 绘;未读 出品
Linux/Unix设计思想
写出我心 普通人如何通过写作表达自己(平装本)
[美]娜塔莉·戈德堡(Natalie Goldberg)
Linux/Unix设计思想
写出我心3 写作疗愈的真正秘密
[美]娜塔莉·戈德堡(Natalie Goldberg)
Linux/Unix设计思想
神套路:为什么我们总被带节奏(狂热与网红时代醍醐灌顶之作,教给普通人安身立命的不二法门!)
[美]阿里·阿莫萨维 著;[哥伦比亚]亚历杭德罗·希拉尔多 绘
Linux/Unix设计思想
阿伦森自传
[美]埃利奥特·阿伦森(Elliot Aronson) 著;沈捷 译;湛庐文化 出品
Linux/Unix设计思想
街头官僚:公共服务中的个人困境
[美]迈克尔·李普斯基(Michael Lipsky)
Linux/Unix设计思想
史前至蒙古帝国时期的内欧亚大陆史
[美]大卫·克里斯蒂安 著;潘玲 译;杨建华 校
Linux/Unix设计思想
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
Linux/Unix设计思想
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
Linux/Unix设计思想
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
Linux/Unix设计思想
自律我也能做到(全9册)
[美]康妮·科维尔·米勒 著;[阿根廷]维多利亚·阿萨纳利 绘
Linux/Unix设计思想
你在等什么?
[美]斯科特·明钦 著;[中]易万 译;[美]马特 ·斐兰 绘