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

Xây dựng phần mềm hỗ trợ học tiếng anh công nghệ thông tin

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.06 MB, 49 trang )

Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 1

LỜI NÓI ĐẦU

Vai trò quan trọng của Tiếng Anh đối với những người làm việc
trong lĩnh vực Công nghệ thông tin(CNTT) là đièu không thể phủ nhận.
Tuy nhiên việc học một ngoại ngữ, dù rất phổ thông như tiếng Anh,
dường như vẫn luôn là một bức tường cao và dày rất khó vượt qua.
Bên cạnh đó, nhu cầu học tập và làm việc trên máy vi tính ngày
càng tăng. Vì vậy, một phần mềm hỗ trợc học Tiếng Anh chuyên ngành
CNTT là một nhu cầu thiết yếu.
Trong chương trình này, người dùng có thể rèn luyện kỹ năng nghe
bằng tiếng Anh các vấn đề liên quan trong lĩnh vực công nghệ thông tin
thông qua các bài đọc hiểu, các đoạn hội thoại do các giáo viên dày dạn
kinh nghiệm của bộ môn Tiếng Anh và CNTT của trường đại học Oxford
danh tiếng biên soạn.
Ngoài ra, khi thực hiền đề tài này, em đã mạnh dạn nghiên cứu và
sử dụng một ngôn ngữ đang đượ
c nhiều người quan tâm là ngôn ngữ C#.
C# là một ngôn ngữ mạnh, hỗ trợ tốt cho người dùng trong việc xây dựng
các chương trình ứng dụng trên Window với giao diện đẹp và nhiều tính
năng.
Đề tài này được trình bày qua 3 phần chính:
I.Cơ sở lý thuyết.
II.Công cụ lập trình.
III.Xây dựng chương trình hỗ trợ học tiếng Anh chuyên
ngành CNTT .
Do thời gian và kiến thức có hạn nên khóa luận này của em còn
nhiều thiếu sót, kính mong được sự góp ý và chỉ bả
o từ các thầy cô và các


bạn.

Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 2

Chương I: Cơ sở lý thuyết

1.1. Học tiếng Anh
Học ngoại ngữ chính là quá trình biến “những âm thanh và con chữ vô
nghĩa thành những biểu tượng có nghĩa” đối với chính mình. Thế nhưng
những âm thanh và con chữ ấy lại quá phong phú với rất nhiều biến tấu
tinh tế, hàm chứa cả một nền văn hóa nên lẽ dĩ nhiên chẳng có một
phương pháp nào có thể thông hiểu một ngôn ngữ trong vòng 21 ngày.
Điều này cũng nói lên rằng chỉ có ngữ cảnh và sự trải nghi
ệm qua một
thời gian dài mới có thể giúp chúng ta nắm vững được một ngoại ngữ.
Học tiếng Anh cũng vậy.
Sau đây là một số lời khuyên chung chung có thể sẽ hữu ích với những
ai thích học tiếng Anh:
 Cần hiểu rất rõ tại sao bạn muốn học tiếng Anh. Bạn cần tiếng Anh
để phục vụ cho nghề nghiệp của mình hay để giúp bạn xin việc,
hay
để nói chuyện với những người nói tiếng Anh, hay để giúp bạn
trong việc học?
 Cần biết rõ bạn muốn tiếng Anh của mình giỏi tới mức độ nào. Bạn
muốn giỏi tiếng Anh tới mức nào về các kỹ năng nói, nghe, đọc và
viết?
 Hãy thử hình dung và có khái niệm thật rõ về chính mình khi bạn
đã đạt được trình độ tiếng Anh ở mức thành thạo mà bạn muốn.
Liệu bạn sẽ nhìn và nghe thấy gì và bạn sẽ cảm thấy như thế nào?

 Nếu có thể hãy đăng ký theo học một khóa tiếng Anh. Nếu không
thể làm được điều đó thì hãy tự đặt mình trong bối cảnh mà bạn
cần phải dùng tiếng Anh...
 Hãy tìm kiếm các cơ hội học và sử dụng tiếng Anh. Hãy nói tiếng
Anh bất cứ khi nào có thể. Hãy nghe đài và CD bằng tiếng Anh,
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 3

