1 / 246
文档名称:

Ada 95 - The Craft of Object-Oriented Programming.pdf

格式:pdf   页数:246
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

Ada 95 - The Craft of Object-Oriented Programming.pdf

上传人:kuo08091 2014/3/12 文件大小:0 KB

下载得到文件列表

Ada 95 - The Craft of Object-Oriented Programming.pdf

文档介绍

文档介绍:Preface
Previous Contents Next
Preface
The word ‘craft’ in the title of this book has been chosen deliberately. There have been books published with titles such as ‘The Art’ or ‘The Science’ of
programming, but I feel that neither of these titles is really appropriate for a textbook like this. In Art, you have a blank canvas and are free to express
yourself as the spirit moves you in order to produce Beauty; in Science, you are constrained by ‘the laws of physics’ to produce Truth. A craft, on the other
hand, is less free than Art but less constrained than Science. Truth and Beauty are both involved in the process, but Art provides a blank canvas which is
rarely found in real-life programming. There is almost always some previous system which has to be conformed to: an existing database or file format, or the
peculiarities of a particular operating system. Science searches for Truth, but there is little truth in most programs; only fairly trivial programs are susceptible
to correctness proofs at present. Most programs are unwieldy beasts, made like Frankenstein’s monster from leftover fragments of previous generations of
programs, and neither Art nor Science takes account of this.
Craft skills are concerned with making the best out of available resources. If you are given some wood and asked to make a piece of furniture from it, you
have to work within the confines of what that wood will allow. If the wood is knotty at a particular place, you may have to revise your initial plans in order to
work around the knots, or you may have to discard some of the wood and find some more which matches the piece you’ve been given. Craftsmanship is
concerned with the ability to work around problems like this. In programming, you are rarely presented with a clean sheet and invited to design the next
world-beating program; you are usually presented with an existing program and a list of problems to be resolved. How