comparison unix-phil.ms @ 14:59305c854751

rearrangements of headlines; summary (ch03)
author meillo@marmaro.de
date Sun, 21 Feb 2010 17:23:19 +0100
parents c665b9e7bf8a
children 00e306ee903b
comparison
equal deleted inserted replaced
13:c665b9e7bf8a 14:59305c854751
218 The origins of the Unix Philosophy were already introduced. 218 The origins of the Unix Philosophy were already introduced.
219 This chapter explains the philosophy, oriented on Gancarz, 219 This chapter explains the philosophy, oriented on Gancarz,
220 and shows concrete examples of its application. 220 and shows concrete examples of its application.
221 221
222 .SH 222 .SH
223 Examples 223 Pipes
224 .LP 224 .LP
225 Following are some examples to demonstrate how applied Unix Philosophy feels like. 225 Following are some examples to demonstrate how applied Unix Philosophy feels like.
226 Knowledge of using the Unix shell is assumed. 226 Knowledge of using the Unix shell is assumed.
227 .PP 227 .PP
228 Counting the number of files in the current directory: 228 Counting the number of files in the current directory:
266 .PP 266 .PP
267 The presented command lines are examples of what Unix people would use 267 The presented command lines are examples of what Unix people would use
268 to get the desired output. 268 to get the desired output.
269 There are also other ways to get the same output. 269 There are also other ways to get the same output.
270 It's a user's decision which way to go. 270 It's a user's decision which way to go.
271 271 .PP
272 .SH
273 Pipes
274 .LP
275 The examples show that many tasks on a Unix system 272 The examples show that many tasks on a Unix system
276 are accomplished by combining several small programs. 273 are accomplished by combining several small programs.
277 The connection between the single programs is denoted by the pipe operator `|'. 274 The connection between the single programs is denoted by the pipe operator `|'.
278 .PP 275 .PP
279 Pipes, and their extensive and easy use, are one of the great 276 Pipes, and their extensive and easy use, are one of the great
294 It is only one half. 291 It is only one half.
295 The other is the design of the programs that are used in the pipeline. 292 The other is the design of the programs that are used in the pipeline.
296 They have to interfaces that allows them to be used in such a way. 293 They have to interfaces that allows them to be used in such a way.
297 294
298 .SH 295 .SH
299 Interface architecture 296 Interface design
300 .LP 297 .LP
301 Unix is, first of all, simple \(en Everything is a file. 298 Unix is, first of all, simple \(en Everything is a file.
302 Files are sequences of bytes, without any special structure. 299 Files are sequences of bytes, without any special structure.
303 Programs should be filters, which read a stream of bytes from ``standard input'' (stdin) 300 Programs should be filters, which read a stream of bytes from ``standard input'' (stdin)
304 and write a stream of bytes to ``standard output'' (stdout). 301 and write a stream of bytes to ``standard output'' (stdout).
626 then there are parts readily available for reuse. 623 then there are parts readily available for reuse.
627 Who cares if the large program is a failure, 624 Who cares if the large program is a failure,
628 but parts of it become successful instead? 625 but parts of it become successful instead?
629 626
630 .SH 627 .SH
631 Results 628 Summary
632 .LP 629 .LP
633 The unix phil is an answer to the sw design question 630 This chapter explained the central ideas of the Unix Philosophy.
634 .LP 631 For each of the ideas, it was exposed what advantages they introduce.
635 tool chains empower the uses of sw 632 The Unix Philosophy are guidelines that help to write valuable software.
633 From the view point of a software developer or software designer,
634 the Unix Philosophy provides answers to many software design problem.
635 .PP
636 The various ideas of the Unix Philosophy are very interweaved
637 and can hardly be applied independently.
638 However, the probably most important messages are:
639 .I "``Do one thing well!''" ,
640 .I "``Keep it simple!''" ,
641 and
642 .I "``Use software leverage!''
636 643
637 644
638 645
639 .NH 1 646 .NH 1
640 Case study: nmh 647 Case study: nmh