430 likes | 663 Views
Chapter 3: Introducing the Microsoft .NET Framework and Visual Basic .NET. Visual Basic .NET Programming: From Problem Analysis to Program Design. Exploring the Microsoft .NET Framework. .NET Framework key parts: Compilers for: VB .NET Other supported .NET languages
E N D
Chapter 3: Introducing theMicrosoft .NET Framework and Visual Basic .NET Visual Basic .NET Programming: From Problem Analysis to Program Design
Exploring the Microsoft .NET Framework • .NET Framework key parts: • Compilers for: • VB .NET • Other supported .NET languages • Common Language Runtime (CLR) – translates files from the compilers into executable files • Framework Class Library (FCL) – contains hundreds of prewritten classes Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
The Microsoft .NET Compilers • Compiler has two primary purposes: • Check source code for syntax errors • Translate it into executable form • Compilers translate source code into code, which could be understood by the Common Language Runtime (CLR) and then executed by the computer Visual Basic .NET Programming: From Problem Analysis to Program Design
The Framework Class Library • Consists of over 100 classes (a class defines what all objects of a group have in common) • Files have suffix of .dll • Namespaces • Organize classes • Can contain both classes and other namespaces • Compilers do not automatically search all namespaces for classes used by code • Must use keyword Imports • Tell compiler specific namespaces to access Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition • Module definition • Begins with keyword Module • Ends with keyword End Module • Statements contain: • Keywords: Module, Sub, End Sub, etc. • Identifiers: Main, firstName, number1, etc. Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition (continued) • Identifier • Name assigned to things such as: • Modules • Procedures • Variables Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition (continued) • Identifier naming rules: • Can be up to 1023 characters long • Can include any: • Letter • Number • Underscore character • No spaces • Cannot begin with a number • Cannot be a keyword Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition (continued) • Code not case sensitive • Comment lines (e.g. ‘this is a comment) • Add explanations to code • Ignored by compiler • Module header • Names module • Syntax: • Module modulename Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition (continued) • Procedure: • Contains statements that perform processing • Types: • Sub – does not return a value • Function – returns a value • Begin with header • Procedure Main invoked automatically Visual Basic .NET Programming: From Problem Analysis to Program Design
Writing a Visual Basic .NET Module Definition (continued) • Argument • Information contained in parentheses when calling procedure (e.g. Console.Write(“argument”)) • Passed to procedure Visual Basic .NET Programming: From Problem Analysis to Program Design
Defining Visual Basic .NET Variables And Data Types • Variable • Memory location that contains data • Characteristics: • Name • Data type • Value Visual Basic .NET Programming: From Problem Analysis to Program Design
Understanding VB .NET Data Types • Each variable has a data type • Can be: • Primitive • Complex • The computer allocates two bytes for each character and accommodates all characters of major international languages Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Declaring and Populating Variables • Declaration statements • Define variables • Syntax: • Dimvariablename As datatype • Assignment operator • = • Assigns value on right side to variable named on left side Visual Basic .NET Programming: From Problem Analysis to Program Design
Examples • Declaring Variables: Dim myInteger As Integer Dim myDouble As Double Dim myBoolean As Boolean • Populating Variables myInteger = 1 myDouble = 2.5 Visual Basic .NET Programming: From Problem Analysis to Program Design
Defining Constants • Constant • Variable with a value that does not change • Contain values such as: • Company name • Tax identification number • Syntax: • Const constantname As datatype • Must be initialized in the same statement that declares it Visual Basic .NET Programming: From Problem Analysis to Program Design
Defining Constants (continued) • Naming convention: • Capitalize constant names • If name consists of more than one word • Separate words with underscore character (_) • Example: • TAX_ID Visual Basic .NET Programming: From Problem Analysis to Program Design
Module Module1 Sub Main() 'declare variables Dim exam_Score1, exam_Score2 As Integer Dim average As Double Dim studentCSIT108 As Boolean 'declare a constant Const PI As Double = 3.14 'populate variables exam_Score1 = 86 exam_Score2 = 96 'compute average score average = (exam_Score1 + exam_Score2) / 2 'display result Console.WriteLine("the average is: " & average) Console.WriteLine() End Sub End Module Visual Basic .NET Programming: From Problem Analysis to Program Design
Converting Data Types • Numeric data types have different capacities: • Byte variable can hold maximum value of 255 • Integer variable has maximum value of 2.1 billion • Implicit type conversion • Use assignment operator to assign contents of variable to a variable with different data type Visual Basic .NET Programming: From Problem Analysis to Program Design
Example 3-7: Implicit Type Conversion Dim myInteger As Integer = 1 Dim myDouble As Double = 2.5 myDouble = myInteger • Assign Integer value to Double variable • Data type Double has greater capacity than Integer • No potential loss of data Visual Basic .NET Programming: From Problem Analysis to Program Design
Example 3-8: Loss of Precision • Loss of precision • Computing error that can occur when decimal positions are dropped Dim myInteger As Integer = 1 Dim myDouble As Double = 2.5 myInteger = myDouble DO NOT DO THIS • VB .NET will automatically rounddecimal values before truncating (cutting) Visual Basic .NET Programming: From Problem Analysis to Program Design
Example 3-8: Loss of Precision (continued) • Option Strict • Prevent unintentional loss of precision when mixing data types in assignment statements • Compiler detects potential loss of precision • Displays error message • Explicit type conversion • Invoke Convert method to convert data types Do ex. 3-9, p. 96 Do ex. 3-11, p. 98 & Read p. 100 Visual Basic .NET Programming: From Problem Analysis to Program Design
Module Module1 Sub Main() 'declare variables Dim numDouble as Double Dim numInt as Integer 'populate variables numDouble = 119.6 numInt = 119.6 ‘display result: the integer number is rounded up Console.WriteLine("integer: " & numInt) Console.WriteLine("double: " & numDouble) ‘display result: the integer number is rounded up numDouble = 11.634 numInt = NumDouble Console.WriteLine(“After assigning a decimal number/value to an integer variable, the integer variable contains " & numInt & “ ; the number assigned to it was “ & numDouble) End Sub End Module Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Converting Data Types (continued) • Option Explicit • Must define variable before using it in a statement • Otherwise • Compiler generates error message • Generally set On Visual Basic .NET Programming: From Problem Analysis to Program Design
Using Reference Variables • Uses class name as data type • For example: • String • Variable refers to or points to instance of class • Does not actually contain data • Contains memory address of instance of class that contains data Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Using the Arithmetic Operators • Arithmetic operators • For multiplication, division, addition, and subtraction • *, /, +, - • Evaluated in predetermined order called precedence • Standard algebraic rules of precedence apply (p. 101) • Other operators: • Exponentiation • Integer division • Remainder computation Visual Basic .NET Programming: From Problem Analysis to Program Design
Visual Basic .NET Programming: From Problem Analysis to Program Design
Example 3-15: Integer Division (\) Dim firstInt As Integer Dim secondInt As Integer Dim integerResult AsInteger = 0 firstInt = 11 secondInt = 2 integerResult = firstInt \ secondInt Console.WriteLine(“integerResult = firstInt \ secondInt: “ & integerResult) • Result: 5, not 5.5 Do ex. 3-13 & 3-14, p.102 Visual Basic .NET Programming: From Problem Analysis to Program Design
Using the Arithmetic Operators (continued) • Assignment operators: • Formed by combining 1 of the arithmetic operators with the assignment operator • Example: • i += 1 is the same as i = i + 1 See table 3-6, p. 105 Visual Basic .NET Programming: From Problem Analysis to Program Design
Invoking Methods in the Math Class • System namespace includes Math class • Contains methods to accomplish • Exponentiation • Rounding • Trigonometric calculations See table 3-7, p. 105 • To invoke (use) a method from the class library: • Use word “Imports” is necessary • Syntax: ClassName.MethodName(argument) • Math.Pow(firstInt, secondInt) Visual Basic .NET Programming: From Problem Analysis to Program Design
Invoking Methods in the Math Class (continued) • Math class constants: • PI and E (exponent) • To access: • Math.PI Do ex. 3-18, 3-19, 3-20, p. 106 Visual Basic .NET Programming: From Problem Analysis to Program Design
Reading Input From the Keyboard • Use Console class (part of the System namespace) • ReadLine method: Console.ReadLine() • Read one or more characters from keyboard • Convert any numeric data to desired data type • Prompt • Message displayed to user asking for input Do ex. 3-21, p. 108 Visual Basic .NET Programming: From Problem Analysis to Program Design
Programming Example: Temperature Converter • Input • Fahrenheit temperature including decimal positions • Output • Celsius temperature that corresponds to Fahrenheit temperature that was input • Results rounded to one decimal position Visual Basic .NET Programming: From Problem Analysis to Program Design
Programming Example: Temperature Converter (continued) • Main Algorithm • Declare variables • Prompt user for input • Invoke Console.ReadLine to input value from keyboard • Invoke Convert.ToDouble to convert data type String to Double Visual Basic .NET Programming: From Problem Analysis to Program Design
Programming Example: Temperature Converter (continued) • Main Algorithm (continued) • Compute Celsius temperature • Invoke Math.Round to round computed value to one decimal position • Invoke Console.WriteLine to display rounded Celsius temperature Visual Basic .NET Programming: From Problem Analysis to Program Design
Summary • Framework consists of: • Compilers • Common Language Runtime (CLR) • Framework Class Library (FCL) • VB .NET statements consist of • Keywords • Identifiers Visual Basic .NET Programming: From Problem Analysis to Program Design
Summary (continued) • Modules • Procedures: • Subs • Functions • Procedure Main invoked automatically • Variable: • Memory location that contains data Visual Basic .NET Programming: From Problem Analysis to Program Design
Summary (continued) • Constant • Variable with value that does not change • Reference variable • Uses class name as data type • Operators: • Mathematic • Assignment For in-class practice: p. 113, Ex. 2, 3, 6, 7, 8, 9, 11, 14; p. 114, PEx. 2, 3, 4, 5; Program: AddTwoNumbers Visual Basic .NET Programming: From Problem Analysis to Program Design