Trường Đại Học Lạc Hồng 2009 - 2010
LẬP TRÌNH
WEB ASP.NET
Ts. Vũ Đức Lung
Ks. Phan Hữu Tiếp
Chương 1: Giới Thiệu
1
LHU
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Nội dung giới thiệu
Phân biệt Web tĩnh và Web động
Mô hình Client- side, Server-side
Công nghệ lập trình web
Giới thiệu .NET
Mục đích .NET
ASP & ASP.NET
Cơ bản về ASP.NET
2
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Phân biệt web tĩnh – web động
Định
nghĩa
Ưu
điểm
Website tĩnh
Website động
website chỉ bao gồm các
trang web tĩnh và khơng có
cơ sở dữ liệu đi kèm nên
thường được xây dựng
bằng các ngôn ngữ HTML,
DHTML.
là thuật ngữ được dùng để chỉ
những website có cơ sở dữ liệu và
được hỗ trợ bởi các phần mềm
phát triển web.
Thông tin hiển thị được gọi ra từ
một cơ sở dữ liệu khi người dùng
truy vấn tới một trang web
Thiết kế đồ hoạ đẹp Dùng nhiều ngôn ngữ lập trình
Tốc độ truy cập nhanh khác nhau và nhiều hệ cơ sở dữ
liệu khác nhau
Chi phí đầu tư thấp
Thông tin luôn mới, có tính tương
tác
cao,
dễ
hiệu
chỉnh
3
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Phân biệt web tĩnh – web đợng
Website tĩnh
Website đợng
Khó khăn trong việc thay đổi cập nhật
Khút Thơng tin khơng có tính linh hoạt, Chi phí đầu tư cao
điểm không thân thiện với người dùng Dễ bị tấn cơng
Khó tích hợp, nâng cấp, mở rộng
4
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mô hình Client- Side
Lập trình Client-side
Ngôn ngữ được sử dụng để lập trình xử lý ở phía client gọi là
Client – side script, thơng dụng nhất là Java Script. Trong đó,
đoạn code được nhúng vào trang HTML hay đặt trong một tập
tin riêng biệt và tập tin này sẽ được khai báo trong trang HTML.
Quá trình yêu cầu và trả về cho máy client của một trang web
sử dụng kỹ thuật lập trình client – side
5
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mô hình Client- Side
Đặc điểm khi xử lý tại client:
Nhanh, không mất nhiều thời gian chuyển đến Server rồi quay lại
client do dữ liệu cần dùng để xử lý có tại client.
Chỉ có thể lập trình thực hiện những xử lý đơn giản và độc lập
Không cần phải cài đặt phần mềm tại Web Server, tuy nhiên
trình duyệt phải hỗ trỡ ngôn ngữ script mà trang HTML đang sử
dụng
Rất hữu ích cho DHTML
6
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mô hình Client- Side
Lập trình Server – side :
Ngôn ngữ được sử dụng để lập trình xử lý ở phía server gọi là
Server – side cript. Chúng ta có 01 số ngôn ngữ lập trình phía
server như: ASP, ASP.NET, PHP…
Kỹ thuật lập trình phía server khác so với client, đó là các đoạn
mã lệnh (source code) sẽ được biên dịch và thi hành ngay tại
Web Server. Sau đó trả về client dưới dạng HTML, JavaScript
hay CSS
Kỹ thuật này thường được áp dụng cho các trang web đợng và
có sự tương tác với cơ sở dữ liệu
7
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mô hình Client- Side
Đặc điểm khi xử lý tại Server :
Chậm, do dữ liệu phải chuyển về server và chờ nhận kết quả trả
về rồi thể hiện trên client
Thực hiện những xử lý phức tạp, cần truy cập cơ sở dữ liệu và
xử lý tập tin
Trang web linh động, phục vụ đa yêu cầu của người dùng.
Phải cài đặt phần mềm tại web server
Tóm lại :
Trong quá trình triển khai một ứng dụng web, để website của
bạn thật sự có hiệu quả, bạn cần phân tích các xử lý, nhận biết
bản chất của mỗi xử lý là nên thực hiện ở client hay server để từ
đó xây dựng phối hợp các xử lý cho phù hợp
8
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Tổng quan công nghệ lập Trình web
HTML ( HyperText Markup Language)
Trang web HTML là 01 tập tin văn bản được viết bằng ngôn
ngữ HTML, ngôn ngữ này còn được biết đến với tên gọi: ngôn
ngữ đánh dấu văn bản
Ngôn ngữ HTML sử dụng các ký hiệu quy định sẵn (được gọi là
Tag) để trình bày nội dung văn bản
Nội dung + Định dạng = Kết quả hiển thị
9
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Tổng quan công nghệ lập Trình web
Mô hình ứng dụng 02 lớp
Đây là mô hình đơn giản, khá phổ biến của 01 ứng dụng phân tán
Trong mô hình này, việc xử lý dữ liệu được thực hiện trên Database
Server, việc nhận và hiển thị dữ liệu được thực hiện ở client
Ưu điểm: Dữ liệu tập trung do đó đảm bảo dữ liệu được nhất
quán. Dữ liệu được chia sẻ cho nhiều người dùng.
Khuyết điểm: Cách xử lý tra cứu và truy cập dữ liệu được thực
hiện ở Database Server, việc nhận kết quả và hiển thị phải được
thực hiện ở Client. Do đó khó khăn trong việc bảo trì và nâng
cấp. Khối lượng, dữ liệu truyền trên mạng lớn do đó chiếm dụng
đường truyền thêm gánh nặng cho database server
10
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Tổng quan công nghệ lập Trình web
Mô hình ứng dụng 03 lớp:
Mô hình hai lớp phần nào đáp ứng được yêu cầu khắt khe của
01 ứng dụng phân tán, tuy nhiên khi khối lượng dữ liệu lớn, ứng
dụng đòi hỏi nhiều xử lý phức tạp, số người dùng tăng, mô hình
02 lớp không thể đáp ứng được
Mô hình 03 lớp sử dụng thêm Apllication Server giữ nhiệm vụ
tương tác giữa Client và Server, giảm bớt các xử lý trên
Database Server, tập trung các xử lý nhận và hiển thị dữ liệu tại
Application Server
Ưu điểm: Hỗ trợ người dùng. Giảm bớt xử lý cho client, không yêu
cầu máy Client có cấu hình mạnh. Xử lý nhận và hiển thị dữ liệu tập
trung tại Application Server -> dễ dàng quản lý, bảo trì và nâng cấp.
Xử lý truy cập dữ liệu tập trung tại Database Server
Khuyết điểm: Phải sử dụng 01 Application Server
11
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
.NET là gì?
A new software platform for the desktop and the Web
Nguồn gốc của .NET
Hệ điều hành: tập hợp các COM (Component Object
Model) tương tác với nhau.
Chương trình=COM
COM+
1998 IIS ver.4 => Project: Khung dịch vụ web thế hệ kế
tiếp (Next Generation Web Service Framework - NGWSF)
11/2000 phát hành Beta 1 của .NET
Cuối 2001 chính thức cho ra đời phiên bản đầu tiên
12
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
.NET Platform là gì ?
.NET Platform bao gồm .NET Framework và những công cụ
được dùng để xây dựng, phát triển ứng dụng và dịch vụ
ASP.NET
Những sản phẩm công nghệ .NET của Microsoft bao gồm:
MSN.NET, OFFICE.NET, VISUAL STUDIO.NET, WINDOWS
SERVER 2003
VISUAL STUDIO.NET là bộ phần mềm được dùng để xây dựng
và phát triển các ứng dụng bao gồm các ngôn ngữ lập trình:
C++.NET, Visual Basic.NET, ASP.NET, C# và j#.
Tất cả các ngôn ngữ này đều được xây dựng trên nền .NET
Framework, do đó cú pháp cơ bản của những ngôn ngữ này
tương tự nhau.
13
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
Các bộ phận chính của Microsoft NET Framework
14
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
Các phần chính của Microsoft.NET Framework
Framework 1.0,1.1, 2.0, 3.0, 3.5, 4.0,..
Integrated Development Environment (IDE)
Kiến trúc .NET có 3 tầng:
Common Language Runtime (CLR)
Bợ thư viện các lớp cơ sở (.NET Framework Base Classes):
String, Integer, Exception,…
ASP.NET và Windows Forms
15
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
NET application được chia ra làm hai loại:
Cho Internet gọi là ASP.NET, gồm có Web Forms và Web
Services
Cho desktop gọi là Windows Forms.Windows Forms giống như
Forms của VB6. Nó hổ trợ Unicode hoàn toàn, rất tiện cho chữ
Việt và thật sự Object Oriented
Note:
Web Forms có những Server Controls làm việc giống như các
Controls trong Windows Forms, nhất là có thể dùng codes để
xử lý Events y hệt như của Windows Forms.
16
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu .NET
.NET Framework là gì ?
.NET Framework là nền tảng cho Microsoft.NET Platform
.NET Framework là môi trường cho việc xây dựng, triển khai và
vận hành các ứng dụng Web cũng như Web Service
.NET Framework giúp đơn giản hóa quá trình phát triển cũng
như tích hợp sản phẩm
.NET Framework không phụ thuộc vào ngôn ngữ. Các ngôn ngữ
đang được hỗ trợ: C++, C#, VB.NET, J#
.NET Framework chứa Common Language Runtime (CLR) và
các lớp thư viện cung cấp các dịch vụ cơ sở để xây dựng các
ứng dụng
17
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mục đích của .NET
Mô hình đồng nhất cho lập trình Form(Desktop) và Web
18
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mục đích của .NET
Trước đây: rất hạn chế
.NET: binary compatibility between more than 20 languges
(C#, C++, VB.NET, Java, Eiffel, Fortran, Cobol, ML, Haskell,
Pascal, Oberon, Perl, Python, ...)
19
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Mục đích của .NET
Tương tác giữa các ngôn ngữ lập trình:
20
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Lợi ích dùng CIL
21
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Lợi ích của việc sử dụng ASP
Công nghệ Server-side scripting
Tự động biên dịch
Cho phép tạo các ứng dụng web đơn giản nhanh chóng và dễ
dàng
Tạo trang web có tích hợp nội dung động
Sử dụng hiệu quả các đối tượng COM: ADO (ActiveX Data
Object), xử lý dữ liệu, FSO (File System Object), làm việc với
hệ thống tập tin,…
Hỗ trợ nhiều ngôn ngữ: JavaScript, VBScript
22
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Những bất lợi khi sử dụng ASP
Chỉ hỗ trợ 2 loại ngôn ngữ : VBScript và JavaScript
Thông dịch mã lệnh ASP
Pha trộn code, HTML và text
Tương thích trình duyệt
Không hỗ trợ cache
Cơ chế debug kém
Tái sử dụng code kém
23
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Giới thiệu ASP.NET
ASP.NET là mợt cơng nghệ có tính cách mạng dùng để phát
triển các ứng dụng về mạng hiện nay cũng như trong tương
lai (ASP.NET is a revolutionary technology for developing web
applications)
ASP.NET là kỹ thuật lập trình và phát triển ứng dụng web ở
phía server (Server – side) dựa trên nền tảng của
Microsoft.NET Framework
Một công nghệ server-side mới, mạnh để tạo các trang web
động (A new and powerful server-side technology for creating
dynamic web pages)
ASP.NET sử dụng kỹ thuật lập trình ở phía server, mã lệnh ở
phía server sẽ được biên dịch và thi hành tại Web server.
Tất cả các xử lý lệnh ASP.NET đều được thực hiện tại server
do đó gọi là kỹ thuật lập trình ở phía server
24
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Phan Hữu Tiếp
Các điểm nổi bật của ASP.NET
Hỗ trợ đa ngôn ngữ : >20 C#, C++, VB.NET, Java, Eiffel,
Fortran, Cobol, ML, Haskell, Pascal, Oberon, Perl, Python, ...
Biên dịch các trang trước, giúp làm tăng tốc độ thực hiện.
Thay vì phải đọc và thông dịch mỗi khi trang web được yêu
cầu, ASP.NET biên dịch những trang web động thành tập tin
DLL mà Server có thể thi hành nhanh chóng và hiệu quả.
ASP.NET hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng
của .NET Framework, làm việc với XML, Web Service, truy
cập cơ sở dữ liệu qua ADO.NET.
ASPX và ASP có thể cùng hoạt đợng trong mợt ứng dụng
ASP.NET sử dụng phong cách lập trình mới: code behide.
Tách code riêng, giao diện riêng => Dễ quản lý, dễ đọc và bảo
trì
Kiến trúc lập trình giống ứng dụng trên Windows
25
http:// lhu.edu.vn