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

Lượt xem: 48,067Lượt tải: 5Số trang: 15

Mô tả tài liệu

Tham khảo tài liệu 'lập trình asp.net_.net-based languages', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Tóm tắt nội dung

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 MSILJIT 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 (5) End Class End Namespace component.d ll sngShipping = _ x.ShippingCost(sngPrice) CompanyA.Shipping x = new CompanyA.Shipping(); namespace CompanyA { class Shipping { public void ShippingCost (5) { } } } 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