đọc và viết bằng tiếng Anh. Nếu bạn tìm những cơ hội như vậy thì
nhất định bạn sẽ tìm thấy.
 Hãy viết những từ ngữ mới vào một cuốn sổ ghi chép. Luôn mang
cuốn sổ theo người và như vậy bạn có thể giở sổ ra xem bất kỳ khi
nào bạn có chút thời gian rảnh rỗi.
 Luyện tập, luyện tập và luyện tập. Có một câu thành ng
ữ trong
tiếng Anh. Nếu bạn không muốn mất thì hãy sử dụng nó. Câu thành
ngữ này rất đúng nhất là khi áp dụng trong trường hợp học ngoại
ngữ.
 Hãy kiếm một người có thể giúp bạn học tiếng Anh, có thể là đồng
nghiệp của bạn. Tìm một người mà bạn có thể học tiếng Anh cùng.
Hãy nói tiếng Anh với người đó hay các bạn có thể gửi tin nhắn
bằng tiếng Anh cho nhau.
 Học một ít một nhưng thường xuyên. Hãy tạo ra một thói quen học
tiếng Anh mỗi ngày chỉ cần 10 phút thôi. Như thế sẽ tốt hơn là học
mỗi tuần chỉ có một lần dù với thời gian dài hơn.
 Khi bắt đầu buổi học hãy tự hỏi mình: "Mình muốn học gì hôm
nay?" và vào cuối buổi học, tự hỏi mình: "Mình đã học được gì
hôm nay?
1.2. Tiếng Anh chuyên ngành CNTT
Cũng như tiếng Anh của các chuyên ngành khác, để thông hiểu và

nắm bắt nhuần nhuyễn tiếng anh CNTT thật là một điều không đơn giản.
Tiếng Anh CNTT với đặc trưng là tiếng Anh của một ngành khoa học
kĩ thuật vốn đã gồm nhiều thuật ngữ phức tạp cộng thêm với nhiều
chuyên ngành khác nhau( khoa học máy tính, Internet, lập trình, phần
mềm, phần cứng,…) đã trở thành một môn h
ọc tương đối khó đối với
những ai muốn tìm hiểu. Thế nhưng khó không có nghĩa là không thể.
1.2.1. Từ vựng
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 4

Để học tiếng anh chuyên ngành CNTT, trước hết chúng ta nên có vốn
từ vựng nhất định. Và để học được, chúng ta cần phải hiểu về chúng:
 Có nhiều cách phân loại từ trong tiếng Anh và chưa có cách náo là
hoàn hảo cả. Theo truyền thống người ta thường phân loại từ theo 8
dạng sau:
- Danh từ (Noun): là tên gọi người, đồ vật, sự kiện hay nơi
chốn.
- Đại từ (Pronouns): là từ dùng thay cho danh từ
để danh từ
đó không bị lặp lại nhiều lần.
- Tính từ (Adjectives): là từ cung cấp tính chất cho danh từ,
làm cho danh từ rõ nghĩa hơn, chính xác và đầy đủ hơn.
- Động từ (Verb): là từ diễn tả một hành động, một tình trạng
hay cảm xúc. Nó xác định chủ từ làm hay chịu đựng một điều gì
đó.
- Trạng từ (Adverb): là từ bổ nghĩa cho độ
ng từ, tính từ hay
một trạng thái khác. Tương tự như tính từ, nó làm cho các từ mà
nó bổ nghĩa rõ ràng, đầy đủ và chính xác hơn.

- Giới từ (Prepositions): là những từ dùng với danh từ và đại
từ chỉ mối tương quan giữa từ này với các từ khác, thường là nhằm
mối tương quan về hoàn cảnh, thời gian hay vị trí.
- Liên từ (Conjuctions): là từ nối các từ (word), ngữ (Phrase)
và câu (sentence) lại vớ
i nhau.
- Thán từ (Interjections): là từ diễn tả tình cảm, cảm xúc đột
ngột không ngờ. Các từ này không can thiệp vào ngữ pháp câu.
Có nhiều từ đảm nhiệm nhiều loại chức năng khác nhau và do
đó có thể xếp vào nhiều loại từ khác nhau.
Thông qua cách phân loại, người đọc có thể nắm bắt từ một
cách dễ dàng hơn về cấu trúc, ngữ nghĩa của từ. Qua đó giúp cho
người đọc họ
c từ một cách dễ dàng hơn.
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 5

 Đặc trưng từ vựng trong tiếng anh CNTT có lẽ là biến thể của các
