C A Software Engineering ApproachSpringer Science & Business Media, 6 dic 2012 - 498 páginas to Software Engineering For 'tis the sport to have the engineer Hoist with his own petar. Shakespeare, Hamlet In the previous chapter, we introduced same basic information about pro gramming and programming languages, particularly C. If this were a book about building bridges, this first chapter might have been an introduction to the tools you would neeci-hammer, saw, drill, etc. Obviously there is a lot more to building a good bridge than simply knowing how to use the tools. Similarly, creating software products requires considerably more skill than simply wielding the programming tools. There is an entire discipline called software engineering that deals with designing, creating, testing, and maintaining large software products. In this chapter we introduce some key software engineering themes, many of which we will revisit through out the course of the book. 10 2: Introduction to Software Engineering 2.1 Introduction Though the cost of computer hardware-the silicon chips containing the millions of transistors that form the instruction set and memories-has shown a consistent trend downward over the years, the cost of software has not followed suit. The high cost of software is due largely (and para doxically) to the ease and flexibility with which it can be shaped. |
Índice
1 | |
2 | |
Introduction to Software Engineering | 9 |
Stages of Software Development | 11 |
Typical software development curve | 20 |
Stages of program development | 32 |
Anatomy of the square function | 38 |
Figure 36 Syntax of an assignment statement | 44 |
Figure 77 Array of pointers | 203 |
Storage Classes | 212 |
Hierarchy of active regions scopes | 218 |
Dynamic memory allocation | 233 |
Structures and Unions e o ee ee e | 236 |
Structure allocation without alignment restrictions | 246 |
A singly linked list | 257 |
Example of union memory storage | 263 |
Scalar Data Types | 57 |
Figure 41 Hierarchy of C data types | 58 |
Hierarchy of C scalar data types | 74 |
Dereferencing a pointer variable | 88 |
Control Flow e o e o e o e e s see e e e e e e e e e e e e e e e e e e e e e o O e o e o e s e ee e e e e e e e e e | 92 |
Logic of nested if statement | 100 |
Figure 55 Syntax of a while statement | 107 |
Operators and Expressions e o e o e o e o e e o e o e o e o e | 126 |
Evaluation of an expression using parentheses | 130 |
Arrays and Pointers e e o e o e o e o e o e o e e o e e e o e o e o o e o e o e o e e o e o e o e o e o e e e e | 164 |
Syntax of an array declaration | 165 |
Because p points to a long int four bytes are set | 175 |
Storage of a string | 183 |
Storage of a multidimensional array | 197 |
Functions e e o e e e e e e e e e e e | 270 |
Syntax of a return statement | 277 |
Call trace of sum function when argument is 5 | 295 |
The C Preprocessor e e | 304 |
Syntax of conditional compilation directives | 316 |
Input and Output | 326 |
Software EngineeringA Case Study | 355 |
Time lines and milestones for the cint project | 364 |
APPENDICES | 376 |
Implementation Limits | 447 |
Reserved Names | 462 |
476 | |
Otras ediciones - Ver todo
C A Software Engineering Approach: A Software Engineering Approach Peter A. Darnell,Philip E. Margolis Vista previa restringida - 1996 |
C a Software Engineering Approach Peter A Darnell,Philip E Margolis No hay ninguna vista previa disponible - 1996 |
C A Software Engineering Approach Peter A. Darnell,Philip E. Margolis No hay ninguna vista previa disponible - 1996 |
Términos y frases comunes
algorithm allocated ANSI ANSI Standard argument binary bit fields bitwise block bubble sort buffer Bug Alert bytes chapter compiler const char constant converted ctype.h data type debugging decimal declaration default digit element end-of-file enum error evaluate example execution exit expression fgets file position indicator float float.h floating-point floating-point values fopen format fseek func function call function defined Function include function returns getchar header file hexadecimal illegal include stdio.h increment initial input int int int int main integer keyword long int loop macro defined malloc memory modules newline nonzero Note null character null pointer operand operating system preprocessor printf programming language putc result returns a pointer runtime library scanf scope sizeof software engineering source file specified statement static stddef.h stdlib.h storage strcpy stream string struct structure syntax Table tion typedef ungetc UNIX unsigned int variable names VITALSTAT void write zero