Microsoft Visual Basic 2005: Reloaded Chapter 3 Variables, Constants, Methods, and

advertisement
Microsoft Visual Basic 2005:
Reloaded
Second Edition
Chapter 3
Variables, Constants, Methods, and
Calculations
Objectives
After studying this chapter, you should be able to:
• Declare variables and named constants
• Assign data to an existing variable
• Convert data to the appropriate type using the
TryParse method and the Convert class methods
• Write arithmetic expressions
• Understand the scope and lifetime of variables and
named constants
Microsoft Visual Basic 2005: Reloaded, Second Edition
2
Objectives (continued)
• Understand the purpose of the Option Explicit,
Option Strict, and Imports statements
• Use a TOE chart, pseudocode, and a flowchart to
code an application
• Clear the contents of a control’s Text property while
an application is running
Microsoft Visual Basic 2005: Reloaded, Second Edition
3
Objectives (continued)
• Send the focus to a control while the application is
running
• Explain the difference between syntax errors and
logic errors
• Format an application’s numeric output
Microsoft Visual Basic 2005: Reloaded, Second Edition
4
Variables
• Variables: computer memory locations used to store
data while an application is running
• Every variable has a:
–
–
–
–
Name
Data type
Scope
Lifetime
Microsoft Visual Basic 2005: Reloaded, Second Edition
5
Selecting a Data Type for a Variable
•
•
•
•
Each variable must be assigned a data type
Data type: the type of data the variable can store
Each data type is a class
Unicode:
– Universal coding scheme for characters
– Assigns a unique numeric value to each character
Microsoft Visual Basic 2005: Reloaded, Second Edition
6
Selecting a Data Type for a Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
7
Selecting a Name for a Variable
• Identifier: descriptive name given to a variable
• Use a meaningful name that reflects the purpose of
the variable
• Use camel casing for variable identifiers
• Variable names must conform to naming rules
Microsoft Visual Basic 2005: Reloaded, Second Edition
8
Selecting a Name for a Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
9
Declaring a Variable
• Declaration statement: used to declare, or create,
a variable
• Declaration statement includes
–
–
–
–
Scope keyword: Dim or Private or Static
Name of the variable
Data type
Initial value (optional)
Microsoft Visual Basic 2005: Reloaded, Second Edition
10
Declaring a Variable (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
11
Assigning Data to an Existing Variable
• Assignment statement:
– Used to assign values to properties of controls
– Used to assign values to variables
• Assignment operator: (=)
– Value on the right of the = operator is assigned to
the variable on the left of the = operator
Microsoft Visual Basic 2005: Reloaded, Second Edition
12
Assigning Data to an Existing Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
13
Assigning Data to an Existing Variable
(continued)
• String: group of characters enclosed in quotation
marks
• Literal constant:
– An item of data whose value does not change while the
application is running
– Can be a numeric or a string literal constant
• A numeric literal with a decimal place is treated as a
Double type
• Literal type character: forces a literal constant to
assume a specific data type
Microsoft Visual Basic 2005: Reloaded, Second Edition
14
Assigning Data to an Existing Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
15
Using the TryParse Method
• Method: a specific portion of a class’s instructions
that performs a task for the class
• TryParse method:
– Part of every numeric data type’s class
– Used to convert a string to that numeric data type
• TryParse method has 4 arguments
–
–
–
–
String: string value to be converted
Variable: location to store the result
IFormatProvider (optional): specifies formatting
NumberStyles (optional): allows formatting
characters to be in the data to be converted
Microsoft Visual Basic 2005: Reloaded, Second Edition
16
Using the TryParse Method
(continued)
• IFormatProvider argument formats numbers, dates,
and times
• NumberFormatInfo.CurrentInfo value:
– Uses the formatting characters specified in the
Windows Customize Regional Options dialog box
Microsoft Visual Basic 2005: Reloaded, Second Edition
17
Using the TryParse Method
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
18
Using the TryParse Method
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
19
Using the TryParse Method
(continued)
• Assign the TryParse method’s return value to a
Boolean variable
– If True, the conversion was successful
– If False, the value could not be converted
• Line continuation character: the underscore (_)
– Breaks up a long instruction into two or more lines
– Must appear at end of line, preceded by a space
• Must have an Imports statement in the General
Declarations section of code to use
NumberStyles and
NumberformatInfo.CurrentInfo:
– Imports System.Globalization
Microsoft Visual Basic 2005: Reloaded, Second Edition
20
Using the TryParse Method
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
21
Using the Convert Class
• Convert class:
– Contains methods for converting numeric values to
specific data types
• Use the dot member access operator to separate
the class name from the method name
Microsoft Visual Basic 2005: Reloaded, Second Edition
22
Using the Convert Class (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
23
Writing Arithmetic Expressions
• Precedence number: indicates the order in which
an operation in an expression is performed
• If an expression has two operators with the same
precedence, they are evaluated from left to right
• Use parentheses to change the order of evaluation
• Integer division operator (\): divides two integers
and returns an integer value
• Modulus arithmetic operator (Mod): divides two
numbers and returns the remainder
Microsoft Visual Basic 2005: Reloaded, Second Edition
24
Writing Arithmetic Expressions
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
25
Writing Arithmetic Expressions
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
26
The Scope and Lifetime of a Variable
• Scope: indicates where the variable can be used
• Lifetime: indicates how long the variable remains in
memory
• Variables are usually declared in two places:
– Within a procedure
– In the form’s Declarations section
• Procedure-level variable: declared within a
procedure
• Procedure scope: only the procedure can use the
variable
Microsoft Visual Basic 2005: Reloaded, Second Edition
27
The Scope and Lifetime of a Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
28
The Scope and Lifetime of a Variable
(continued)
• With procedure-level scope, two procedures can
each use the same variable names
• Comments:
– Used to internally document the procedure
– Are ignored by the compiler
– Appear in green in the code editor
Microsoft Visual Basic 2005: Reloaded, Second Edition
29
The Scope and Lifetime of a Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
30
The Scope and Lifetime of a Variable
(continued)
•Module scope: variable can be used by all procedures
in the form
•Module-level variable:
–Declared in the form’s Declarations section
–Use Private keyword in declaration
•Module-level variables retain their values until the
application ends
Microsoft Visual Basic 2005: Reloaded, Second Edition
31
The Scope and Lifetime of a Variable
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
32
The Scope and Lifetime of a Variable
(continued)
• Block scope: variable can be used within a specific
block of code
• Block-level variable: declared within a specific
block of code
Microsoft Visual Basic 2005: Reloaded, Second Edition
33
Static Variables
• Static variable:
– Procedure-level variable that retains its value even after
the procedure ends
– Retains its value until the application ends
– Can be used instead of a module-level variable
• A static variable has:
– Same lifetime as a module-level variable
– Narrower scope than a module-level variable
• Declared using the Static keyword
Microsoft Visual Basic 2005: Reloaded, Second Edition
34
Static Variables (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
35
Named Constants
• Named constant: memory location whose value
cannot be changed while the application is running
• Declared using the Const keyword
• Good programming practice to specify the data type as
well
Microsoft Visual Basic 2005: Reloaded, Second Edition
36
Named Constants (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
37
Named Constants (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
38
Named Constants (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
39
Option Explicit and Option Strict
• Option Explicit:
– When on, all variables used must first be declared
– Protects against misspelled variable names in code
– Placed in the General Declarations section of code
editor
• Implicit type conversion: can occur if the value on
the right side of an assignment statement is not the
same data type as the variable on the left side
Microsoft Visual Basic 2005: Reloaded, Second Edition
40
Option Explicit and Option Strict
(continued)
• Promoting: when a value is converted to another
data type that stores larger numbers
• Demoting: when a value is converted to another data
type that stores only smaller numbers
– Data loss can occur with demoting
• Option Strict:
– Can be used to enforce correct data typing
– Placed in the General Declarations section of the code
editor
Microsoft Visual Basic 2005: Reloaded, Second Edition
41
Option Explicit and Option Strict
(continued)
• Option Strict On follows these conversion
rules:
– Strings are not implicitly converted to numbers or
vice versa
– Narrower data types are implicitly promoted to wider
data types
– Wider data types are not implicitly demoted to
narrower data types
Microsoft Visual Basic 2005: Reloaded, Second Edition
42
Option Explicit and Option Strict
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
43
Coding the Skate-Away Sales
Application
Microsoft Visual Basic 2005: Reloaded, Second Edition
44
Coding the Skate-Away Sales
Application (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
45
Using Pseudocode to Plan a
Procedure
• Pseudocode: short phrases to describe the steps a
procedure needs to take to accomplish its goal
Microsoft Visual Basic 2005: Reloaded, Second Edition
46
Using Pseudocode to Plan a
Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
47
Using a Flowchart to Plan a Procedure
• Flowchart: uses standardized symbols to show the
steps a procedure must take to accomplish its goal
• Can be used in place of pseudocode for planning
• Three symbols:
– Start/stop symbol (oval): indicates start and stop
points
– Process symbol (rectangle): represents tasks
– Input/output symbol (parallelogram): represents input
or output tasks
Microsoft Visual Basic 2005: Reloaded, Second Edition
48
Using a Flowchart to Plan a Procedure
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
49
Using a Flowchart to Plan a Procedure
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
50
Coding the clearButton’s Click Event
Procedure
Microsoft Visual Basic 2005: Reloaded, Second Edition
51
Clearing the Contents of a Control’s
Text Property
Microsoft Visual Basic 2005: Reloaded, Second Edition
52
Clearing the Contents of a Control’s
Text Property (continued)
• Zero-length string (or empty string):
– Removes the contents in the Text property of a
control
– Use empty set of quotation marks: “”
• String.Empty: used to assign an empty string to a
control’s Text property
• For TextBox control, use the Clear method
Microsoft Visual Basic 2005: Reloaded, Second Edition
53
Setting the Focus
• Focus method: moves the focus to a specified
control at runtime
Microsoft Visual Basic 2005: Reloaded, Second Edition
54
Setting the Focus (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
55
Setting the Focus (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
56
Coding the calcButton’s Click Event
Procedure
Microsoft Visual Basic 2005: Reloaded, Second Edition
57
Coding the calcButton’s Click Event
Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
58
Coding the calcButton’s Click Event
Procedure (continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
59
Testing and Debugging the Application
•
•
•
•
•
Valid data: data that the application is expecting
Invalid data: data that is unexpected
Debugging: locating errors in a program
Syntax errors: usually caused by mistyping
Logic errors: occur when you enter an instruction
that does not give the expected results
• Test a program with both valid and invalid data
Microsoft Visual Basic 2005: Reloaded, Second Edition
60
Testing and Debugging the Application
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
61
Testing and Debugging the Application
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
62
Formatting Numeric Output
• Formatting: specifying the number of decimal
places and any special characters to display
• Format specifier: specifies the type of formatting
to use
• Precision specifier: controls the number of
significant digits or zeros to the right of the decimal
point
Microsoft Visual Basic 2005: Reloaded, Second Edition
63
Formatting Numeric Output
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
64
Formatting Numeric Output
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
65
Formatting Numeric Output
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
66
Formatting Numeric Output
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
67
Formatting Numeric Output
(continued)
Microsoft Visual Basic 2005: Reloaded, Second Edition
68
Programming Tutorial
Microsoft Visual Basic 2005: Reloaded, Second Edition
69
Programming Example
Microsoft Visual Basic 2005: Reloaded, Second Edition
70
Summary
• Variables and named constants are memory
locations that store data
• Variables can change value, but constants cannot
• Variables and constants have a name, data type,
scope, and lifetime
• Use Dim to declare a variable at block or procedure
level
• Use Private to declare a variable at module level
Microsoft Visual Basic 2005: Reloaded, Second Edition
71
Summary (continued)
• Assignment statement is used to assign values to
an existing variable
• Literals are constant items of data
• Use the TryParse method to convert a string to a
number
• Use the Imports statement to import a namespace
• The Convert class contains methods to convert
values to a specified data type
Microsoft Visual Basic 2005: Reloaded, Second Edition
72
Summary (continued)
• A procedure-level variable is usable only by the
procedure in which it is declared
• A module-level variable is usable by all procedures
in the form
• A block-level variable is usable only within the
block in which it is declared
• A static variable is a procedure-level variable that
retains its value when the procedure ends
• Option Explicit On forces declaration of all
variables before use
Microsoft Visual Basic 2005: Reloaded, Second Edition
73
Summary (continued)
• Option Strict On disallows any implicit type
conversions that may cause a loss of data
• Pseudocode or a flowchart is used to plan a
procedure’s code
• Use the Clear method or empty string to clear a
textbox
• The Focus method moves the focus to a control
• Test a program with both valid and invalid data
Microsoft Visual Basic 2005: Reloaded, Second Edition
74
Download