loại từ:
VD: Program(n): chương trình
Program(v): lập trình
Programmer(n): lập trình viên
Programmable(adj): có thể program hóa
Programmability(n): sự có thể program hóa
Programming(v): lập trình
 Ngoài ra, còn chú ý đến những thuật ngữ tin học:
VD:
- Open database connectivity(ODBC): hệ thống kết nối cơ sở dữ
liệu mở.
- Dynamic link library(DLL): thư viện liên kết động.

- Transfer control protocol/Internet protocol(TCP/IP):

Một tập
các tiêu chuẩn (các giao thức) dùng cho quá trình phát truyền và
sửa lỗi đối với các dữ liệu, cho phép chuyển dữ liệu từ máy tính
được ghép với mạng Internet sang các máy tính khác.

 Bên cạnh đó phải kể đến sự hình thành cụm từ trong tiếng
Anh(Phrase) chuyên ngành. Khi ghép các từ trong tiếng anh sẽ tạo
ra một từ mới gần giống nghĩa của các từ riêng biệt hoặc khác
nghĩa với các từ đ
ó:
Desktop computer = Desktop + Computer = Cái bàn + Máy tính
ÎDesktop computer = máy tính để bàn.
 Khi dịch cũng như đọc tài liệu tiếng Anh, không nên “word by
word”, nên dịch và hiểu theo ngữ cảnh, tìm trọng tâm của câu và
ghi nhớ ý nghĩa của nó.
 Một điểm đáng chú ý nữa là khi học tiếng Anh CNTT, người học
không nên học tràn lan các chuyên ngành cùng lúc mà hãy nên đầu
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 6

tư vào từng chuyên ngành riêng biệt. Vì như thế người học có thể
nắm được mạch của chuyên ngành mình đang học cũng như các từ
vựng liên quan đến chuyên ngành đó.
1.2.2. Ngữ pháp
Học ngữ pháp thôi chắc chắn là không đủ để giúp bạn học giỏi tiếng
nh, Nhưng lại là nền tảng cho vốn kiến thức của bạn sau này. Bạn hãy coi
ngữ pháp là một bài tập sinh lý mà các cầu thủ hay vận
động viên vẫn

làm: những bài tập đều đặn để chuận bị trước trận đấu quan trọng.
Trước nhất, để hiểu được tiếng Anh thông thường chúng ta nên nắm rõ
các dạng ngữ pháp cơ bản sau:
¾ Các thì của động từ:
• Hiện tại (Present) -Hiện tại đơn giản (Simple Present).
-Hiện tại tiếp diễn (Present Progressive).
-Hiện tại hoàn thành (Present Perfect ).
-Hiện thại hoàn thành tiếp diễn (Present
Perfect Progressive).
• Quá khứ (Past) -Quá khứ đơn giản (Past Simple).
-Quá khứ tiếp diễn (Past Progressive).
-Quá khứ hoàn thành (Past Perfect).
-Quá khứ hoàn thành tiếp diễn (Past
Perfect progressive).
• Tương lai (Future) -Tương lai đơn giản (Simple Future).
-Tương lai tiếp diễn (Future Progressive).
-Tương lai hoàn thành (Future Perfect).
¾ Câu hỏi: câu hỏi thường, câu hỏi đuôi, câu hỏi gián tiếp,…
¾ Câu bị động và các phương pháp chuyển đổi từ câu bị động sang
câu chủ động và ngược lại.
¾ Chủ ng
ữ: Danh từ, quán từ, sở hữu cách,…
¾ Đại từ: Đại từ nhân xưng, đại từ sở hữu, tính từ sở hữu,..
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 7

¾ So sánh của tính từ và phó từ: so sánh bằng, so sánh hơn, so sánh
hơn nhất, so sánh kép…
¾ Cách thành lập từ: tiếp đầu ngữ, tiếp vị ngữ….
1.3. Kỹ năng nghe tiếng Anh

Nghe là một trong những kĩ năng khó nhất của việc học tiếng Anh nói
chung và tiếng Anh chuyên ngành nói riêng. Khi nghe, người nghe
thường gặp một số khó khăn sau:
-
Không nắm được chủ đề của bài.

