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

Xây dựng chương trình quản lý thư viện

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 (2.72 MB, 78 trang )

Đồ án tốt nghiệp

LỜI NÓI ĐẦU

Hiện nay, tại hầu hết các thư viện ở nước ta vẫn còn quản lý theo phương thức
truyền thống. Đó là cách quản lý và lưu trữ trên giấy tờ, sổ sách. Phương thức này có
rất nhiều hạn chế. Để quản lý được đầy đủ, chi tiết, và chính xác, hàng năm, Thư viện
phải mất một khoản chi phí khá lớn cho việc mua nguyên liệu (giấy tờ, sổ sách, tư
liệu). Hơn nữa, do đặc đỉêm chất liệu giấy rất nhanh hỏng, phải thường xuyên thay
thế, nâng cấp, mỗi lần thay đổi là một lần phải sao chép sổ sách, bảo quản tư liệu.. tốn
kém cả về chi phí đầu tư, vừa mất nhiều thời gian và sức lực. Hoạt động quản lý, tra
cứu theo cách trên cũng chiếm rất nhiều thời gian, công sức của cả người thủ thư lẫn
bạn đọc mà hiệu quả đạt được lại không cao. Trong điều kiện trình độ khoa học công
nghệ còn kém, những thành tựu của nó chưa đủ để đáp ứng cho nhu cầu ứng dụng,
phương thức quản lý truyền thống xét ở phương diện nào đó cũng đã phát huy tác
dụng và giữ một vai trò quan trọng.
Ngày nay, cuộc cách mạng khoa học - công nghệ và những thành tựu của nó
đang góp phần làm biến đổi nhanh chóng và sâu sắc mọi mặt của đời sống xã hội, trở
thành công cụ không thể thiếu trong nhiều lĩnh vực hoạt động như: ứng dụng trong
công tác quản lý, nghiên cứu, hỗ trợ công tác chuyên môn và trao đổi thông tin…
Đặc biệt, nó càng trở nên quan trọng đối với các ngành liên quan tới tri thức, thông
tin, tư liệu... như hoạt động thư viện.

SVTH : Đỗ Thành Kiên – Lớp K2C

1


Đồ án tốt nghiệp

MỤC LỤC


LỜI NÓI ĐẦU ..................................................................................................................... 1
Chương 1 : PHÂN TÍCH BÀI TOÁN.................................................................................. 4
1.1. Mô tả bài toán ...................................................................................................................... 4
1.2. Khảo sát bài toán. ................................................................................................................ 5
1.2.1. Thông tin đầu vào. ........................................................................................................................5
1.2.2. Thông tin ra. .................................................................................................................................5

1.3. Mục tiêu quản lý................................................................................................................... 5
1.3.1. Theo dõi mượn sách:.....................................................................................................................5
1.3.2. Theo dõi trả sách...........................................................................................................................5

1.4. Yếu tố thành công ................................................................................................................ 6
1.5. Biểu đồ phân cấp chức năng(BFD). ..................................................................................... 6
1.6.Các thực thể liên kết.............................................................................................................. 7
1.7. Biểu đồ luồng dữ liệu(DFD). ................................................................................................ 7
1.7.1. Biểu đồ mức khung cảnh. ..............................................................................................................7
1.7.2. Biểu đồ luồng dữ liệu mức đỉnh.....................................................................................................8
1.7.3. Biểu đồ luồng dữ liệu mức dưới đỉnh.............................................................................................9

1.8. Sơ đồ thực thể liên kết........................................................................................................ 13
1.8. Xây dựng thuộc tính........................................................................................................... 14
1.9. Xây dựng các bảng dữ liệu................................................................................................. 15

Chương 2 : CƠ BẢN VỀ C#, LẬP TRÌNH .NET VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
SQL SERVER 2000. .......................................................................................................... 19
2.1. Cơ bản về C Sharp. ............................................................................................................ 19
2.1.1. Giới thiêu về ngôn ngữ C#........................................................................................................... 19
2.1.2. Biến và hằng. .............................................................................................................................. 20
2.1.3. Câu lệnh điều khiển..................................................................................................................... 26
2.1.5. Windows Forms.......................................................................................................................... 30

