Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
PHẦN I. TÌM HIỂU NGÔN NGỮ
CHƯƠNG 1 : TÌM HIỂU NGÔN NGỮ VISUAL BASIC.NET
I. TỔNG QUAN VỀ VISUAL BASIC.NET :
1. Giới thiệu VISUAL BASIC.NET :
Sự phát triển của công nghệ thông tin chủ yếu dựa trên các phát triển về
công nghệ phần cứng và phân mềm . Trong những năm gần đây , các linh kiện
máy tính ngày càng mạnh , tốc độ xử lý ngày càng cao , giá thành ngày càng
rẽ. Công nghệ phần mềm đáp ứng các phát triển đó một cách tích cực , các
trình ứng dụng cung cấp nhiều tính năng mới , đặc biệt là tính tin cậy , tính dễ
sử dụng và năng lực xử lý cao .
Sự phát triển phần mềm dựa trên nền tảng ngôn ngữ lập trình . Lập trình
hướng đối tượng là một trong những hướng phát triển mới , bao quát các trình
ứng dụng thực tiển trên máy tính và trên mạng . Nhiều khái niệm , kỹ thuật và
tính năng mới xuất hiện trong ngôn ngữ lập trình hướng đối tượng .
Một trong những ngôn ngữ lập trình hướng đối tượng hiện nay là Visual
Basic .NET của Microsoft . Đặc điểm nổi bậc của ngôn ngữ lập trình này là
khả năng xây dựng các đối tượng có tính tương thích cao . Đối tượng được xây
dựng trong VB.NET có thể được dùng một cách dễ dàng trong mọi ngôn ngữ
hướng đối tượng khác và ngược lại . Đối tượng không chỉ được dùng cho trình
ứng dụng tại chổ mà còn có thể được dùng trên mạng một cách rộng rãi . Các
đối tượng được xây dựng dựa trên các đơn vò mã tiêu chuẩn , được viết sẳn .
Các đơn vò mã đó sắp xếp theo module . Với các module bạn có thể lắp ghép
và chỉnh sửa để có trình ứng dụng theo các yêu cầu cụ thể . Bạn có thể lắp ráp
máy tính cá nhân từ các linh kiện rời và với OOP bạn có thể viết trình ứng
dụng từ các module rời .
Với phiên bản của Visual Basic.NET , bạn có thể sử dụng các hàm , thuộc
tính và các công cụ khi tạo một ứng dụng , ngay cả khi bạn đã sử dụng Visual
Basic 5 hoặc Visual Basic 6 thì phiên bản Visual Basic mới cũng có khá nhiều
khác biệt nhỏ . Tuy nhiên , Microsoft đã tăng thêm cho bạn nhiều điều khiển ,
thêm vào một vài lệnh mới và giới thiệu mô hình thiết kế mới tạo các chương
cùng việc cài đặt và thực thi không cần phải đăng ký với Registry gì cả .
Visual Basic.NET tích hợp đầy đủ với những ngôn ngữ Microsoft Visual
Studio .NET . Bạn không chỉ có thể phát triển các thành phần của ứng dụng
bằng các ngôn ngữ lập trình khác , các lớp của bạn cũng có thể thừa hưởng từ
các lớp được viết bằng các ngôn ngữ khác sử dụng tính năng kế thừa đa ngôn
ngữ . Với trình bắt lỗi , bạn có thể bắt lỗi nhiều ứng dụng với các ngôn ngữ
khác nhau cho chương trình đang thi hành cục bộ hoặc từ các máy truy cập từ
xa . Bất cứ ngôn ngữ nào bạn sử dụng , cơ cấu Microsoft .NET cũng cung cấp
một tập hợp API cho việc sử dụng trên Windows và cả trên Internet .
2.1Những thay đổi với bản thân ngôn ngữ Visual Basic :
Những phiên bản trước đây của Visual Basic hướng đến những ứng dụng
Client chuẩn , trọng tâm của Visual Basic.NET với việc tạo các ứng dụng dòch
vụ Web cũng tốt như các ứng dụng Client chuẩn trên Windows . Việc này được
thực hiện bởi các chương trình quản lý mã chung cho cơ cấu .NET Framework
GVHD : Nguyễn Chánh Thành Trang 2
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
và bộ diễn dòch ngôn ngữ thông dụng – Common Language Runtime . Đương
nhiên , nó yêu cầu phải có những thay đổi lớn đối với ngôn ngữ Visual Basic.
Với những thay đổi chính đòi hỏi phải tạo ra một bộ khung .NET Framework
và thư viện Runtime mới , Microsoft nghó rằng đây cũng chính là cơ hội tốt để
xóa sạch những khía cạnh lỗi thời của ngôn ngữ Visual Basic . Microsoft có ý
đònh thay đổi để thực hiện những điều sau đây :
+ Đơn giản hóa ngôn ngữ và làm cho chúng phù hợp hơn .
+ Thêm vào những tính năng mới theo yêu cầu .
+ Tạo ra những chương trình nguồn dễ đọc và dễ bảo vệ hơn .
+ Phát triển những tiến trình xử lý lỗi .
+ Tạo các ứng dụng dễ bắt và gỡ lỗi .
2.2Giao diện Windows Forms mới :
Windows Forms là một phần của cơ cấu .NET Framework với nhiều kỹ
thuật mới bao gồm một cơ cấu ứng dụng thường , quản lý môi trường thực thi ,
dụng để xây dựng một ứng dụng trên Windows và chúng được sử dụng để tạo
một ứng dụng trên Web . Với Visual Basic .NET , bạn có thể nhanh chóng phát
triển ứng dụng để chạy được trên Internet bằng những kỹ thuật tương tự mà
bạn đã được học ở Visual Basic . Để tạo một ứng dụng trên Web , bạn thêm
một Web Form vào dự án , kéo thả các điều khiển (control) cần thiết vào
trang . Dấu mã chương trình tách biệt khỏi mã HTML.
Các phiên bản trước đây của công cụ Visual Studio đã cố gắng đơn giản hóa
công việc phát triển trên Web . Ví dụ , Visual Basic đã cung cấp hỗ trợ cho
DHTML Client và WebClasses ; Visual InterDev phục vụ cho phát triển ASP
(Active Server Pages ). Web Form đưa ra những giải pháp làm việc hữu dụng
hơn để xây dựng ứng dụng Web với Visual Basic .NET . Web Form mô tả sự
biến đổi của ASP và Web Classes , cung cấp cách tốt nhất cho cả hai mô hình .
2.6Chuyển biến từ Visual Basic 6 :
Tên thì gần gũi với Visual Basic 6.0 (VB6.0), nhưng Visual Basic.NET
(VB.NET) lại là phiên bản có nhiều thiết kế mới về kiểu dữ liệu , phương thức
truy cập dữ liệu , tính hướng đối tượng …
Tại sao lại phải thay đổi thiết kế của ngôn ngữ Visual Basic – một trong
những ngôn ngữ được sử dụng rộng rãi nhất hiện nay ? VB 6.0 được hàng triệu
thảo chương viên trên khắp thế giới sử dụng nhờ cú pháp dễ hiểu và khả năng
phát triển nhanh . VB 6.0 và các công cụ khác của Microsoft tích hợp trong
phiên bản đầu tiên của bộ Visual Studio đã được thiết kế không tính đến Web .
Do chậm chân trong lónh vực công nghệ Internet và ứng dụng phân tán ,
Microsoft đã phải bổ sung”chắp vá” cho bộ công cụ Visual Studio để hổ trợ
môi trường phát triển mới . Khả năng phát triển ứng dụng Web của các công cụ
Visual Studio rất hạn chế , phải dùng nhiều kỹ thuật khác nhau để tạo ứng
dụng phân tán , không tối ưu cho môi trường Web.
VB.NET giải quyết tất cả các vấn đề trên . Bộ công cụ này đã được thiết kế
lại từ đầu để hổ trợ phát triển dễ dàng ứng dụng Web và Client/Server trong
môi trường phân tán và không kết nối . Khác biệt giữa VB 6.0 và VB.NET có
thể phân thành hai nhóm ( như bảng 1 ) :
khai khó khăn vì phải phân
phối không chỉ tập tin
.EXE mà cả các thư viện
DLL.
Tạo tập tin .EXE có thể chạy không
cần đến các thư viện DLL hỗ trợ .
Phân luồng Không thể tận dụng hết
các tính năng phân luồng
có trong .COM
Cho phép phân luồng linh động ,
tăng tính khả mở cho ứng dụng .
2.6.1 Thay đổi về kỹ thuật :
Thay đổi kỹ thuật trong VB.NET là yếu tố dẫn đến thay đổi cú pháp và
cách thức lập trình ; xuất phát từ mục tiêu kỹ thuật mà Microsoft hướng đến
trong phiên bản của VB . Để VB thống nhất về mặt kỹ thuật với C++ và C# ,
Microsoft đã phát triển CLR (Common Language Runtime) thành nền tảng
chung . VB không còn là công cụ sinh mã giả nữa , CLR làm cho nó trở thành
ngôn ngữ hướng đối tượng thực sự và đặt nó ngang cấp với C++ và C# . Về mặt
kỹ thuật , một ứng dụng được tạo bởi VB.NET không có gì khác biệt so với ứng
dụng tạo bằng C++ và C#.
2.6.2 Thay đổi về cú pháp :
Tuy những thay đổi về mặt kỹ thuật trong VB.NET cực kỳ quan trọng ( và
rất được hoan nghênh ) nhưng lại không dễ nhận biết như những thay đổi trong
cú pháp và cách thức lập trình . Chúng ảnh hưởng nhiều đến khả năng chuyển
GVHD : Nguyễn Chánh Thành Trang 5
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
đổi ứng dụng VB 6.0 sang VB.NET . Trong bộ công cụ Studio.NET , Microsoft
có cung cấp tiện ích Upgrade Winzard để chuyển đổi ứng dụng VB 6.0 sang
VB.NET.
2.6.3 Thay đổi về kiểu dữ liệu :
nâng cấp vì các đối tượng và các thuộc tính ngôn ngữ hoặc không có sự tương
đương trong Visual Basic .NET . Sau khi nâng cấp , có thể bạn cũng muốn hiệu
chỉnh ứng dụng của mình để khai thác các mặt thuận lợi của một số tính năng
GVHD : Nguyễn Chánh Thành Trang 6
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
mới hơn trong Visual Basic .NET . Upgrade Wizard bắt đầu khi bạn mở một
ứng dụng VB 6 . Nó sẽ hỏi bạn về kiểu của dự án và tập hợp các chọn lựa cho
ứng dụng .
Bước tiếp theo là chỉ ra nơi bạn muốn lưu trữ dự án .NET mới . Nên nhớ rằng
dự án nguyên bản của bạn sẽ không được hiệu chỉnh . Mỗi lần hoàn thành , dự
án mới sẽ được mở lại trong cửa sổ Solution Explorer . Bạn có thể cho hiển thò
Upgrade Report để xem những gì hữu dụng mà bạn cần trong quá trình nâng
cấp dự án .
1. Làm việc với các bộ xử lý lỗi :
Không có gì tốt đẹp mãi mãi , chương trình của bạn sẽ đến lúc phát sinh lỗi
chẳng hạn chương trình bò treo , ỗ đóa sẽ ngưng hoạt động các tập tin sẽ bò xóa
… Những vấn đề như thế chính là lỗi khi chạy chương trình . Lỗi trong lúc chạy
chương trình được chia làm hai loại : một là những lỗi được nhận dạng và sửa
ngay trước khi ứng dụng được đưa đến người sử dụng và một là những lỗi phải
được xử lý trong khi chương trình đang chạy .
3.1Tìm hiểu các kiểu lỗi :
3.1.1 Tổng quan về lỗi :
Lỗi là các vấn đề về lập trình xảy ra trong khi thiết kế , tạo và kiểm tra qua
từng giai đoạn phát triển ứng dụng . Có bốn kiểu lỗi khác nhau :
a. Lỗi cú pháp :
Lỗi cú pháp được giải quyết trong trình soạn thảo (Code Editor) . Nếu đoạn
mã của bạn có một dòng không đúng , Code Editor sẽ báo cho bạn trước khi
bạn tiếp tục và sau đó thậm chí sẽ hiển thò cú pháp của câu lệnh mà bạn đang
sử dụng với các thuộc tính , phương thức hoặc sự kiện giúp bạn có thể sử dụng
trên dòng đó . Điều này cho phép bạn tập trung nhiều vào tính logic của ứng
75 Path/File access error
76 Path not found
+ Lỗi vật lý : Nhóm lỗi thông thường này được gây ra bởi môi trường vật lý
hoặc phần cứng của máy tính . Người dùng có thể hoặc không thể sửa những
lỗi này một cách nhanh chóng .
+ Lỗi đoạn mã : Người sử dụng không thể sửa lỗi của đoạn mã . Cách tốt
nhất để giải quyết những lỗi này là tạo một thông báo cho người dùng và thoát
khỏi chương trình . Sau khi bạn có thông tin này bạn phải tìm ra vấn đề trong
đoạn mã ứng dụng , sửa nó , biên dòch lại và sau đó thực thi lại ứng dụng .
+ Lỗi CSDL : Lỗi này xảy ra khi quan hệ đến dữ liệu , bao gồm những lỗi
có quan hệ đến kiểu dữ liệu hoặc kích thước file : sự hạn chế truy cập bảng dữ
liệu, nhân bản hoặc không cho phép sửa dữ liệu được thêm vào CSDL . Những
lỗi liên quan đến SQL hoặc một mẩu tin trắng mà đúng ra là không được rỗng .
3.1.2 Tiến trình xử lý lỗi :
Khi bạn bắt đầu nghó về việc tạo một chương trình xử lý lỗi cho ứng dụng
của mình , hãy hiểu rằng các điều khiển lỗi trong VB không dễ hiểu như trong
phiên bản cũ , được viết bởi nhiều ngôn ngữ như COBOL , BASIC . Điều đó
đúng so với một số nguyên nhân sau :
+ Visual Basic là mô hình hướng sự kiện , nghóa là mỗi sự kiện xảy ra sẽ triệu
gọi một tác vụ thực thi nào đó .
GVHD : Nguyễn Chánh Thành Trang 8
Mã lỗi Thông báo lỗi
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
+ Visual Basic sử dụng ngăn xếp để theo dõi chương trình đang được xử lý và
để tách những biến cục bộ trong chương trình . Khi ứng dụng của bạn có một
chương trình con , nó có thể làm mất giá trò của biến cục bộ . Điều này sẽ làm
cho quá trình thực thi rất khó tiếp tục lại sau khi lỗi được giải quyết xong.
+ Tất cả các lỗi đều là cục bộ . Nếu một lỗi phát sinh , nó nên được xử lý trong
chương trình con nơi mà lỗi xảy ra , nghóa là bạn phải viết một điều khiển lỗi
cho chương trình xử lý mà bạn cần thêm vào ứng dụng của mình .
Nếu có một lỗi được bẫy bằng một chương trình xử lý lỗi và điều khiển được
gởi đến chương trình xử lý lỗi , cách duy nhất để làm mất hoạt động và quay lại
từ chương trình là thực thi một trong ba dạng câu lệnh Resume :
+ Resume (Label): xác đònh vò trí nhãn (label) nơi bạn muốn điều khiển của
ứng dụng quay trở lại .
+ Resume Next: thực thi tiếp tục câu lệnh ngay sau câu lệnh xảy ra lỗi .
+ Resume(0): thực thi lại câu lệnh có lỗi .
Nếu chương trình xử lý lỗi giải quyết nguyên nhân lỗi xảy ra , bạn có thể sử
dụng Resume(0) để xử lý lại các thao tác .
3.1.4 Các đối tượng xử lý lỗi ERR được cài đặt sẳn :
Đối tượng Err có thể được truy cập bất kỳ ở đâu trong ứng dụng VB . Phương
thức và thuộc tính của đối tượng Err :
Number Mã số lỗi.
Source Tên của file Visual Basic đang xảy ra lỗi .
Description Diễn giải mã số lỗi được tìm thấy trong thuộc tính Number.
HelpFile Đường dẫn và tên file đầy đủ của file hướng dẫn hỗ trợ
thông báo lỗi .
HelpContext Chỉ số help trong file hướng dẫn Help.
LastDLLError Đoạn mã lỗi của lời gọi thực thi cuối cùng đến DLL.
Clear Xóa tất cả các thiết lập thuộc tính của đối tượng Err.
Đối tượng Error và những tập hợp lỗi liên quan có sẳn chỉ khi ứng dụng đang
sử dụng một trong những thư viện DAO . Các đối tượng Error là lớp con của đối
tượng Connection được sử dụng để duy trì các thông tin về lỗi CSDL có thể xảy
ra trong ứng dụng . Thuận lợi của đối tượng Error bao gồm cả đối tượng Err là
nó chứa nhiều thuộc tính có quan hệ trực tiếp với CSDL , để nó có thể kết nối
khi cần . Đối tượng Err chỉ trả về lỗi xảy ra cuối cùng .
3.1.5 Giới thiệu về điều khiển xử lý ngoại lệ ( Exception) có cấu trúc :
Điều khiển ngoại lệ (exception) có cấu trúc cho phép bạn đònh nghóa các
khối mã được tạo ở dạng bảo vệ . Một đoạn mã ở dạng bảo vệ là một phần
hoặc một khối đang được kiểm tra bởi một hoặc nhiều chương trình điều khiển
n
[exception [As type]] [when expression]
CatchStatements
n
[Exit Try]
[Finally Try]
FinallyStatements
End Try
Đối số của câu lệnh Try … Catch … Finally được mô tả như sau :
TryStatements Khối của đoạn mã có lỗi xảy ra.
Exception Tên biến . Giá trò khởi tạo là giá trò của lỗi xảy ra .
Type Xác đònh kiểu của điều kiện.
Expression Biểu thức có điều kiện.
CatchStatements Khối của đoạn mã sẽ xử lý lỗi đã xảy ra trong khối Try.
Exit Try Câu lệnh thoát khỏi tiến trình Try … Catch … Finally
FinallyStatements Khối đoạn mã được thực thi sau khi tất cả tiến trình xử lý
lỗi khác được làm .
+ Khối Try : Khối Try chứa phần đoạn mã bạn muốn trình điều khiển lỗi hiển
thò lên màn hình . Nếu một lỗi xuất hiện trong khi thực thi bất kỳ đoạn mã nào ,
VB tìm mỗi câu lệnh CatchStatements trong đoạn Try Catch … Finally cho
GVHD : Nguyễn Chánh Thành Trang 11
Đối số Diễn giải
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
đến khi tìm thấy một mã điều kiện của nó tương ứng với lỗi . Nếu có một điều
kiện được tìm thấy, điều khiển sẽ chuyển đến dòng đầu tiên của đoạn mã trong
khối Catch . Tiến trình này tiếp tục qua tất cả các câu lệnh catch cho đến khi
một khối catch thích hợp được tìm thấy . Nếu không tìm được gì cả thì VB sẽ
phát sinh một lỗi .
+ Khối Catch : Nếu có ngoại lệ exception xảy ra trong quá trình xử lý của
khối Try , mỗi câu lệnh Catch được xem xét theo thứ tự để xác đònh nó có xử lý
Để kiểm tra và sửa lỗi ứng dụng bạn phải hiểu ba chế độ mà bạn sẽ làm việc
trong ứng dụng . Bảng dưới đây mô tả các chế độ và những hành động có thể
áp dụng trong từng chế độ .
Design Hầu hết công việc tạo một ứng dụng được thực hiện trong chế độ
thiết kế. Bạn có thể thiết kế các form , vẽ các điều khiển , viết
mã và dùng cửa sổ Property để thiết lập hoặc hiển thò bất kỳ
thuộc tính nào . Tuy nhiên bạn không thể thực thi đoạn mã hoặc
sử dụng những công cụ sửa chữa lỗi , ngoại trừ việc thiết lập điểm
dừng và tạo các biểu thức watch .
Run Khi bạn chạy ứng dụng , bạn tiếp xúc với ứng dụng giống như với
người sử dụng . Bạn vẫn có thể xem được mã nguồn nhưng không
thể thay đổi được nó .
Break Sự thực thi ứng dụng bò gián đoạn , bạn có thể xem và chỉnh sửa
được mã nguồn , kiểm tra hoặc sửa dữ liệu , khởi động lại ứng
dụng , dừng sự thực thi hoặc tiếp tục thực thi từ điểm dừng .
2. Làm việc với CRYSTAL REPORTS :
Một trong những đặc điểm quan trọng mà bạn có thể thêm vào ứng dụng là
khả năng in ra dữ liệu trong cơ sở dữ liệu của ứng dụng . Trong phần này ,
người sử dụng sẽ có thể có một cái nhìn chuyên nghiệp , dễ dàng tạo và sử
dụng các report (báo cáo) từ ứng dụng mà họ đang dùng . Trong VB 3 ,
Microsoft đưa vào phiên bản của Crystal Reports cùng với sản phẩm phát
triển . Tuy nhiên nó không bao giờ hòa hợp một cách đầy đủ với Visual Studio
IDE . Bạn luôn phải chạy một công cụ thiết kế riêng biệt độc lập của Visual
Basic . Trong VB.NET Crystal Reports là một thành phần được sát nhập một
cách đầy đủ vào môi trường phát triển . Crystal Reports cung cấp cơ chế tạo và
thiết kế report hoàn chỉnh , bạn có thể dùng trong Visual Basic và những
chương trình Windows cùng với các ứng dụng Web.
4.1CRYSTAL REPORTS Là gì ?
Crystal Report là một ứng dụng mạnh cho phép bạn tạo các report , các danh
sách và các nhãn có sẳn từ dữ liệu trong ứng dụng cơ sở dữ liệu . Khi Crystal
liệu phức tạp như SQL Server 2000 và Oracle nhưng chúng cũng có thể dùng
cho Paradox và Microsof Access.
4.2Thêm điều khiển vào CRYSTAL REPORTS:
a. Crystal Report Viewer:
Bước đầu tiên trong việc hiển thò một Crystal Reports trong ứng dụng là thêm
Crystal Report Viewer vào form mới trong dự án . Qua việc hiển thò này , người
sử dụng có thể chọn report từ form chính . Form sẽ chứa một nút cho phép
người sử dụng đóng form khi hoàn thành xong report . Crystal Report Viewer
cung cấp khả năng sau :
+ Đi tới trang đầu tiên , lùi một trang , tới một trang , tới trang cuối cùng , tới
một trang đã được xác đònh , đóng cửa sổ hiện hành , in , làm tươi lại report ,
xuất report sang dạng khác , chuyển đổi giữa việc hiển thò nhóm , phóng to/ thu
nhỏ report , tìm kiếm .
GVHD : Nguyễn Chánh Thành Trang 14
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
b. Group Tree:
Group Tree hiển thò trong Crystal Report Viewer giúp bạn điều khiển report
dựa vào nhóm được đònh nghóa trước trong report. Bạn có thể thấy , khi nhấn
vào một nhóm giá trò riêng biệt , một phần của report hiển thò thay đổi để phản
ánh sự chọn lựa đó . Tùy chọn Keep Group Together buộc một trang gián đoạn
để chỉ một nhóm riêng biệt bắt đầu xuất hiện trong Viewer.
3. Trình duyệt INTERNET :
Điều khiển trình duyệt Internet cho phép bạn nối Internet bằng cách sử dụng
sự kết nối Internet mặc đònh trên máy PC của bạn . Nó đóng vai trò tương tự
như trình duyệt Web Internet Explorer hiện có trên máy bạn .
Các điều khiển trình duyệt không có gì lạ ngoài một khung cửa sổ được để
xem và hiển thò nội dung các trang Web . Mặc dù nó chứa các phương thức ,
thuộc tính và sự kiện cần để thực hiện tất cả các chức năng trình duyệt theo
yêu cầu , nhưng nó không đưa những thành phần giao diện người dùng vào
chung . Vì thế bạn phải có nhiệm vụ thiết kế và tạo ra giao diện cần thiết tùy
+ Đònh dạng trang Web với bảng , hình ảnh đồ họa kết hợp với văn bản , âm
thanh .
+ Cho phép tích hợp với các chương trình phục vụ Internet như các tài liệu
ActiveX và Java (một ngôn ngữ lập trình làm các trang Web thay đổi động ).
HTML được biết đến như một ngôn ngữ kòch bản , nó không được biên dòch
như các chương trình VB . HTML đònh dạng các trang Web , chỉ ra vò trí của
ảnh đồ họa và các khung để chưa văn bản , cho phép bạn nhúng các trang web
động , như các tài liệu ActiveX và các chương trình Java.
VBScript là một ngôn ngữ kòch bản được thiết kế bởi Microsoft , là một tập
hợp con của ngôn ngữ lập trình VB . Điều đó có nghóa là bạn sẽ cảm thấy rất
quen thuộc khi làm việc với VBScript . Ngôn ngữ này rất hữu ích khi bạn cần
thêm các thuộc tính của VB vào một trang Web , như bẫy thông điệp , sử dụng
các câu lệnh điều khiển nhập liệu , tính toán bằng các vòng lặp . . .
4. Tạo ứng dụng WEB :
6.1Các thành phần của ứng dụng Web :
Những tập tin thêm vào dự án của bạn là những tập tin chuẩn trong hầu hết
các ứng dụng Web , bao gồm :
+ Các tham chiếu Namespace .
+ Web.config
+ Global.asax
+ Trang Web Form .aspx mặc đònh .
Những tập tin khác nhau được sử dụng bởi một ứng dụng Web được liệt kê
trong Solution Explorer .
Một dự án ứng dụng đầy đủ sẽ tạo ra một cấu trúc tập tin dự án cả trên máy
tính của bạn và máy chủ Web server , nơi mà bạn đang thi hành ứng dụng
Web. Trái lại , nếu bạn tạo một dự án Web rỗng , những tập tin này sẽ không
được thêm vào dự án . Tạo một dự án Web rỗng hữu dụng khi :
GVHD : Nguyễn Chánh Thành Trang 16
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
+ Bạn chỉ làm việc với những tập tin HTML , và có thể ASP , thay cho những
dụng Visual Studio HTML Editor với các điều khiển Web Forms , bạn có thể
thiết kế biểu mẫu giống như bất cứ ứng dụng Visual Studio nào khác .
6.3Thiết kế Web Form :
GVHD : Nguyễn Chánh Thành Trang 17
File Mô tả
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
Để tạo một ứng dụng Web bạn thêm Web Form vào dự án , kéo các điều
khiển Web Form đặt vào trang , sau đó nhấp đúp vào thành phần điều khiển để
thêm mã cần cho sự kiện , tương tự như khi xây dựng mã cho ứng dụng
Window Desktop.
6.4Giới thiệu các điều khiển Web Form
Khi thiết kế một Web Form , bạn có thể sử dụng các điều khiển xử lý phía
server , những kiểu điều khiển server bao gồm :
+ HTML server controls là các phần tử HTML được đặt xử lý trên server bạn
có thể lập trình chúng .
+ Web Server controls chứa nhiều tính năng xây dựng sẳn (built-in) hơn là các
điều khiển server HTML . Chúng không chỉ bao gồm các điều khiển kiểu form
như các điều khiển nút nhấn và ô văn bản textbox , mà còn có các điều khiển
phục vụ cho mục đích đặc biệt lòch biểu (calendar).
+ Validation controls kết hợp logic chặc chẽ cho phép bạn kiểm tra người
dùng nhập thông tin vào .
+ User controls là những điều khiển tùy chỉnh bạn có thể tạo để sử dụng trên
một Web Form .
5. WEB SERVICE :
Web Service là một module chương trình cung cấp chức năng của ứng dụng
cho phép triệu gọi và truy cập từ xa thông qua Internet . Web Service sử dụng
các chuẩn của Internet như XML và HTTP . Việc sử dụng Web Service phụ
thuộc nhiều vào sự chấp nhận của XML , một ngôn ngữ mô tả dữ liệu mới
dùng để truyền tải dữ liệu thông qua Web .
7.1Ứng dụng Web Service :
Một Help System bao gồm nhiều file trợ giúp khác nhau được tạo bởi những
file text hoặc những file phân theo chủ đề (topic) khác nhau . Một số file này
chứa văn bản , hình ảnh đồ họa , những file khác sẽ chứa những thông tin
hướng dẫn cách hiển thò Help System và Hepl System làm việc như thế nào .
Để tạo một Hepl System của chính bạn , bạn cần phải theo những bước sau :
+ Tạo những file chủ đề trợ giúp dưới dạng HTML bằng cách sử dụng
Microsoft Word hoặc bất kỳ chương trình soạn thảo nào bạn có .
+ Tạo một dự án Help System .
+ Tạo file Content để hiển thò những mục lục trợ giúp .
+ Nối Help System hoàn chỉnh vào ứng dụng Visual basic .
Các file trợ giúp có thể đơn giản hoặc phức tạp tùy theo bạn muốn . Để tạo
những file topic bạn cần thực hiện những bước sau :
+ Lưu các file dưới dạng HTML.
+ Thêm vào nối kết HTML .
+ Thêm vào hình ảnh âm thanh trong tài liệu .
8.2Đònh nghóa của các FILE trợ giúp :
Một file topic chứa những dòng văn bản và hình ảnh tạo nên file trợ giúp . Để
tạo hầu hết những file topic bạn cần theo các bước sau :
+ Soạn thảo nội dung cho những chủ đề .
+ Thêm vào hình ảnh .
GVHD : Nguyễn Chánh Thành Trang 19
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
+ Đònh dạng ký tự .
Khi soạn thảo nội dung cho một file topic (file chủ đề ) , liên kết hypertext
được thêm vào để xác đònh kết nối đến chủ đề khác .
Tìm hiểu cơ cấu .NET :
7. Tham khảo sơ lược về .NET FRAMEWORK :
Microsoft .NET sẽ có trên Internet để trở thành nền tảng của một hệ điều
hành mới . Nó không ràng buộc chúng ta về phần cứng bởi người dùng có khả
năng lấy dữ liệu từ Internet . .NET quan trọng đối với người dùng vì nó tạo ra
mã cho ứng dụng .
CLR được tạo ra hoàn toàn mới , nghóa là Microsoft không bắt đầu bằng cách
sử dụng VB Runtime hoặc Visual C++ Runtime . Microsoft xây dựng môi
trường cho phép một ứng dụng được viết tách ra thành những module , mỗi
module có thể được viết bằng một ngôn ngữ khác nhau . Ngôn ngữ lập trình
được sử dụng để tạo ứng dụng .NET biên dòch ra file thực thi .NET Portable
Executable (PE). Các file PE có thể là file .exe hoặc file .dll mà bạn đã quen
thuộc trong các phiên bản trước đây của VB . CLR bao gồm các chức năng sau
đây :
+ Tải hay nạp các lớp được yêu cầu .
+ Thực hiện biên dòch tức thời ( Just – In – Time hay JIT) các lớp đối tượng
theo yêu cầu .
+ Thực hiện bảo mật .
+ Thực hiện các chức năng động khác trong khi chạy chương trình .
Sau đây là một số thuận lợi của CLR là :
+ Tích hợp đa ngôn ngữ .
+ Tăng việc bảo mật .
+ Quản lý phiên bản của chương trình .
+ Hổ trợ đóng gói và cài đặt .
CLR điều khiển quản lý các đối tượng tự động , quản lý các tham chiếu đối
tượng , bao gồm cả việc giải phóng chúng khi đối tượng không được sử dụng
đến nữa . CLR cung cấp cơ chế quản lý bộ nhớ tự động , loại trừ lỗi rò rỉ nhỏ
giống như những lỗi lập trình thông thường .
CLR tạo sự dễ dàng khi thiết kế các thành phần và các ứng dụng mà những
đối tượng đa ngôn ngữ . Các đối tượng được viết bằng những ngôn ngữ khác
nhau có thể truyền cho nhau dễ dàng tựa như chúng được viết ra từ cùng một
ngôn ngữ . Ví dụ , bạn có thể đònh nghóa một lớp bằng ngôn ngữ C++ , sau đó
sử dụng lớp đối tượng này ngay trong ngôn ngữ Visual Basic .
9. Siêu dữ kiện METADATA :
Metadata (siêu dữ kiện) là thông tin mã máy có thể đọc được (machine-
khi ứng dụng có thể thực sự được thực thi, bộ nạp lớp Class Loader phải tìm
thấy được lớp có chứa hàm Main( ) và tải lớp này lên .
Khi chương trình Main( ) gọi bất kỳ một đối tượng nào của một lớp chỉ đònh
(như textbox trong VB) , Class Loader nhận được quyền điều khiển để thực
hiện công việc của mình khi có một kiểu được lần đầu tiên tham chiếu đến .
Sau đó , Class Loader sẽ tải các lớp .NET vào bộ nhớ và chuẩn bò thực thi . Khi
thực hiện tác vụ này, Class Loader đònh vò và chỉ tải các lớp chủ yếu cho ứng
dụng .NET , sau đó sẽ giữ lại các thông tin của lớp để nó không phải nạp lại
trong suốt khoảng thời gian ứng dụng thực thi . Cuối cùng , Class Loader sử
dụng các thông tin metadata thích hợp để khởi tạo các biến tónh cho ứng dụng .
4.2Verifier ( Bộ chứng thực ) :
GVHD : Nguyễn Chánh Thành Trang 22
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
Sau khi Class Loader nạp vào một lớp và trước khi một phần của đoạn mã
có thể thực thi , Verifier bắt đầu kiểm tra đoạn mã lệnh đó để đảm bảo :
+ Thông tin mô tả của metadata là hợp lệ .
+ Các đoạn mã trung gian IL là an toàn về kiểu .
Cả hai điều kiện trên trên cần phải thỏa mãn trước khi trình biên dòch JIT tiếp
tục quá trình xử lý mã .
4.3Trình biên dòch JIT (JIT compiler) :
Trình biên dòch JIT (Just-In-Time) sẽ chuyển đổi đoạn mã lệnh trung gian
sang đoạn mã lệnh máy (native) để nó có thể thực thi trên bất kỳ hệ điều hành
nào . Điểm thuận lợi mà các trình biên dòch JIT cung cấp là chúng có thể biên
dòch động đoạn mã lệnh trong khi chạy chương trình . Nếu bạn lấy một tập tin
PE .NET tương tự từ một máy tính với một CPU sang một máy tính với hai CPU
hoặc nhiều hơn , JIT có thể biên dòch đoạn mã lệnh tận dụng tính năng của các
CPU phụ .
4.4Các hỗ trợ khác :
Bây giờ bạn đã hiểu mỗi thành phần trong CLR sử dụng metadata và đoạn mã
lệnh trung gian phối hợp thực thi ứng dụng .NET . Rất nhiều tác vụ khác được
viện class khác nhau . Namespace có thể chứa các namespace khác . Khi đó sẽ
tạo ra cấu trúc thứ bậc , cho phép sắp xếp các đối tượng liên quan với mức chi
tiết cao hơn . Bảng sau là một danh sách các namespace và các lớp quan trọng
trong .NET Framework .
System Bao gồm các lớp cơ bản mà các chương trình đều sử
dụng , như Object , Char , String .
System.IO Cung cấp các lớp cho phép đồng thời và không đồng
thời viết và đọc trên dòng dữ liệu và tập tin .
System.Drawing Cung cấp cơ chế truy cập đến lớp đồ họa cơ bản GDI
System.Collection Chứa các lớp đònh nghóa các tập hợp đối tượng khác
nhau như danh sách , hàng đợi và mảng .
System.Threading Cung cấp các lớp và các giao diện có khả năng lập
trình đa tuyến hay đa tiểu trình .
System.Reflection Chứa các tập hợp của các lớp và các giao diện cung
cấp chủ yếu về điều kiểu , phương thức và các
trường
System.Security Chứa các tập hợp của các lớp và namspace cung cấp
sự hỗ trợ bảo mật đối với một ứng dụng , như
Permissions and Policy .
System.Net Cung cấp các lớp và các namspacevề lập trình
mạng như Connection and IP Address .
System.Data Chứa các lớp và namspace cấu tạo nên kiến trúc của
ADO.NET.
System.Data.OleDb Cung cấp các lớp về hệ quản trò CSDL , cho phép
truy cập đến nguồn dữ liệu OLE DB .
GVHD : Nguyễn Chánh Thành Trang 24
Namespace Diễn giải
Luận Văn Tốt Nghiệp : Xây Dựng Chương Trình Thi Trắc Nghiệm Bằng VB.NET
System.Data.SqlClient Cung cấp các lớp về hệ quản trò CSDL SQL , cho
phép truy cập đến nguồn dữ liệu của SQL Server .
1.2Collection :
Collection là một đối tượng đặc biệt giúp bạn lưu trữ và truy xuất tất cả
những đối tượng khác trong ứng dụng . Collection là một cách để nhóm một tập
hợp những mục có liên hệ với nhau . Bằng cách dùng lớp COLLECTION chung
GVHD : Nguyễn Chánh Thành Trang 25