Download presentation
Presentation is loading. Please wait.
Published byErika Randall Modified over 9 years ago
1
Chapter 9: Writing Procedures Visual Basic.NET Programming: From Problem Analysis to Program Design
2
Visual Basic.NET Programming: From Problem Analysis to Program Design2 Objectives Explore the client-server model Review the syntax of procedures Write user-defined procedures Design and write overloaded procedures
3
Visual Basic.NET Programming: From Problem Analysis to Program Design3 Exploring the Client-Server Model Methods –Procedures within class definition –Provide services to other objects in system Objects send messages to invoke procedures –Client object sends message –Server object receives message
4
Visual Basic.NET Programming: From Problem Analysis to Program Design4
5
5 Exploring the Client-Server Model (continued) Client sends message invoking server procedure –Optionally sending values in form of arguments Server procedure performs requested task –Optionally returns value to client
6
Visual Basic.NET Programming: From Problem Analysis to Program Design6 Exploring the Client-Server Model (continued) Calling method example: –Console.WriteLine(“Hello World Wide Web”) Class: Console Method: WriteLine Argument: “Hello World Wide Web”
7
Visual Basic.NET Programming: From Problem Analysis to Program Design7 Exploring the Client-Server Model (continued) Calling method example: –doubleResult = Math.Sqrt(firstInt) Class: Math Method: Sqrt Argument: firstInt Return value: doubleResult
8
Visual Basic.NET Programming: From Problem Analysis to Program Design8 Exploring the Client-Server Model (continued) Unified Modeling Language (UML) sequence diagram –Maps interactions between objects –Shows objects as rectangles –Lifelines Vertical lines below objects Represent sequence of time Shown as either dashed line or narrow box
9
Visual Basic.NET Programming: From Problem Analysis to Program Design9
10
10 Exploring the Client-Server Model (continued) Unified Modeling Language (UML) sequence diagram (continued) –Active object Object executing or controlling part of interaction –Messages Represented using arrows
11
Visual Basic.NET Programming: From Problem Analysis to Program Design11 Example 9-1: Invoking Math.Pow 1. Option Explicit On 2. Option Strict On 3. Module Chapter9Example1 4. Sub Main() 5. Dim answer As Double 6. answer = Math.Pow(4, 2) 7. Console.WriteLine(answer) 8. End Sub 9. End Module
12
Visual Basic.NET Programming: From Problem Analysis to Program Design12
13
Visual Basic.NET Programming: From Problem Analysis to Program Design13 Reviewing the Syntax of Procedures Using procedures –Improves code clarity –Enhances error detection –Simplifies maintenance Types of procedure in VB.NET: –Sub –Function
14
Visual Basic.NET Programming: From Problem Analysis to Program Design14 Using Sub Procedures Sub procedure –Begins with procedure header –Followed by one or more statements –Ends with keywords End Sub
15
Visual Basic.NET Programming: From Problem Analysis to Program Design15
16
Visual Basic.NET Programming: From Problem Analysis to Program Design16 Using Sub Procedures (continued) Procedure header parts: –Accessibility –Sub –Procedure name –Parameter list
17
Visual Basic.NET Programming: From Problem Analysis to Program Design17 Using Sub Procedures (continued) Parameters –Values passed to procedure –Declared using keywords ByVal ByRef
18
Visual Basic.NET Programming: From Problem Analysis to Program Design18 Using Sub Procedures (continued) By value –Procedure does not have direct access to argument variable Cannot change its contents –Procedure is given copy of variable By reference –Procedure code given direct access to argument variable May change its value
19
Visual Basic.NET Programming: From Problem Analysis to Program Design19 Using Function Procedures Function procedure definition –Begins with procedure header –Followed by one or more statements –Ends with keywords End Function
20
Visual Basic.NET Programming: From Problem Analysis to Program Design20
21
Visual Basic.NET Programming: From Problem Analysis to Program Design21 Using Function Procedures (continued) Procedure header: –Accessibility –Function –Procedure name –Parameter list –As dataType
22
Visual Basic.NET Programming: From Problem Analysis to Program Design22 Example 9-3: Writing and invoking a Function procedure 1. Option Explicit On 2. Option Strict On 3. Module Client 4. Sub Main() 5. Dim total As Integer 6. total = Server.AddEmUp(2, 3) 7. Console.WriteLine(total) 8. End Sub 9. End Module
23
Visual Basic.NET Programming: From Problem Analysis to Program Design23 Example 9-3: Writing and invoking a Function procedure (continued) 3. Module Server 4. Public Function AddEmUp(ByVal a As Integer, ByVal b As Integer) As Integer 5. Dim sum As Integer 6. sum = a + b 7. Return sum 8. End Sub 9. End Module
24
Visual Basic.NET Programming: From Problem Analysis to Program Design24 Example 9-3: Writing and invoking a Function procedure (continued) Returning a variable –Use keyword Return –Followed by variable –Returns control of execution to invoking client
25
Visual Basic.NET Programming: From Problem Analysis to Program Design25
26
Visual Basic.NET Programming: From Problem Analysis to Program Design26 Writing User-Defined Procedures User-defined procedures –Procedures that you design and write –Contrast to methods contained in FCL classes –Use to give code structure and organization –Can be Private or Public
27
Visual Basic.NET Programming: From Problem Analysis to Program Design27 Writing User-Defined Procedures (continued) Private procedures –Provide services only to module in which they are defined –Cannot be invoked by code in other objects Public procedures –Designed specifically to be invoked by other objects
28
Visual Basic.NET Programming: From Problem Analysis to Program Design28 Writing Private Procedures From Example 9-4: 13. Private Sub InputFahrenheit() 14. Console.WriteLine("Please enter a Fahrenheit temperature:") 15. fahrenheit = Convert.ToDouble(Console.ReadLine()) 16. End Sub
29
Visual Basic.NET Programming: From Problem Analysis to Program Design29 Writing Private Procedures (continued) Scope: –Determined by where variable is declared –Controls where variable can be accessed Module scope –Variable declared within module –Can be accessed by code in module
30
Visual Basic.NET Programming: From Problem Analysis to Program Design30 Writing Private Procedures (continued) Procedure scope –Variable declared within procedure –Only code within procedure can access variable Block scope –Declared within If, Do, or For statement –Can only be accessed within block
31
Visual Basic.NET Programming: From Problem Analysis to Program Design31 Writing Private Procedures (continued) Use variables with smallest or narrowest scope possible –Minimizes impact that changes in one procedure may have in others Hide internal workings of procedure from outside code Public procedures can be invoked by any object Design public procedures to provide services that are required by multiple objects or applications
32
Visual Basic.NET Programming: From Problem Analysis to Program Design32 Using Optional Parameters May sometimes want to make some arguments optional Use keyword Optional –In parameter declaration –Provide default value –Must be placed at end of parameter list
33
Visual Basic.NET Programming: From Problem Analysis to Program Design33 Example 9-7: Using an Optional Parameter Excerpt: Public Function ComputeShippingCharge(Optional ByVal distance As Integer = 100) As Double
34
Visual Basic.NET Programming: From Problem Analysis to Program Design34 Designing and Writing Overloaded Procedures Procedure’s signature consists of –Name –Parameter list VB.NET identifies procedures by signature –Can have two or more procedures with same name –As long as parameter lists are different
35
Visual Basic.NET Programming: From Problem Analysis to Program Design35 Designing and Writing Overloaded Procedures (continued) Overloading a procedure –Write multiple procedures with same name but with different signatures –Convenient technique to avoid using unique names for procedures –Use Overloads keyword Return data type is not part of procedure’s signature
36
Visual Basic.NET Programming: From Problem Analysis to Program Design36 Example 9-8: Overloading a procedure (Excepts) Public Overloads Function ComputeSalesTax(ByVal amount As Single) As Double Public Overloads Function ComputeSalesTax(ByVal amount As Double) As Double
37
Visual Basic.NET Programming: From Problem Analysis to Program Design37 Programming Example: Electricity Billing Input –Previous and current meter reading Output –Electric bill containing: 1.Kilowatt hours (kwh) consumed 2.Electric charge formatted as currency 3.Sales tax formatted as currency 4.Bill total formatted as currency
38
Visual Basic.NET Programming: From Problem Analysis to Program Design38 Programming Example: Electricity Billing (continued) Problem Analysis and Algorithm Design –Purpose of program: Input previous and current electric meter readings Compute and display total bill –Using sentinel-controlled loop
39
Visual Basic.NET Programming: From Problem Analysis to Program Design39 Programming Example: Electricity Billing (continued) Procedures used: –Main –GetPreviousReading –GetCurrentReading –ComputeElectricityCharge: –DisplayBill
40
Visual Basic.NET Programming: From Problem Analysis to Program Design40 Summary Two types of procedures in Visual Basic.NET: –Sub procedures –Function procedures Arguments are passed into parameters Two categories of user-defined procedures: –Public –Private
41
Visual Basic.NET Programming: From Problem Analysis to Program Design41 Summary (continued) Scope of variable –Represents visibility or accessibility –Determined by where you declare it Create optional argument by adding keyword Optional Procedure’s signature consists –Name –Parameter list
42
Visual Basic.NET Programming: From Problem Analysis to Program Design42 Summary (continued) Overloading procedure: –Write multiple procedures with same name but different signatures
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.