Tải bản đầy đủ (.pdf) (15 trang)

Lập trình ASP.NET_.NET-Based Languages ppsx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (386.76 KB, 15 trang )

5/11/2009
1
11
Môn học: Lập trình ASP.NET
.NET-Based Languages
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM

Nội dung
1. Tổng quan về các .NET-Based Languages
2. So sánh các .NET-Based Languages
3. Web Form trong ASP.NET
4. Tạo Component sử dụng Visual Studio .NET
2
5/11/2009
2
1. Tổng quan về các .NET- Based Languages
 Hỗ trợ đa ngôn ngữ
 The Common Language Runtime - CLR
 Các thành phần trong CLR
 Runtime Compilation and Execution
 Khái niệm Namespaces
 Sử dụng Namespaces
3
Hỗ trợ đa ngôn ngữ
 Kiến trúc .NET Framework mang đến tính năng hỗ
trợ đa ngôn ngữ lập trình
 Hiện tại hỗ trợ khoảng 20 NNLT
 Microsoft cung cấp các ngôn ngữ: Visual Basic .NET,
C#, Visual J# .NET, and JScript .NET


 Lợi ích của hỗ trợ đa ngôn ngữ:
 Code modules có thể được tái sử dụng (resuable)
 Lựa chọn ngôn ngữ thích hợp tương ứng với một tác
vụ cụ thể (ngôn ngữ phát triển web, ngôn ngữ phát
triển ứng dụng)
 Hiệu năng tương đương cho tất cả ngôn ngữ
4
5/11/2009
3
The Common Language Runtime
5
CIL: Common Intermediate Language
CLR: Common Language Runtime
The Common Language Runtime
 Quá trình Runtime chung cho tất cả các NNLT
 Quản lý đa tiểu trình, quản lý bộ nhớ
 Garbage collection
 Đảm bảo code security
 Xây dưng giải pháp DLL version
 Nhiều version của một DLL file có thể chạy đồng thời
 Ứng dụng có thể lựa chọn version của DLL file để
chạy chương trình
6
5/11/2009
4
7
Các thành phần trong CLR
.NET Framework Class Library Support.NET Framework Class Library Support
Thread SupportThread Support COM MarshalerCOM Marshaler
Type CheckerType Checker Exception ManagerException Manager

MSIL to NativeMSIL to Native
CompilersCompilers
CodeCode
ManagerManager
GarbageGarbage
CollectorCollector
Security EngineSecurity Engine Debug EngineDebug Engine
Class LoaderClass Loader
Runtime Compilation and Execution
Native
code
C# code
Visual Basic .NET code
Which language?
Visual Basic
.NET compiler
C# compiler
MSIL
JIT
compiler
default.aspx
Runtime
8
5/11/2009
5
Khái niệm Namespaces
 Gom nhóm các relation Classes
 Gom theo mối liên quan logical, không theo physical
 Thể hiện kiến trúc phân tầng
 Giảm vấn đề conflict (xung đột) trong vấn đề đặt

tên class
 Imports keyword in Visual Basic .NET code
 Using keyword in C# code
9
Imports System.Data.SqlClient
using System.Data.SqlClient;
Sử dụng Namespaces
10
 Implicit object declaration – khai báo ngầm định
 Explicit object declaration – khai báo tường minh
Dim listBox1 As New System.Web.UI.WebControls.ListBox()
listBox1.Items.Add("First Item")
Imports System.Web.UI.WebControls

Dim listBox1 As New ListBox()
listBox1.Items.Add("First Item")
using System.Web.UI.WebControls;

ListBox listBox1 = new ListBox();
listBox1.Items.Add("First Item");
System.Web.UI.WebControls.ListBox listBox1 =
new System.Web.UI.WebControls.ListBox();
listBox1.Items.Add("First Item");
5/11/2009
6
2. So sánh các .NET- Based Languages
 Visual Basic .NET
 C#
 …
11

Visual Basic .NET
 Visual Basic .NET là version mới nhất của NN
Visual Basic
 Là ngôn ngữ hướng đối tượng thực sự
12
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer = 0
Dim x As Double = TextBox1.Text
For i = 0 To 4
x *= 2
Label1.Text = Label1.Text & x & ","
Next
End Sub
5/11/2009
7
C#
 C# là một ngôn ngữ LT mới
 Tương tự Java, Visual C++ và Pascal