-
Quá nhiều thông tin nên không thể nắm bắt được chủ đề bài
nghe.

-
Môi trường luyện tiếng Anh không có hay rất ít.

-
Thời gian và công sức bỏ ra nhiều nên dễ gây nản lòng
người học.

-
Sự cản trở về mặt trí tuệ nên người nghe bị cuốn theo đoạn
văn, từ đó dẫn tới không nắm được những thông tin cần thiết.

-
Không tự tin để giao tiếp do không quen hay do nhút nhát.

-
Rào cản ngôn ngữ do phải dịch từ tiếng Việt sang Anh để
nói hay ngược lại để hiểu.

-
Phát âm không chuẩn nên nghe không được.


-
Có những thông tin không hiểu làm ta phân vân nên không
tập trung tư tưởng để nghe.

-
Không có hiểu biết về lĩnh vực đang nghe.

ÎYêu cầu đặt ra: Làm sao để những người học tiếng Anh có thể nghe
hiểu tiếng Anh thật tốt và rộng hơn nữa là giao tiếp (nghe và nói) bằng
tiếng Anh thật tốt (vì kỹ năng nghe luôn đi kèm với kỹ năng nói).
Tuy nhiên, viêc học đó sẽ không quá khó đối với những người chăm
chỉ và có phương pháp học đúng cách. Nhưng như thế nào là học đúng
cách? Qua tổng kết và thu thập kinh nghiêm thì có một s
ố phương pháp
sau:
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 8

Giai đoạn 1: Sơ cấp - Trung cấp
B1: Nghe cả đoạn: 3 lần để nắm nội dung chính.
B2: Nghe từng câu một. Chú ý đến những điểm nhấn trọng âm,
ngữ điệu. Nói lại theo băng, đĩa đến khi nào thấy nhuyễn thì thôi.
B3: Nghe lại cả đoạn. Nói lại bằng tiếng Anh nội dung chính
của đoạn vừa nghe.
Giai đoạn 2
: Trung cấp (intermediate) trở lên.
B1: Nghe và chép chính tả. Đồng thời nhắc lại theo đúng trọng
âm, ngữ điệu, nhịp điệu.
B2: Nghe và ghi lại nội dung chính của cả bài.

Giai đoạn 3
: Nghe và nói lại nội dung chính của cả đoạn, bài.
Giai đoạn 4
: Dành cho chuyên nghiệp.
Tập dịch cabin. Có nghĩa là băng, người nói tiếng Anh và mình
dịch tiếng Việt và ngược lại. Lúc đầu chậm và sau nhanh dần
.



Ngoài ra, còn một số phương pháp khác tuy không theo trình tự bài
bản nhưng cũng giúp ích rất nhiêu trong việc luyện kỹ năng nghe:
- Tách bỏ đi những thông tin không cần thiết, chú
tâm những thông tin quan trọng để nắm bắt chủ ý bài viết,
không cần phải nghe đầy đủ và hiểu nghĩa từng từ một.
-
Chỉ nghe lướt qua những phần khó hiểu, tránh
phân vân về nó, để tập trung tư tưởng hiểu những phần
trong khả năng cho phép.

-
Sử dụng các phương tiện sẵn có: nghe bản tin
tiếng Anh trên đài, trên tivi, xem phim tiếng Anh có phụ
đề, xem các kênh truyền hình cáp, nghe nhạc Anh, nghe
tiếng Anh online ở các website luyện nghe, hoặc
download file âm thanh và textscript để vừa nghe vừa
kiểm tra, tham gia luyện nghe-nói tiếng Anh ở các diễn
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 9


đàn tiếng Anh, voice chat bằng tiếng Anh với bạn bè
nước ngoài trên Internet,...

-
Thường xuyên nghe tiếng Anh dù ở bất cứ đâu
và bất cứ lúc nào (có thể không cần hiều nội dung hoặc
hiểu thì càng tốt) để những âm thanh ấy dần dần sẽ trở
nên quen thuộc với tai mình, tạo phản xạ nghe hiểu tự
nhiên.

-
Kết hợp nghe nhạc Anh trong lúc làm các việc
khác, nếu hiểu nội dung thì càng tốt.

