Mark Dixon Page 1 24 – Object Oriented Programming in ASP.

Slides:



Advertisements
Similar presentations
Lilian Blot Announcements Teaching Evaluation Form week 9 practical session Formative Assessment week 10 during usual practical sessions group 1 Friday.
Advertisements

Mark Dixon Page 1 23 – Object Oriented Programming in PhP.
Mark Dixon, SoCCE SOFT 131Page 1 15 – Object Oriented Analysis, Design, and Programming.
Mark Dixon, SoCCE SOFT 131Page 1 22 – Object Oriented Analysis, Design, and Programming.
Chapter 10 THINKING IN OBJECTS 1 Object Oriented programming Instructor: Dr. Essam H. Houssein.
Mark Dixon Page 1 16 – Passing Data between pages: Forms, Sessions, & Query Strings.
Mark Dixon Page 1 05 – Database Design: Sub-forms.
Mark Dixon Page 1 04 – Database Design: Forms. Mark Dixon Page 2 Session Aims & Objectives Aims –To allow easier data entry using forms Objectives, by.
Mark Dixon Page 1 22 – Object Oriented Programming in ASP.
Mark Dixon Page 1 17 – Persistent data storage: relational databases and ADO.
Mark Dixon, SoCCE SOFT 131Page 1 24 – Web applications: Writing data to Databases using ASP.
Mark Dixon, SoCCE SOFT 131Page 1 23 – Modular Design in ASP.
Mark Dixon, SoCCE SOFT 131Page 1 13 – Object Oriented Analysis, Design, and Programming.
Mark Dixon, SoCCE SOFT 131Page 1 07 – Iterative Execution.
Mark Dixon Page 1 21 – Object Oriented Programming in ASP.
Mark Dixon, SoCCE SOFT 131Page 1 22 – Web applications: Writing data to Databases using ASP.
Mark Dixon, SoCCE SOFT 131Page 1 08 – Iterative Execution.
Mark Dixon Page 1 18 – Persistent data storage: relational databases and ADO.
Mark Dixon Page 1 02 – Queries: Query by Example.
Mark Dixon Page 1 20 – Modular Design in ASP. Mark Dixon Page 2 Session Aims & Objectives Aims –Highlight modular design techniques in ASP Objectives,
Mark Dixon Page 1 13 – Object Oriented Programming.
Mark Dixon Page 1 20 – Web applications: Writing data to Databases using ASP.
Mark Dixon, SoCCE SOFT 131Page 1 11 – Arrays of Structures & Modules.
Mark Dixon, SoCCE SOFT 131Page 1 20 – Web applications: Writing data to Databases using ASP.
C++ fundamentals.
Object Oriented Software Development
Mark Dixon Page 1 10 – Iterative Execution. Mark Dixon Page 2 Questions: Variables Write a line of code to declare a variable called h Write a line of.
Mark Dixon 1 20 – Persistent data storage: relational databases and ADO.
Mark Dixon Page 1 19 – Passing Data between pages: Forms, Sessions, & Query Strings.
Object Orientation An Object oriented approach views systems and programs as a collection of interacting objects. An object is a thing in a computer system.
Mark Dixon Page 1 23 – Web applications: Writing data to Databases using PhP.
Mark Dixon 1 22 – Web applications: Writing data to Databases using ASP.Net.
Mark Dixon Page 1 23 – Web applications: Writing data to Databases using ASP.
Microsoft Access Using Visual Basic Routines. Visual Basic Datatypes Boolean Byte Currency Date Double Integer Long Object Single String Variant Hyperlink.
Mark Dixon, SoCCE SOFT 136Page 1 9 – Procedures. Mark Dixon, SoCCE SOFT 136Page 2 Session Aims & Objectives Aims –To introduce the main concepts involved.
Mark Dixon Page 1 21 – Persistent data storage: relational databases and MySQL.
1 Classes and Controls CE-105 Spring 2007 By: Engr. Faisal ur Rehman.
Mark Dixon 1 03 – Passing Data between pages: Forms, Sessions, & Query Strings.
Mark Dixon 1 09 – Java Servlets. Mark Dixon 2 Session Aims & Objectives Aims –To cover a range of web-application design techniques Objectives, by end.
Mark Dixon Page 1 Web-Application Development Workshop.
Mark Dixon Page 1 21 – Web applications: Writing data to Databases using ASP.
Mark Dixon, SoCCE SOFT 131Page 1 23 – Object Associations.
Mark Dixon, SoCCE SOFT 131Page 1 24 – Datatypes and Object Association.
Topic 1 Object Oriented Programming. 1-2 Objectives To review the concepts and terminology of object-oriented programming To discuss some features of.
Mark Dixon 1 19 – Passing Data between pages: Forms, Sessions, & Query Strings.
1 CS105 Discussion 5 – Variables and If Announcements MP 1 due on Monday Midterm 1 on Tuesday If you need a conflict, request it NOW!!
COPYRIGHT 2010: Dr. David Scanlan, CSUS OBJECTIVES: How to write classes How to create an object from a class using the "New" keyword. How to communicate.
Mark Dixon, SoCCE SOFT 131Page 1 23 – Web applications: Databases & ASP.
Mark Dixon SOFT 131Page 1 12 – Object Oriented Analysis, Design, and Programming.
Mark Dixon 1 22 – Object Oriented Programming. Mark Dixon 2 Questions: Databases How many primary keys? How many foreign keys? 3 2.
Mark Dixon Page 1 15 – Structured Programming. Mark Dixon Page 2 Admin: Coursework 3 – Test In class test –9 Feb 2010 –2 Feb 2010: revision (technique)
31/01/ Selection If selection construct.
Mark Dixon, SoCCE SOFT 131Page 1 12 – Databases: Structured Query Language.
CPS120: Introduction to Computer Science Lecture 16 Data Structures, OOP & Advanced Strings.
Mark Dixon, SoCCE SOFT 131Page 1 17 – Procedures.
Mark Dixon 1 15 – Structured Programming. Mark Dixon 2 Admin: Test 2 In class test –11 Feb 2014 –4 Feb 2014: revision (technique) session 50 mins short.
Mark Dixon 1 13 – Parameters. Mark Dixon 2 Question: Arrays How many array variables are in the following code: Dim x Dim y Dim f(4) x = 12 y = 6 f(2)
Mark Dixon, SoCCE SOFT 131Page 1 25 – Soft 131 Examination Revision.
Mark Dixon 1 Soft051 Examination Sample Questions.
Software Design and Development Languages and Environments Computing Science.
Mark Dixon Page 1 09 – Iterative Execution. Mark Dixon Page 2 Questions: Variables Write a line of VBScript code to declare a variable called h Write.
CPS120: Introduction to Computer Science Lecture 16A Object-Oriented Concepts.
CE-105 Spring 2007 By: Engr. Faisal ur Rehman
15 – Structured Programming
12 – Object Oriented Programming
18 – Databases: Structured Query Language
23 – Object Oriented Programming in ASP
17 – Modular Design in ASP.
17 – Persistent data storage: relational databases and ADO
Presentation transcript:

Mark Dixon Page 1 24 – Object Oriented Programming in ASP

Mark Dixon Page 2 Questions: HTML in VB Are these correct (assume variables and fields exist)? s = s + + rs.Fields("Model").value s = s rs.Fields("Length").value h = " " + h + " "  

Mark Dixon Page 3 Questions: SQL in VB Are these correct (assume variables and fields exist)? id = 4 sql = SELECT * FROM Customer sql = sql " WHERE [CustID] = " + id + ";" rs.Open(sql, cs)  

Mark Dixon Page 4 Questions: Writing to Databases Write a line of VB code to add a new record to a recordset called rs. Write a line of VB code to remove the current record from a recordset called rs. Write a line of VB code to put "Hello" into a field called Message in the current record rs.AddNew() rs.Delete() rs.Fields("Message").Value = "Hello"

Mark Dixon Page 5 Session Aims & Objectives Aims –To highlight that the object oriented techniques covered earlier can be used in ASP Objectives, by end of this week’s sessions, you should be able to: –create a class definition in server-side code –create an instance of a class –create a class definition from a class diagram

Mark Dixon Page 6 Object-Oriented Paradigm A program is made up of a number of objects that communicate with each other by passing messages Each object contains –attributes/properties that represent its state, and –operations/methods that represent its behaviour Objects often mirror the real world –Customers –Students –Patients

Mark Dixon Page 7 Classes and Instances Object Classes –general descriptions of types of objects, e.g. student, product, customer, lecturer, and room. Object Instances –specific items of a given class, e.g. each of you could be an instance of the student class Room 214 could be an instance of the room class I could be an instance of the lecturer class Bolt could be an instance of the part class

Mark Dixon Page 8 Object Concepts - Implementation Properties – implemented as –data structures (variables, arrays, and types). Methods – implemented as either –a procedure (to perform some processing), or –a function (to return a value). Object oriented paradigm builds on (rather than replaces) the structured paradigm

Mark Dixon Page 9 Class Diagrams Used to describe structure of object classes: Module Code: string Title: string GetTitle(): string SetTitle(t: string) Count(): integer Class Attributes/Properties Class Operations/Methods Class Name

Mark Dixon Page 10 Class Module Public Code As String Public Title As String Public Function GetTitle() As String Public Sub SetTitle(t As String) Public Function Count() As Integer End Class Implementing Class Diagrams Module Code: String Title: String GetTitle(): string SetTitle(t: string) Count(): integer

Mark Dixon Page 11 Public and Private Control access to properties and methods Class a Public x As Single Private y As Single End Class Dim b As New a b.x = 5 b.y = 10 this works (x is public)  this will fail (y is private)

Mark Dixon Page 12 Benefits of OOP in code Procedures and Functions are part of object –encapsulation Related Data and Operations together Private keyword – restrict access to data Clearer code Less prone to error

Mark Dixon Page 13 Example: Counter (html) Counter

Mark Dixon Page 14 Example: Counter (code) Dim c As Object Sub Page_Load() If Session("c") Is Nothing Then Session("c") = New Counter Else c = Session("c") If Request.Form("btnReset") > "" Then c.Reset() ElseIf Request.Form("btnUp") > "" Then c.Up() ElseIf Request.Form("btnDown") > "" Then c.Down() End If parMsg.innerText = c.GetCount() End If End Sub Class Counter Private mCount As Long Public Function GetCount() As Long GetCount = mCount End Function Public Sub Reset() mCount = 0 End Sub Public Sub Up() mCount = mCount + 1 End Sub Public Sub Down() mCount = mCount - 1 End Sub End Class Counter.vb

Mark Dixon Page 15 Questions: OOP How many –classes –properties –methods –functions –procedures Class Counter Private mCount As Long Public Function GetCount() As Long GetCount = mCount End Function Public Sub Reset() mCount = 0 End Sub Public Sub Up() mCount = mCount + 1 End Sub Public Sub Down() mCount = mCount - 1 End Sub End Class

Mark Dixon Page 16 Tutorial Exercise: Counter Task 1: Get the Counter example from the lecture working. Task 2: Modify your code – so that the value cannot go below 0 or above 10.