A discipline of programming. Edsger W. Dijkstra

A discipline of programming


A.discipline.of.programming.pdf
ISBN: 013215871X,9780132158718 | 232 pages | 6 Mb


Download A discipline of programming



A discipline of programming Edsger W. Dijkstra
Publisher: Prentice Hall, Inc.




Murnane, 1993) most research about the cognitive effects of computer programming seemed to have focused on programming as a problem solving rather than a linguistic activity. A discipline like Extreme Programming requires a radical upgrade in both technical and social skills, especially for programmers. Somewhere in the middle are the true software engineers, who approach computer programming in a disciplined and rigourous knowledge-based manner, similar to that of engineers in other fields. Many of us, however, formerly self-studied the discipline of programming and filled in the gaps in our knowledge with most, if not all, of the subjects taught in the University programs. This can be overcome with at least a little thought to organization and putting in good comments, but that takes a discipline that many programmers fail to appreciate. Perl is also great for those who are experienced and disciplined programmers who want to build large systems. Programming can mean a number of. Having the basis for ingenuity is a great thing for kids, and I can't really ever see that going away, but I really think that programming as a discipline is becoming more a means to an end rather than an end in and of itself. They are reasonably easy to reproduce and can be debugged using standard methods (code coverage). Likewise programming is nothing like testing either. Programming is unfortunately such a general term these days that I often find myself cringing at its use in broader contexts. First, if your programmer is not disciplined, Perl is almost guaranteed to give you spaghetti code. If computer languages were To write a decent program, you have to discipline your brain *far* more than you would need with any language (because, let's face it, other people are forgiving but compilers or computers are not). For a long time I thought that Dijkstra's 1976 book “A Discipline of Programming” was a preview of the promised land by showing how to do this, not with assertions, but with guarded commands and weakest preconditions. Still, if the only problems were deterministic access violations, I could live with them (I'm a very disciplined programmer). It's also a discipline which, like martial arts, changes fundamentally the way you see the universe, once you get far enough in and become advanced enough. It requires become transparent, accountable, and responsible. Thus, orthogonality is an important mathematical discipline intrinsic to the specification of recursive functions that is naturally applied in functional programming and specification. With a few notable exceptions (e.g. Testing an application, particularly if it is user facing as most of my 3 decades of work has been, is a discipline all by itself.