2.1.6. Một số công cụ chính trong C Sharp. ........................................................................................... 31

2.2. Giới thiệu về lập trình trong môi trường .NET................................................................ 39
2.2.1. Truy cập dữ liệu với ADO.NET................................................................................................... 40
+ Truy cập nhanh cơ sở dữ liệu với DataReader. ................................................................................... 46
2.2.2. Làm việc với báo cáo sử dụng Crystal Report .NET ..................................................................... 52

2.3. Giới thiệu về hệ quản trị cơ sở dữ liệu SQL SERVER 2000............................................. 56
2.3.1 Giới thiệu tổng quan..................................................................................................................... 56
2.3.2. Các thành phần quan trọng trong SQL server2000........................................................................ 56
2.3.3. Cấu trúc của SQL server 2000. .................................................................................................... 59
2.3.4. Cấu trúc vật lý của một cơ sở dữ liệu SQL. .................................................................................. 60
2.3.5. Cách tạo một cơ sở dữ liệu người dùng bằng Enterprise Manager................................................ 61
2.3.6. Cách tạo bảng bằng Enterprise Manager. .................................................................................... 62
2.3.7. Thao tác dữ liệu .......................................................................................................................... 63

Chương 3 : THIẾT KẾ CHƯƠNG TRÌNH....................................................................... 64
3.1. Chức năng hệ thống ........................................................................................................... 64

SVTH : Đỗ Thành Kiên – Lớp K2C

2


Đồ án tốt nghiệp
3.2. Chức năng cập nhật danh mục. ......................................................................................... 66
3.2.1. Chức năng cập nhật tác giả. ......................................................................................................... 66
3.2.2. Chức năng cập nhật NXB. ........................................................................................................... 67
3.2.3. Chức năng cập nhật loại sách....................................................................................................... 68


3.3. Chức năng quản lý kho sách. ............................................................................................. 70
3.3.1. Quản lý sách. .............................................................................................................................. 70
3.3.2. Tìm kiếm sách............................................................................................................................. 70

3.4. Chức năng Quản lý độc giả. ............................................................................................... 72
3.5. Chức năng Quản lý mượn trả............................................................................................ 74
3.5.1. Mượn sách. ................................................................................................................................. 74
3.5.2. Trả sách. ..................................................................................................................................... 74
3.5.3. Gia hạn thêm............................................................................................................................... 75

KẾT LUẬN ........................................................................................................................ 76
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ................................................................. 77
TÀI LIỆU THAM KHẢO .................................................................................................. 78

SVTH : Đỗ Thành Kiên – Lớp K2C

3


Đồ án tốt nghiệp

Chương 1 : PHÂN TÍCH BÀI TOÁN

1.1. Mô tả bài toán
Để đáp ứng nhu cầu học tập và tìm hiểu khoa học của mọi độc giả, thư
viện khoa CNTT cho độc giả mượn sách về nhà. Nhưng số lượng độc giả mượn sách
đã nhanh chóng trở nên rất đông, chính vì vậy làm cho công tác quản lý độc giả mượn
và trả sách bằng phương pháp thủ công trước đây gặp nhiều khó khăn. Chính vì vậy,
thư viện khoa CNTT – ĐHTN có nhu cầu quản lý việc sử dụng sách. Công việc mượn
và trả sách tiến hành như sau:

Sinh viên đăng ký quyền mượn sách bằng các thẻ thư viện chứa các thông tin
về tên, tuổi, địa chỉ, lớp, giới tính. Nhân viên thư viện sẽ kiểm tra các thông tin xem
có chính xác không, nếu chính xác nhân viên thư viện sẽ giao sách cho độc giả và giữ
lại thẻ thư viện cùng với phiếu yêu cầu của độc giả. Các lần mượn sách được ghi nhận
bằng các phiếu mượn có dạng sau:
Số phiếu mượn: XX
Ngày mượn:
Số hiệu thẻ TV:
Ngày trả:
Số hiếu sách:
Hạn trả:
Phiếu mượn được thay vào chỗ sách bị lấy đi. Khi sinh viên trả sách thì mang
sách đến thư viện đưa cho nhân viên thư viện. Nhân viên thư viện kiểm tra sách độc
giả đem đến trả xem sách có phải của thư viện không và độc giả có trả đúng hạn
không. Nếu quá hạn thì độc giả sẽ phải chịu phạt theo qui định của thư viện. Và phải
bồi thường theo qui định nếu độc giả làm mất sách cũng như làm hỏng sách. Nếu độc
giả trả sách đúng thời hạn thì việc trả sách được ghi nhận vào dòng Ngày trả trên
phiếu mượn và phiếu mượn được lưu để theo dõi.
Yêu cầu hệ thống phải thông báo được:
1. Các đầu sách một sinh viên đang mượn và hạn phải trả.
SVTH : Đỗ Thành Kiên – Lớp K2C

