15-ProgramDesign

15-ProgramDesign - Chapter XV Program Design Chapter XV...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
Chapter XV Program Design Chapter XV Topics 15.1 Introduction 15.2 The Design Compromise Triangle 15.3 Understand the Problem Description 15.4 Class Design 15.5 Method Design 15.6 Class Interaction 15.7 Testing and Debugging 15.8 Information Hiding 15.9 The Tetris Game Program Design 15.10 Summary Chapter XV Program Design 777
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
15.1 Introduction Many computer science textbooks include one or more chapters on program design. Such chapters can be found at various stages throughout the book. Some authors introduce program design immediately in an effort to create proper program development habits early. There are also authors who mention program design throughout the entire course to emphasize how design applies to the current topic. The contents of Exposure Java and my feelings about Program Design are motivated by my early computer science courses that I took in the Seventies. My early beliefs about program design have been frequently confirmed and have also evolved with new trends in computer science. In my very first computer science course, the first two lectures were very theoretical, and discussed proper program design. Basically, I was clueless. I did not yet know how to communicate with any type of computer. I knew nothing about any kind of programming language and I did not yet know the location of the university computer lab. But, ah. . . I knew about program design. After the conclusion of the two program design lectures, we received our first assignment. It was a very short program, which solved the Quadratic Equation . I looked at the assignment and tried to imagine how to apply proper design to the program and I was confused. The program I "designed" was barely ten lines in length. Next, I wondered how to log into the main frame computer. I asked our instructor how to handle the login process. My instructor looked at me with perplexed eyes at the curious question. "Your concern is with the implementation of correct program design. Details about logging in are trivial and of no consequence. Focus on the important topics in this course," I was told. This was excellent advice and I walked enthusiastically to the computer lab, after getting directions about its location. At the lab I asked the lab assistant how to log into the main frame computer and how to use the card punch machine. The very intelligent lab assistant spoke roughly twenty program languages, but was not very fluent in English. Two minutes later I was logged in. I still had no clue how to perform this task, but I sure learned that the lab assistant knew how to do this. Compile messages were sparse in those days. Essentially, there were two messages, which were success and fatal error . After a few fatal messages, the program assignment was done. It was actually much simpler than the login process and I was quickly finished. I did ponder how I had used correct program design and hoped that my printed assignment would not reflect my failure to apply the many fine principles that my instructor had labored so hard on to get me 778 Exposure Java 2009, APCS Edition 08-08-09
Background image of page 2
started correctly. What is the point that I am making here?
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 10/14/2010 for the course APSC AP taught by Professor Kurt during the Spring '98 term at Wooster.

Page1 / 45

15-ProgramDesign - Chapter XV Program Design Chapter XV...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online