-
Thường xuyên tham gia vào các câu lạc bộ nói
tiếng Anh, nhà văn hóa thanh niên dành cho những người
muốn rèn luyện tiếng Anh để giao lưu học hỏi với nhiều
người, có nhiều đề tài sôi động, kích thích sự hứng thú.

-
Thay đổi cường độ học cho phù hợp, nên học
mỗi ngày một ít và thường xuyên hơn là lâu lâu mới học
một lần với lượng nhiều, tránh nôn nóng.

-
Cần xác định được mục tiêu và quyết tâm thực
hiện nó.

-

Liên tưởng nội dung câu nói với ngữ cảnh cụ
thể và cố nắm bắt ý nghĩa của nó.

-
Kết hợp việc nghe hiểu từ ngữ tiếng Anh với
việc hình dung hành động cụ thể trong đầu mình.

-
Nên thường xuyên nghe hiểu các tình huống
tiếng Anh trong giao tiếp để tạo phản xạ nghe nhanh khi
gặp tình huống thực tế.

Trên đây là một số phương pháp học nghe tiếng Anh nói chung cũng
như tiếng Anh chuyên ngành CNTT nói riêng. Các phương pháp trên sẽ
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 10

giúp ích rất nhiều cho người học trong quá trình học tiếng Anh chuyên
ngành CNTT nếu ứng dụng một cách linh hoạt cùng với những công cụ
hỗ trợ hữu ích.

Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 11

Chương II: Công cụ lập trình

2.1. Ngôn ngữ C#
C# là một ngôn ngữ rất đơn giản, với khoảng 80 từ khoá và hơn mười
kiểu dữ liệu dựng sẵn, nhưng C# có tính diễn đạt cao. C# hỗ trợ lập trình
có cấu trúc, hướng đối tượng, hướng thành phần (component oriented).

Trọng tâm của ngôn ngữ hướng đối tượng là lớp. Lớp định nghĩa kiểu
dữ liệu mới, cho phép mở rộng ngôn ngữ theo hướng cần giải quyết. C#
có những từ khoá dành cho việc khai báo lớp, phương thức, thuộc tính
(property) mới. C# hỗ trợ đầy đủ khái niệm trụ cột trong lập trình hướng
đối tượng: đóng gói, thừa kế, đa hình.
C# hỗ trợ khái niệm giao diện, interfaces (tương tự Java). Một lớp chỉ
có thể kế thừa duy nhất một lớp cha nhưng có thế thực thi nhiều giao
diện.
C# có kiểu cấu trúc, struct (không giống C++). Cấu trúc là kiể
u nhẹ
hơn và bị giới hạn.Cấu trúc không thể thừa kế lớp hay được kế thừa
nhưng có thể thực thi giao diện.
C# cung cấp những đặc trưng lập trình hướng thành phần như
property, sự kiện và dẫn hướng khai báo (được gọi là attribute). Lập trình
hướng component được hỗ trợ bởi CLR thông qua siêu dữ liệu
(metadata). Siêu dữ liệu mô tả các lớp bao gồm các phương thức và thuộc
tính, các thông tin bảo mật ….
Assembly là một tập hợp các tập tin mà theo cách nhìn của lập trình
viên là các thư viện liên kết động (DLL) hay tập tin thực thi (EXE).
Trong .NET một assembly là một đơn vị của việc tái sử dụng, xác định
phiên bản, bảo mật, và phân phối. CLR cung cấp một số các lớp để thao
tác với assembly.
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 12

C# cũng cho truy cập trực tiếp bộ nhớ dùng con trỏ kiểu C++, nhưng
vùng mã đó được xem như không an toàn. CLR sẽ không thực thi việc
thu dọn rác tự động các đối tượng được tham chiếu bởi con trỏ cho đến
khi lập trình viên tự giải phón
g.

