A Structured Programming Approach to Data

Much of current programming practice is basically empirical and ad hoc in approach. Each problem is tackled without relation to those that have gone before; experiences are made and stored as a series of fragments. Now, under the pressure of events, this unsatisfactory state of affairs is coming to...

Full description

Bibliographic Details
Main Author: COLEMAN.
Format: eBook
Language:English
Published: New York, NY Springer New York 1979, 1979
Edition:1st ed. 1979
Subjects:
Online Access:
Collection: Springer Book Archives -2004 - Collection details see MPG.ReNa
LEADER 03745nmm a2200313 u 4500
001 EB000620612
003 EBX01000000000000000473694
005 00000000000000.0
007 cr|||||||||||||||||||||
008 140122 ||| eng
020 |a 9781461259817 
100 1 |a COLEMAN. 
245 0 0 |a A Structured Programming Approach to Data  |h Elektronische Ressource  |c by COLEMAN. 
250 |a 1st ed. 1979 
260 |a New York, NY  |b Springer New York  |c 1979, 1979 
300 |a XII, 222 p. 1 illus  |b online resource 
505 0 |a 1. An Overview of Program Design -- 1.1 Introduction — The Software Crisis -- 1.2 Objectives of Program Design -- 1.3 The Heart of the Problem -- 1.4 Stepwise Refinement -- 1.5 What Do We Mean When We Say a Program ‘Works’? -- 1.6 Summary -- 1.7 Bibliographical Notes -- 2. Program Design Notation -- 2.1 An Abstract Programming Language -- 2.2 Structuring Control -- 2.3 Structuring Data -- 2.4 What is a Data Structure? -- 2.5 Unstructured Data Types -- 2.6 Implementation of Unstructured Types -- 2.7 Summary -- 2.8 Bibliographical Notes -- 3. Arrays -- 3.1 Array Structures -- 3.2 Arrays and Functions -- 3.3 Implementation of Arrays -- 3.4 Summary -- 3.5 Bibliographical Notes -- 4. Simple Data Structuring -- 4.1 Record Types -- 4.2 Implementation of Record Types -- 4.3 Use of Structured Types -- 4.4 Variant Types -- 4.5 Implementation of Variant Types -- 4.6 Summary -- 4.7 Bibliographical Notes -- 5. On Program Design -- 5.1 Stepwise Refinement of Programs -- 5.2 Two Examples -- 5.3 Summary -- 5.4 Bibliographical Notes -- Exercises 1 -- 6. Set Structures -- 7. The Class Construct -- 8. Dynamic Data Structures -- 9. Sequences -- Exercises 2 -- 10. Simple Searching Techniques -- 11. Hashing Techniques -- 12. Recursion and Recursive Algorithms -- 13. Binary Search Trees -- Exercises 3 -- 14. Designing Programs From Data Structures -- Exercises 4 -- References 
653 |a Software engineering 
653 |a Programming Techniques 
653 |a Computer science 
653 |a Computer programming 
653 |a Software Engineering 
653 |a Computer Science 
041 0 7 |a eng  |2 ISO 639-2 
989 |b SBA  |a Springer Book Archives -2004 
028 5 0 |a 10.1007/978-1-4612-5981-7 
856 4 0 |u https://doi.org/10.1007/978-1-4612-5981-7?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 004 
520 |a Much of current programming practice is basically empirical and ad hoc in approach. Each problem is tackled without relation to those that have gone before; experiences are made and stored as a series of fragments. Now, under the pressure of events, this unsatisfactory state of affairs is coming to an end. Programming is becoming a technology, a theory known as structured programming is developing. The purpose of a theory is to categorise and explain existing practice, thus enabling it to be improved through the development of new and sharper techniques. The resulting experiences have then to be fed back into the theory so that the process of enrichment may continue. This dialectical relationship between theory and practice is essential to a healthy programming technology. The lack of such a relationship in the 1950s and 60s and the accompanying software crisis certainly confirm the converse of this proposition. My aim in writing this book has been to explain the current state of the theory of structured programming, so that it may be used to improve the reader's practice. The book deals with two facets of programming - how to design a program in terms of abstract data structures and how to represent the data structures on real and bounded computers. The separation between program design and data structure representation leads to more reliable and flexible programs