Programming Logic

advertisement
Programming Logic
Program Design
Objectives
•
•
•
•
Steps in program development
Algorithms and Pseudocode
Data
Activity: Alice program
Programming
• Development of a solution to an
identified problem, and the setting up of
a related series of instructions that,
when directed through computer
hardware, will produce the desired
results.
Steps in development of a program
1.
2.
3.
4.
5.
6.
7.
Define the problem
Outline the solution
Develop outline into algorithm
Test the algorithm
Code in a programming language
Run the program
Document the program
Algorithm
•
•
•
Simple terms: a recipe
Set of detailed, unambiguous and
ordered instructions to produce desired
output from a given input.
Simple English
Pseudocode
• Ways to represent algorithms
• Concentrate on logic
• Conventions:
– Use simple English
– Separate lines
– Keywords, indentation to signify control
structure
– Top to bottom
Keywords
• Receive information
– Read: input from file or record
– Get: user input
• Output
– Print: output to printer
– Write: written to file
– Display/Put: to screen
Program Data
•
Variable: store a particular data item
–
–
•
•
Character, integer
Value changes
Constant: data item that remain same
Data Types:
1. Integer
•
3, -5, 1000
2. Character
–
‘A’, ‘b’, ‘$’
3. Boolean
–
–
True or false
Control flag
Program data (Continued)
•
Data Structures
– Data items or/and data structure
1. Record: data items with relationship to one another
•
Student record
2. File: collection of related records.
–
Student file
3. Array: data structure made up of data items with
same data type and are accessed by same name
–
Student scores
4. String: collection of characters, fixed or variable
–
Student name
Class, Object, Method
• Class:
– the abstract characteristics of a thing
– White Rabbit
• Object:
– A particular instance of the class
– A single rabbit
• Method:
– An object’s abilities or behaviors
– Turning the rabbit’s head
Programming Implementation
in Alice
Program Style
• Change program display styles in Preferences
• How to access Preferences dialog box
– Click the Edit menu
– Click the Preferences choice
• Selecting a display style in Preferences dialog
– Click next to “display my program” in General tab
– Select a style
• Style recommended for course: Java Style in Color
Program Style (continued)
Adding Objects to Alice
• Class: blueprint for an object
• How to populate Alice world with objects
– Click Add Objects button in world window
– Locate class specifying the object in the Alice Gallery
– Right-click class and select “Add instance to world”
• Objects in sample world: aliceLiddell and whiteRabbit
• Naming conventions for objects and classes
– Class: capitalize all words; e.g., AliceLiddell
– Object: capitalize all but first word; e.g., aliceLiddell
• Objects can be renamed from the object tree
Adding Objects to Alice
(continued)
Accessing Object Subparts
• Bounding box: encloses any Alice object
• Impact of selecting an object in the object tree
– Bounding box is drawn around object in world
window
– Details area adapts to the selected object
• First action to program: Alice turns head to user
• First set of programming steps
– Select + sign next to aliceLiddell in object tree
– Select + sign next to neck subpart
– Select head (bounding box is drawn, details change)
– Drag doInOrder control to top of editing window
Accessing Object Subparts
(continued)
Accessing Object Subparts
(continued)
Sending Messages
• Programs rely on sending messages to
objects
• Method: behavior-producing message
• Programming Alice’s head to turn
– Select Alice Liddell’s head in the object tree
– Scan through the methods in the details area
– Click on pointAt()
– Drag pointAt()to the editing area and drop
it
– Specify camera as the target
Sending Messages (continued)
Testing and Debugging
• Bug: error interfering with normal program
functions
• Debugging: process of removing program
bugs
• Click the Play button to test Alice Liddell
application
– Alice Liddell’s head will turn toward the user
Testing and Debugging
(continued)
Coding the Other Actions
• say() message
– Displays dialog for an object
– Text can be customized by selecting other…
• Task: complete first Alice Liddell application
– Add Alice Liddell’s initial greeting
– Point the white rabbit to the user
– Have Alice Liddell introduce herself
– Have the white rabbit introduce himself
• Customize messages by selecting from more…
– Example: adjust fontSize of message text to 30
Coding the Other Actions
(continued)
Statements
• Statement: a line or control structure in a
program
• Computer program is a collection of
statements
• Basic format of a line in a program
– object.message(value); more...
• Control structures manage other
statements
– Example: doInOrder contains other
statements
The Final Action
• Sequential execution
– Actions are performed consecutively
– Example: actions executed in doInOrder structures
• Simultaneous execution
– Actions are performed in parallel
– Example: actions performed in doTogether structure
• Finishing the first program
– Add doTogether control structure to application
– Send say( )to aliceLiddell and whiteRabbit
– Message value: Welcome to our world
The Final Action (continued)
Final Testing
• First set of actions are performed
separately
• Final actions are performed
simultaneously
Final Testing (continued)
Questions
Download