2.2. Lớp, đối tượng và kiểu
Bản chất của lập trình hướng đối tượng là tạo ra các kiểu mới. Một
kiểu (type) biểu diễn một “điều” gì đó. Đôi khi, “điều” đó là những gì
trừu tượng như một bảng dữ liệu hay một chuỗi. Khi khác lại là những gì
hữu hình hơn như một nút trong cửa sổ Windown. Một kiểu là định nghĩa
những thuộc tính chung và cách hoạt độ
ng của “điều” đó.
Giống với các ngôn ngữ lập trình hướng đối tượng khác, một kiểu
trong C# cũng định nghĩa bằng từ khoá class (lớp) còn thể hiện của lớp
được gọi là đối tượng (object).
2.3. Phương thức
Các hành vi của một lớp được gọi là các phương thức thành viên (gọi
tắt là phương thức) của lớp đó. Một phương thức là một hàm (phương
thức thành viên còn gọi là hàm thành viên). Các phương thức định nghĩa
những gì mà một lớp có thể làm.
Phương thức thường đưa ra tên của hành động như là WriteLine( ) hay
AddNumbers( ). Tuy nhiên có một lớp phương thức có tên dặc biệt
Main(), nó không diễn tả một hành động như
ng được chỉ định rõ với CLR
đó là phương thức chính đầu tiên cho lớp của bạn. Khi một chương trình
bắt đầu, CLR sẽ gọi hàm main() đầu tiên và bất cứ chương trình C# nào
cũng phải có hàm main().
Sự khai báo phương thức là một liên hệ giữa người tạo ra phương thức
và người thực hiện phương thức. Giống như là người viết phương thức và
người sử dụng phươ
ng thức là một, nhưng thực tế thì không hoàn toàn
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 13

như vậy. Nó có thể là do một thành viên trong đội phát triển sẽ tạo ra

phương thức và người lập trình viên khác sẽ sử dụng lại nó.
Để khai báo một phương thức, bạn phải chỉ định giá trị trả về của nó.
Khi khai báo phương thức phái có dấu ngoặc đơn (), và lúc có chấp nhân
truyền tham biến, lúc không. Giá trị trả về cho người sử dụng biết kiểu dữ
liệu đó trả v
ề khi phương thức chạy xong. Một số phương thức không trả
về một giá trị cụ thể, gọi là trả về kiểu void và được khai báo bằng từ
khóa void. Và trong C#, một phương thức bắt buộc phải trả về một kiểu
giá trị cụ thể hoặc kiểu void.
2.4. Các kiểu
C# buộc phải khai báo kiểu của đối tượng được tạo. Khi kiểu được
khai báo rõ ràng, trình biên dịch sẽ giúp ngăn ngừa lỗi bằng cách kiểm tra
dữ liệu được gán cho đối tượng có hợp lệ không, đồng thời cấp phát đúng
kích thước bộ nhớ cho đối tượng.
C# phân thành hai loại: loai dữ liệu dựng sẵn (intrinsic (built-in))
và loại do người dùng định nghĩa (user-defined).
C# cũng chia tập kiểu thành hai loại: giá tr
ị và tham chiếu. Biến kiểu
giá trị được lưu trong vùng nhớ stack, còn biến kiểu tham chiếu được lưu
trong vùng nhớ heap.
C# hỗ trợ kiểu con trỏ của C++, nhưng ít khi được sử dụng. Thông
thường con trỏ chỉ được sử dụng khi làm việc trực tiếp với Win API hay
các đối tượng COM.
Loại dữ liệu định sẳn
C# có nhiểu kiểu dữ liệu định sẳn, mỗi ki
ểu ánh xạ đến một kiểu được
hổ trợ bởi CLS (Commom Language Specification), ánh xạ để đảm bảo
rằng đối tượng được tạo trong C# không khác gì đối tượng được tạo trong
các ngôn ngữ .NET khác Mỗi kiểu có một kích thước cố định được liệt kê
trong bảng sau:

Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 14

Các kiểu dựng sẵn:
Kiểu
Kích thước
(byte)
Kiểu .Net Mô tả - giá trị
byte 1 byte Không dấu
char 1 Char Mã ký tự Unicode
bool 1 Boolean True hay False
sbyte 1 Sbyte Có dấu (-128 .. 127)
short 2 Int16 Có dấu (-32768 .. 32767)
ushort 2 Uint16 Không dấu (0 .. 65535)
int 4 Int32 Có dấu (-2147483647 .. 2147483647)
uint 4 Uint32 Không dấu (0 .. 4294967295)
float 4 Single Số thực (≈ ±1.5*10-45 .. ≈ ±3.4*1038)
double

8 Double
Số thực (≈ ±5.0*10-324 .. ≈
±1.7*10308)
decimal 8 Decimal
số có dấu chấm tĩnh với 28 ký số và
dấu chấm
long
8