13
private void Button1_Click(object sender,
System.EventArgs e)
{
int i = 0;
double x = Convert.ToDouble(TextBox1.Text);
for (i=0; i<=4; i++)
{
x *= 2;
Label1.Text = Label1.Text + x + ",";
}

}
3. Web Forms
 Thành phần chính trong các ASP.NET Application là
các Web pages
 Là file text với extension là .aspx, gọi là Web Forms
 Bao gồm:
 Thành phần thể hiện presentation/ markup (HTML)
 Thành phần lập trình (các đoạn code C#,VB.NET…), gọi
là programming logic.
14
5/11/2009
8
Programming logic
 Th/p programming logic có thể có 2 vị trí xuất hiện:
 Trong cùng các file web page
 Trong cùng file HelloWorld.aspx
 Code declaration block
 Trong một file class riêng
 Code-behind file
 Chứa hai file:
 HelloWorld.aspx  Web Form
 HelloWorld.aspx.cs  Code-behind file
15
16
Code declaration block
Code Declaration Block
Page Directive
Web Form
ASP.NET Control
5/11/2009

9
Page directive
 Page Directive cung cấp các đặc tả ban đầu của các
Web pages cho môi trường ASP.NET
 Xác định ngôn ngữ lập trình được sử dụng là C#
FIT - HCMUS
17
Thành phần <script>
 Sử dụng với thuộc tính runat = “server”
 Xác định với môi trường ASP.NET là đoạn code ở
trong sẽ được thực thi ở server
FIT - HCMUS
18
5/11/2009
10
Thành phần <form>
 Tất cả các trang ASP.NET web page phải chứa thành
phần form với thuộc tính runat = ‘server’
 Nội dung của web page được đặt trong thành phần
form này
19
ASP.NET control
 <asp: Label>
 ID: ‘labDate’
 runat = ‘server’  xác định server control
 Tương đương với đoạn code
 Label labDate = new Label();
FIT - HCMUS
20
5/11/2009

11
Programming logic
 Th/p programming logic có thể có 2 vị trí xuất hiện:
 Trong cùng các file web page
 Trong cùng file HelloWorld.aspx
 Code declaration block
 Trong một file class riêng
 Code-behind file
 Chứa hai file:
 HelloWorld.aspx  Web Form
 HelloWorld.aspx.cs  Code-behind file
21
Code- behind file
22
HelloWorld.aspx HelloWorld.aspx.cs
5/11/2009
12
Code- behind file
 Tách biệt giữa thành phần programming logic và
thành phần giao diện
23
4. Tạo Component sử dụng VS.NET
 Khái niệm Classes và Components
 Sử dụng Component trong ASP.NET Web Forms
 Demo: Tạo Class sử dụng VS.NET
24
5/11/2009
13
Khái niệm Classes và Components
 Classes là tập hợp các đoạn code không có giao

diện (interfaces)
 Components là các compiled classes
 Components được complied thành các DLL files
 Components được sử dụng với mục đích share code
giữa các ứng dụng
25
Component
Web
application
Windows
application
Windows
application
Web
application
Tạo Classes
26
Public Class Shipping
Function ShippingCost _
(ByVal sngPrice As Single) As Single
'…
Return (sngShipping)
End Function
End Class
}
public class Shipping
{
public Single ShippingCost (Single sngPrice)
{
//…

return sngShipping;
}
}
5/11/2009
14
Sử dụng Components
27
 Add a reference to the DLL
 Khởi tạo class object:
 Sử dụng object:
sngShipping =
x.ShippingCost(sngPrice);
Dim x As New CompanyA.Shipping
Namespace CompanyA
Class Shipping
Function
ShippingCost ()
End Class
End Namespace
component.d
ll
sngShipping = _
x.ShippingCost(sngPrice)
CompanyA.Shipping x =
new CompanyA.Shipping();
namespace CompanyA
{
class Shipping
{
public void ShippingCost () { }

}
}
component.d
ll
Demo: Tạo Class sử dụng VS.NET
28
5/11/2009
15
3. Lab Web Application
29
Medical
Medical.aspx
Benefits
Home Page
Default.aspx
Life Insurance
Life.aspx
Retirement
Retirement.aspx
Dentists
Dental.aspx
Dentists
Doctors
Doctors.aspx
Doctors
Logon Page
Login.aspx
Registration
Register.aspx
Coho

Winery
Prospectus
Prospectus.aspx
XML Web
Service
dentalService1.asmx
Page Header
Header.ascx
ASPState
tempdb
Lab Web
Application
User Control
namedate.ascx
Class1.vb or Class1.cs
Menu
Component
Class1.vb or Class1.cs
XML
Files
Web.
config

×