4


Đồ án tốt nghiệp

2. Vị trí một cuốn sách hay tên người đang mượn.
3. Hàng tháng thống kê các chủ đề, tác giả có nhiều bạn đọc quan tâm.
4. Hàng tuần thống kê các độc giả trả quá hạn và đưa ra các hình thức xử lý.


1.2. Khảo sát bài toán.
1.2.1. Thông tin đầu vào.
- Độc giả( sinh viên ): Họ tên, địa chỉ.
- Thẻ thư viện : Mã số thẻ, ngày cấp, thời hạn.
- Phiếu mượn : Họ tên, mã số thẻ, mã sách, tên sách

1.2.2. Thông tin ra.
- Tổng hợp số người mượn, trả sách.
- Tổng hợp được số người trả quá hạn.

1.3. Mục tiêu quản lý.
+ Theo dõi mượn sách.
+ Theo dõi trả sách.
+ Quản lý độc giả.

1.3.1. Theo dõi mượn sách:
- Nhận phiếu mượn.
- Duyệt cho mượn.
- Trả lời mượn.
1.3.2. Theo dõi trả sách:
- Xác định trả đúng hạn.
- Xác định trả quá hạn.
- Xử lý trả quá hạn.

SVTH : Đỗ Thành Kiên – Lớp K2C

5



Đồ án tốt nghiệp

1.4. Yếu tố thành công
+ Tổng hợp số sách còn lại thư viện
+ Số độc giả trả quá hạn

1.5. Biểu đồ phân cấp chức năng(BFD).

SVTH : Đỗ Thành Kiên – Lớp K2C

6


Đồ án tốt nghiệp

1.6.Các thực thể liên kết.
-

Thực thể mang tin: Phiếu mượn.

-

Thực thể cần quản lý: Sách, Loại sách, NXB, Tác giả, Độc giả, Sách

hỏng, User.

1.7. Biểu đồ luồng dữ liệu(DFD).
1.7.1. Biểu đồ mức khung cảnh.

QUẢN LÝ

THƯ VIỆN

Yêu cầu thực hiện

Nhân viên TV
Phản hồi từ hệ thống

SVTH : Đỗ Thành Kiên – Lớp K2C

7


Đồ án tốt nghiệp

1.7.2. Biểu đồ luồng dữ liệu mức đỉnh.

Nhân viên TV

Thông tin tài khoản

Hệ thống
Thông tin trả lời

User

SVTH : Đỗ Thành Kiên – Lớp K2C

8



Đồ án tốt nghiệp

1.7.3. Biểu đồ luồng dữ liệu mức dưới đỉnh.
+ Mức dưới đỉnh chức năng Quản lý sách.

SVTH : Đỗ Thành Kiên – Lớp K2C

9


Đồ án tốt nghiệp

+ Mức dưới đỉnh chức năng Quản lý độc giả.

SVTH : Đỗ Thành Kiên – Lớp K2C

10


Đồ án tốt nghiệp

+ Mức dưới đỉnh chức năng Theo dõi mượn trả.

SVTH : Đỗ Thành Kiên – Lớp K2C

11


Đồ án tốt nghiệp


+ Mức dưới đỉnh chức năng Thống kê.
Thông tin quá hạn

Thông tin sách hỏng
hạn
Sách hỏng

Nhân viên TV
Thông tin thống kê

TK quá
hạn

TK sách
hỏng
Nhân viên TV
Sách

Độc giả

Thông tin yêu cầu