Int64
Số nguyên có dấu (-

9223372036854775808 ..
9223372036854775807)
ulong 8 Uint64
Số nguyên không dấu (0 ..
0xffffffffffffffff.)

2.4.1. Chọn một kiểu định sẵn
Tuỳ vào từng giá trị muốn lưu trữ mà ta chọn kiểu cho phù hợp. Nếu
chọn kiểu quá lớn so với các giá trị cần lưu sẽ làm cho chương trình đòi
hỏi nhiều bộ nhớ và chạy chậm. Trong khi nếu giá trị cần lưu lớn hơn
kiểu thực lưu sẽ làm cho giá trị các biến bị sai và chương trình cho kết
quả sai.
Kiểu char biểu diễn một ký tự Unicode. Ví dụ “\u0041” là ký tự “A”
trên bảng Unicode. Một số ký tự đặc biệt được biểu diễn bằng dấu “\”
trước một ký tự khác.
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 15

Các ký tự đặc biệt thông dụng:
Ký tự Nghĩa
\’
dầu nháy đơn
\”
dấu nháy đôi
\\
dấu chéo ngược “\”
\0
Null
\a
Alert

\b
lùi về sau
\f
Form feed
\n
xuống dòng
\r
về đầu dòng
\t
Tab ngang
\v
Tab dọc

2.4.2. Chuyển đổi kiểu định sẳn
Một đối tượng có thể chuyển từ kiểu này sang kiểu kia theo hai hình
thức: ngầm hoặc tường minh. Hình thức ngầm được chuyển tự động còn
hình thức tường minh cần sự can thiệp trực tiếp của người lập trình:
short x = 5;
int y ;
y = x; // chuyển kiểu ngầm định - tự động
x = y; // lỗi, không biên dịch được
x = (short) y; // OK
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 16

2.5. Biến và hằng
Biến dùng để lưu trữ dữ liệu. Mỗi biến thuộc về một kiểu dữ liệu nào
đó.
2.5.1. Khởi tạo trước khi dùng
Trong C#, trước khi dùng một biến thì biến đó phải được khởi tạo nếu

không trình biên dịch sẽ báo lỗi khi biên dịch. Ta có thể khai báo biến
trước, sau đó khởi tạo và sử dụng; hay khai báo biến và khởi gán trong
lúc khai báo.
int x; // khai báo biến trước
x = 5; // sau đó khởi gán giá trị
và sử dụng
int y = x; // khai báo và khởi gán cùng lúc
2.5.2. Hằng
Hằng là một biến nhưng giá trị không thay đổi theo thời gian. Khi cần
thao tác trên một giá trị xác định ta dùng hằng. Khai báo hằng tương tự
khai báo biến và có thêm từ khóa const ở trước. Hằng một khi khởi động
xong không thể thay đổi được nữa.
const int HANG_SO = 100;
2.5.3. Kiểu liệt kê
Enum là một cách thức để đặt tên cho các trị nguyên (các trị kiểu số
nguyên, theo nghĩa nào đó tương tự nh
ư tập các hằng), làm cho chương
trình rõ ràng, dễ hiểu hơn. Enum không có hàm thành viên. Ví dụ tạo một
enum tên là Ngay như sau:
enum Ngay {Hai, Ba, Tu, Nam, Sau, Bay, ChuNhat};
Theo cách khai báo này enum ngày có bảy giá trị nguyên đi từ 0 =
Hai, 1 = Ba, 2 = Tư … 7 = ChuNhat.
Mặc định enum gán giá trị đầu tiên là 0 các trị sau lớn hơn giá trị trước
một đơn vị, và các trị này thuộc kiểu int. Nếu muốn thay đổi trị mặc định
này ta phải gán trị mong muốn.
Cú pháp chung cho khai báo một kiểu enum như sau
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 17

[attributes] [modifiers] enum identifier [:base-type]

