HOME

TheInfoList



OR:

''The Practice of Programming'' () by Brian W. Kernighan and
Rob Pike Robert "Rob" Pike (born 1956) is a Canadian programmer and author. He is best known for his work on the Go programming language and at Bell Labs, where he was a member of the Unix team and was involved in the creation of the Plan 9 from Bell Labs ...
is a 1999 book about
computer programming Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
and
software engineering Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term ' ...
, published by
Addison-Wesley Addison-Wesley is an American publisher of textbooks and computer literature. It is an imprint of Pearson PLC, a global publishing and education company. In addition to publishing books, Addison-Wesley also distributes its technical titles throug ...
. According to the preface, the book is about "topics like testing,
debugging In computer programming and software development, debugging is the process of finding and resolving ''bugs'' (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve in ...
,
portability Portability may refer to: *Portability (social security), the portability of social security benefits * Porting, the ability of a computer program to be ported from one system to another in computer science ** Software portability, the portability ...
, performance, design alternatives, and style", which, according to the authors, "are not usually the focus of computer science or programming courses". It treats these topics in case studies, featuring implementations in several
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming l ...
s (mostly C, but also C++, AWK,
Perl Perl is a family of two High-level programming language, high-level, General-purpose programming language, general-purpose, Interpreter (computing), interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it ...
, Tcl and
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
). ''The Practice of Programming'' has been translated into twelve languages. Eric S. Raymond, in '' The Art of Unix Programming'', calls it "recommended reading for all C programmers (indeed for all programmers in any language)". A 2008 review on LWN.net found that ''TPOP'' "has aged well due to its focus on general principles" and that "beginners will benefit most but experienced developers will appreciate ..the later chapters".


References


External links


Home page at Princeton
1999 non-fiction books Addison-Wesley books Computer programming books Collaborative non-fiction books Software engineering books {{compu-book-stub