Phiếu mượn

TK sách
còn

TK sách
mượn


TK sách
tồn kho

Thông tin thống kê

Thông tin yêu cầu

Kết quả TK

Nhân viên TV

SVTH : Đỗ Thành Kiên – Lớp K2C

Độc giả

Thông tin yêu cầu

12


Đồ án tốt nghiệp

1.8. Sơ đồ thực thể liên kết.

Tác giả
NXB

Sách

Phiếu mượn


Độc giả

Loại sách
Sách hỏng

Phá vỡ liên kết n-n

Chi tiết mượn
Tác giả
NXB

Sách

Phiếu mượn

Độc giả

Loại sách
Sách hỏng

SVTH : Đỗ Thành Kiên – Lớp K2C

13


Đồ án tốt nghiệp

1.8. Chuẩn hóa dữ liệu.
1NF


2NF

3NF

#Mã phiếu mượn

#Mã phiếu mượn

#Mã phiếu mượn

#Mã phiếu mượn

Ngày mượn

Ngày mượn

Ngày mượn

Ngày mượn

Hạn trả

Mã thẻ

Mã thẻ

#Mã thẻ@

Mã thẻ


Họ tên

Họ tên

#Mã thẻ

Họ tên

Ngày sinh

Ngày sinh

Họ tên

Ngày sinh

Giới tính

Giới tính

Ngày sinh

Giới tính

Lớp

Lớp

Giới tính


Lớp

Thời hạn

Thời hạn

Lớp

#Mã phiếu mượn

#Mã phiếu mượn

Mã sách

#Mã sách @

#Mã phiếu mượn

Tên sách

Số lượng mượn

#Mã sách @

Mã NXB

#Mã sách

Số lượng mượn


Tên NXB

#Mã NXB @

#Mã sách

Tác giả

#Mã loại @

#Mã NXB @

Mã loại sách

Tên sách

#Mã loại @

Tên loại sách

Thể thức mượn

Tên sách

Thể thức mượn

Số lượng

Thể thức mượn


Số lượng

Số trang

Số lượng

Số trang

Vị trí

Số trang

Vị trí

Lượt mượn

Vị trí

Lượt mượn

Ngày nhập TV

Lượt mượn

#Mã NXB

Ngày nhập TV

Tên NXB


#Mã NXB

#Mã loại sách

Tên NXB

Tên loại sách

#Mã loại sách

Thời hạn
Mã sách
Tên sách
Mã NXB
Tên NXB
Tác giả
Mã loại sách
Tên loại sách
Thể thức mượn
Số lượng
Số trang
Vị trí
Lượt mượn
Ngày nhập TV
Mã ngôn ngữ
Ngôn ngữ
Mã tác giả
Tên tác giả


Số lượng mượn
Ngày nhập TV
Mã ngôn ngữ
Ngôn ngữ

SVTH : Đỗ Thành Kiên – Lớp K2C

Thời hạn

14


Đồ án tốt nghiệp

Mã tác giả

#Mã ngôn ngữ

Tên loại sách

Tác giả

Ngôn ngữ

#Mã ngôn ngữ

#Mã tác giả

Ngôn ngữ


Tên tác giả

#Mã tác giả
Tên tác giả

1.9. Xây dựng các bảng dữ liệu.
Từ phân tích các thuộc tính ở trên ta có các bảng dữ liệu như sau :

SVTH : Đỗ Thành Kiên – Lớp K2C

15


Đồ án tốt nghiệp

+ Các bảng dữ liệu.
Bảng User

Bảng sach

SVTH : Đỗ Thành Kiên – Lớp K2C

16


Đồ án tốt nghiệp

Bảng docgia

Bảng PhieuMuon


SVTH : Đỗ Thành Kiên – Lớp K2C

17


Đồ án tốt nghiệp

Bảng nhaxuatban

Bảng phanloai

Bảng ngonngu

SVTH : Đỗ Thành Kiên – Lớp K2C

18


Đồ án tốt nghiệp

Chương 2 : CƠ BẢN VỀ C#, LẬP TRÌNH .NET VÀ HỆ QUẢN TRỊ CƠ
SỞ DỮ LIỆU SQL SERVER 2000.

