Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 9: Writing Procedures Visual Basic.NET Programming: From Problem Analysis to Program Design.

Similar presentations


Presentation on theme: "Chapter 9: Writing Procedures Visual Basic.NET Programming: From Problem Analysis to Program Design."— Presentation transcript:

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


Download ppt "Chapter 9: Writing Procedures Visual Basic.NET Programming: From Problem Analysis to Program Design."

Similar presentations


Ads by Google