{
enumerator-list
};
attributes (tùy chọn): các thông tin thêm (đề cập sau)
modifiers (tùy chọn): public, protected, internal, private
(các bổ từ xác định phạm vi truy xuất)
identifer: tên của enum
base_type (tùy chọn): kiểu số, ngoại trừ char
enumerator-list: danh sách các thành viên.
2.5.4. Chuỗi
Chuỗi là kiểu dựng sẵn trong C#, nó là một chuổi các ký tự đơn lẻ.
Khi khai báo một biến chuỗi ta dùng từ khoá string. Ví dụ khai báo một
biến string lưu chuỗi "Hello World"
string myString = "Hello World";
2.5.5. Định danh
Định danh là tên mà người lập trình chọn
đại diện một kiểu, phương
thức, biến, hằng, đối tượng… của họ. Định danh phải bắt đầu bằng một
ký tự hay dấu “_”.
Định danh không được trùng với từ khoá C# và phân biệt hoa thường.
2.6. Biểu thức
Bất kỳ câu lệnh định lượng giá trị được gọi là một biểu thức
(expression). Phép gán sau cũng được gọi là một biểu thức vì nó định
lượng giá trị được gán (là 32)
x = 32;
vì vậy phép gán trên có thể được gán một lần nữa như sau
y = x = 32;
Sau lệnh này y có giá trị của biểu thức x = 32 và vì vậy y = 32.
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 18


2.7. Câu lệnh
Cũng như trong C++ và Java một chỉ thị hoàn chỉnh thì được gọi là
một câu lệnh (statement). Chương trình gồm nhiều câu lệnh, mỗi câu lệnh
kết thúc bằng dấu “;”.
Ví dụ:
int x; // là một câu lệnh
x = 23; // một câu lệnh khác
Ngoài các câu lệnh bình thường như trên, có các câu lệnh khác là: lệnh
rẽ nhánh không điều kiện, rẽ nhánh có điều kiện và lệnh lặp.
2.7.1. Các lệnh rẽ nhánh không điều kiện
Có hai loại câu lệ
nh rẽ nhánh không điều kiện. Một là lệnh gọi phương
thức: khi trình biên dịch thấy có lời gọi phương thức nó sẽ tạm dừng
phương thức hiện hành và nhảy đến phương thức được gọi cho đến hết
phương thức này sẽ trở về phương thức cũ.
Cách thứ hai để tạo các câu lệnh rẽ nhánh không điều kiện là dùng từ
khoá: goto,break, continue, return, hay throw. Cách từ khóa này s
ẽ được
giới thiệu trong các phần sau.
2.7.2. Lệnh rẽ nhánh có điều kiện
Các từ khóa if-else, while, do-while, for, switch-case, dùng để điều
khiển dòng chảy chương trình. C# giữ lại tất cả các cú pháp của C++,
ngoại trừ switch có vài cải tiến.
a. Lệnh If .. else …
Cú pháp:
if ( biểu thức logic )
khối lệnh;
hoặc
if ( biểu thức logic )

khối lệnh 1;
else
Đồ án tốt nghiệp Xây dựng phần mềm hỗ trợ học tiếng Anh CNTT
Nguyễn Thị Thanh Nhàn-CT702 Trang 19

khối lệnh 2;
Ghi chú: Khối lệnh là một tập các câu lện trong cặp dấu “{…}”.
Bất kỳ nơi đâu có câu lệnh thì ở đó có thể viết bằng một khối lệnh.
Biểu thức logic là biểu thức cho giá trị dúng hoặc sai (true hoặc false).
Nếu “biểu thức logic” cho giá trị đúng thì “khối lệnh” hay “khối lệnh
1” sẽ được thực thi, ngược lại “khối lệnh 2” sẽ thực thi. Mộ
t điểm
khác biệt với C++ là biểu thức trong câu lệnh if phải là biểu thức
logic, không thể là biểu thức số.
b. Lệnh switch
Cú pháp:
switch ( biểu_thức_lựa_chọn )
{
case biểu_thức_hằng :
khối lệnh;
lệnh nhảy;
[ default :
khối lệnh;
lệnh nhảy; ]
}
Biểu thức lựa chọn là biểu thức sinh ra trị nguyên hay chuỗi.
Switch sẽ so sánh biểu_thức_lựa_chọ
n với các biểu_thức_hằng để biết
phải thực hiện với khối lệnh nào. Lệnh nhảy như break, goto…để
thoát khỏi câu switch và bắt buộc phải có.

2.7.3. Lệnh lặp
C# cung cấp các lệnh lặp giống C++ như for, while, do-while và
lệnh lặp mới foreach. Nó cũng hổ trợ các câu lệnh nhảy như: goto, break,
continue và return.
a. Lệnh goto

×