2.1. Cơ bản về C Sharp.
2.1.1. Giới thiêu về ngôn ngữ C#.
C# mô tả một ngôn ngữ hiện đại hướng đối tượng (object-oriented). Nó được
thiết kế để chú ý đến việc diển đạt C++ theo kiểu lập trình và phát triển nhanh ứng
dụng RAD (Rapid Application Development) chẳng hạn như Microsoft Visual Basic,
Delphi, C++ Builder. C# được kiến trúc bởi Anders Hejlsberg, người đã viết nên trình

biên dịch Pascal và có nhiều đóng góp cho ngôn ngữ Delphi cũng như Java. Và do đó
sự tiến triển của C# chịu ảnh hưởng bởi các ngôn ngữ như C++, SmallTalk, Java và
các ngôn ngữ khác. Thiết kế chu đáo của C# cho phép bạn với tư cách là người phát
triển tập trung vào các tác vụ xây dựng các ứng dụng theo yêu cầu hơn là vào những
kỹ thuật lắt léo của ngôn ngữ lập trình.
Chúng ta từng biết hay ít nhất là nghe nói về ngôn ngữ hướng đối tượng (như
C++,

Java,

v.v.),

vậy

C#

hướng

đối

tượng

như

thế

nào?

Trước hết, mọi thứ trong C# đều là đối tượng. C# không quan tâm đến dữ liệu toàn
cục hay hàm toàn cục. Tất cả dử liệu và phương thức trong C# được chứa trong khai

báo: cấu trúc (struct) hoặc lớp (class). Tất cả dử liệu được và phương thức thao tác
trên dữ liệu cần được đóng gói như một đơn vị chức năng, các đơn vị chứ năng này là
những đối tượng có thể được sử dụng lại, chúng độc lập và có thể tự hoạt động.
CLR (.NET Common Language Runtime - tạm dịch là trình thực thi ngôn ngữ
phổ quát). Khối chức năng này cung ứng tất cả các dịch vụ mà các thành tố của chúng
sẽ giao tiếp với máy hay với hệ điều hành riêng trên máy đó. Máy đó chỉ là máy PC
và hệ điều hành không chỉ là DOS hay Windows. Microsoft đã có một chiến lượt xây
dựng bộ khung .NET trên mọi nền, từ các dụng cụ nhỏ nhất, các thiết bị cầm tay, điện
thoại, các PDA cho đến các hệ thống như UNIX hay LINUX. Mặc dù đến nay công
nghệ .NET vẫn chưa thể đáp ứng ngay tất cả những điều đó, nhưng tính khả chuyển

SVTH : Đỗ Thành Kiên – Lớp K2C

19


Đồ án tốt nghiệp

của nó cũng đang trở nên đủ dùng như là một môi trường lập trình "viết một lần
chạy khắp nơi".
C# sẽ cho phép cả những người lập trình có trình độ cao và cho cả những
người mới vào nghề, viết một chương trình tin cậy được với công sức tối thiểu. Có
những hiểu biết về thiết kế và cài đặt hướng đối tượng từ kinh nghiệm học tập - làm
việc cùng với C++ hoặc Java, Visual C++ hoặc Visual Basic sẽ là những chìa khóa
vàng giúp bạn nhanh chóng tiếp cận với C#.

2.1.2. Biến và hằng.
Một biến dùng để lưu trữ giá trị mang một kiểu dữ liệu nào đó. Cú pháp C# sau
đây để khai báo một biến :
[ modifier ] datatype identifer ;

Với modifier là một trong những từ khoá : public, private, protected, . . . còn
datatype là kiểu dữ liệu (int , long , float. . . ) và identifier là tên biến.
Thí dụ dưới đây một biến mang tên i kiểu số nguyên int và có thể được truy
cập bởi bất cứ hàm nào.
public int i ;
Ta có thể gán cho biến một giá trị bằng toán tử "=".
i = 10 ;
Ta cũng có thể khai báo biến và khởi tạo cho biến một giá trị như sau :
int i = 10 ;
Nếu ta khai báo nhiều biến có cùng kiểu dữ liệu sẽ có dạng như sau:
int x = 10; y = 20;
int x = 10;
bool y = true ;

// khai báo trên đúng

int x = 10 , bool = true // khai báo trên có lỗi

SVTH : Đỗ Thành Kiên – Lớp K2C

20


Đồ án tốt nghiệp

a. Phạm vi hoạt động của biến (Variable Scope).
Phạm vi hoạt động của biến là vùng đoạn mã mà từ đấy biến có thể được truy
xuất. Trong một phạm vi hoạt động (scope), không thể có hai biến cùng mang một tên
trùng nhau.
Thí dụ ta không thể làm như sau :

int x = 20;
// một số câu lệnh ở đây
int x = 30;
Xét ví dụ sau :
using System;
namespace Wrox.ProCSharp.Basics
{
public class ScopeTest
{
public static int Main()
{
for (int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
// biến i ra khỏi phạm vi
//Chúng ta có thể khai báo thêm biến i ở đây
for (int i = 9; i >= 0; i--)
{
Console.WriteLine(i);
}
// biến i ra khỏi phạm vi ở đây
return 0;
}
}
}
Đoạn mã trên đơn giản in ra các số từ 0 đến 9, rồi lộn ngược lại từ 9 đến 0, sử
dụng vòng lặp for. Chúng ta sẽ đề cập loại vòng lặp này. Điều quan trọng là ở đây
chúng ta khai báo biến i hai lần trong cùng một hàm ScopeTest. Chúng ta có thể làm
được điều này vì i được khai báo trong vòng lặp nghĩa là biến i cục bộ đối với vòng

lặp. Một khi vòng lặp hoàn thành nhiệm vụ thì biến thoát khỏi phạm vi, và không thể
truy xuất được nữa.

SVTH : Đỗ Thành Kiên – Lớp K2C

21


Đồ án tốt nghiệp

b. Hằng.
Một hằng (constant) là một biến nhưng trị không thể thay đổi được suốt thời
gian thi hành chương trình. Đôi lúc ta cũng cần có những giá trị bao giờ cũng bất
biến.
Thí dụ :const int a = 100; // giá trị này không thể bị thay đổi
Trong định nghĩa lớp mà ta sẽ xem sau, người ta thường định nghĩa những mục
tin (field) được gọi là read-only variable, nghĩa là những biến chỉ được đọc mà thôi
Hằng có những đặc điểm sau :


Hằng bắt buộc phải được gán giá trị lúc khai báo.Một khi đã được khởi

gán thì không thể viết đè chồng lên.


Trị của hằng phải có thể được tính toán vào lúc biên dịch, Do đó không

thể gán một hằng từ một trị của một biến. Nếu muốn làm thế thì phải sử dụng đến một
read-only field.



Hằng bao giờ cũng static, tuy nhiên ta không thể đưa từ khoá static vào

khi khai báo hằng.
Có ba thuận lợi khi sử dụng hằng trong chương trình:


Hằng làm cho chương trình đọc dễ dàng hơn, bằng cách thay thế những

con số vô cảm bởi những tên mang đầy ý nghĩa hơn.


Hằng làm cho dễ sữa chương trình hơn.



Hằng làm cho việc tránh lỗi dễ dàng hơn, nếu bạn gán một trị khác cho

một hằng đâu đó trong chương trình sau khi bạn đã gán giá trị cho hằng, thì trình biên
dịch sẽ thông báo sai lầm.
c. Dữ liệu kiểu trị và kiểu qui chiếu
C# là một ngôn ngữ được kiểm soát chặt chẻ về mặt kiểu dữ liệu, ngoài ra C#
còn chia các kiểu dữ liệu thành hai loại khác nhau: kiểu trị (value type) và kiểu qui
chiếu (reference type). Nghĩa là trên một chương trình C# dữ liệu được lưu trữ một
hoặc hai nơi tuỳ theo đặc thù của kiểu dữ liệu.
Chỗ thứ nhất là stack một vùng ký ức dành lưu trữ dữ liệu chiều dài cố định,
chẳng hạn int chiếm dụng 4 bytes . Mỗi chương trình khi đang thi hành đều được cấp
SVTH : Đỗ Thành Kiên – Lớp K2C

22



Đồ án tốt nghiệp

phát riêng một stack riêng biệt mà các chương trình khác không được mó tới. Khi một
hàm được gọi hàm thi hành thì tất cả các biến cục bộ của hàm được ấn vào stack và
khi hàm hoàn thành công tác thì những biến cục bộ của hàm đều bị tống ra. Đây là
cách thu hồi khi hàm hết hoạt động.
Chỗ thứ hai là heap, một vùng ký ức dùng lưu trữ dữ liệu có bề dày thay đổi và
khá đồ sộ, string chẳng hạn, hoặc dữ liệu có một cuộc sống dài hơn phương thức của
một đối tượng chẳng hạn, Thí dụ khi phương thức thể hiện (instantiate) một đối tượng
, đối tượng đuợc lưu trữ trên heap, và nó không bị tống ra khi hàm hoàn thành giống
như stack, mà ở nguyên tại chỗ và có thể trao cho các phương thức khác thông qua
một qui chiếu. Trên C# heap này được gọi là managed heap, khôn lanh vì heap này
có một bộ phận gọi là garbage collector (GC,dịch vụ hốt rác ) chuyên lo thu hồi ký ức
lâu ngày không dùng đến (nghĩa là không quy chiếu đến).
C# cũng hỗ trợ kiểu con trỏ (pointer type) giống như C++ nhưng ít khi dùng
đến và chỉ dùng khi làm việc với đoạn mã unmanaged. Đoạn mã unmanaged là đoạn
mã đuợc tạo ra ngoài sàn diễn .NET, chẳng hạn những đối tượng COM.
Kiểu giá trị được định nghĩa trước (Predefined Value Types)
Kiểu dữ liệu bẩm sinh (The built-in value types) trình bày ban đầu như integer
và floating-point numbers, character, và Boolean types.

SVTH : Đỗ Thành Kiên – Lớp K2C

23


Đồ án tốt nghiệp


Các kiểu Integer:
C# hỗ trợ 8 kiểu dữ liệu số nguyên sau:
Tên

CTS Type

Giá trị (min:max)

sbyte

System.SByte

-128:127 (-27:27-1)

short

System.Int16

-32,768:32,767 (-215:215-1)

int

System.Int32

-2,147,483,648:2,147,483,647 (-231:231-1)

long

System.Int64


byte

System.Byte

0:255 (0:28-1)

ushort

System.UInt16

0:65,535 (0:216-1)

uint

System.UInt32

0:4,294,967,295 (0:232-1)

ulong

System.UInt64

0:18,446,744,073,709,551,615(0:264-1)

kiểu

-9,223,372,036,854,775,808:
9,223,372,036,854,775,807 (-263:263-1)

Kiểu dữ liệu số dấu chấm di động (Floating Point Types)

Tên

CTS Type

Giá trị

Float

System.Single

±1.5 × 10-45 to ±3.4 × 1038

Double

System.Double

±5.0 × 10-324 to ±1.7 × 10308

Kiểu dữ liệu số thập phân (Decimal Type):
Name

CTS Type

decimal

System.Decimal

Giá trị
±1.0 × 10-28 to ±7.9 × 1028


Kiểu Boolean :
Name

CTS Type

Bool

System.Boolean

SVTH : Đỗ Thành Kiên – Lớp K2C

Value
true or false

24


Đồ án tốt nghiệp

Kiểu Character Type:
Name

CTS Type

char

System.Char

Giá trị
Represents a single 16-bit (Unicode)

character

Các ký tự escape thông dụng:
Escape Sequence

Character

\'

Single quote

\"

Double quote

\\

Backslash

\0

Null

\a

Alert

\b

Backspace


\f

Form feed

\n

Newline

\r

Carriage return

\t

Tab character

\v

Vertical tab

Các kiểu chuỗi :
Đối tượng kiểu string thường chứa một chuỗi ký tự.Khi khai báo một biến
chuỗi sử dụng từ khoá string giống như sau:
string

myString;

Thường thì phải khởi gán một biến chuỗi sử dụng đến một kiểu string :
string myString = "Xin chao" ;

string str1 = "Hello ";
SVTH : Đỗ Thành Kiên – Lớp K2C

25


×