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

Ngôn ngữ lập trình tiên tiến ppsx

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.19 MB, 41 trang )

MÔN NGÔ
N
Chư
ơ
PHƯƠNG PHÁP GI

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
BẰNG MÁ
Y
N
NGỮ JAVA
ơ
ng 1

I QUYẾT BÀI TOÁN
Môn : Ngôn ngư Java
Slide 1
Y
TÍNH SỐ
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
 Máy tính số là thiếtbị có thể thực
h
bản(tậplệnh), cơ chế thựchiện
c
đếnlệnh cuối cùng. Danh sách c
á
là chương trình.
 Các lệnh mà máy hiểuvàthực
h


dùng ngôn ngữđểmiêu tả các lệ
n
yếu
tố
:

pháp

ngữ
nghĩa
.
C
Các khái niệm cơ
b
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
yếu
tố
:

pháp

ngữ
nghĩa
.
C
phầntửđểcấu thành 1 lệnh (câu)
lệnh đó.
 Bấtkỳ công việc (bài toán

) ngoài
đ
trình tự nhiềucôngviệcnhỏ hơn.
T
gọilàgiảithuậtgiải quyếtcôngvi

cũng có thểđượcchianhỏ hơn
n
đượcmiêutả bằng 1 trình tự các l

h
iện1số hữuhạncácchứcnăng cơ
c
ác lệnh là tựđộng từ lệnh đầucho
á
clệnh đượcthựchiệnnàyđượcgọi
h
iện được đượcgọilàlệnh máy.Ta
n
h. Ngôn ngữ lậptrìnhcấu thành từ 2

pháp
qui
định
trật
tự
kết
hợp
các
b

ản về máy tính số
Môn : Ngôn ngư Java
Slide 2

pháp
qui
định
trật
tự
kết
hợp
các
, còn ngữ nghĩachobiếtýnghĩacủa
đ
ờinàocũng có thểđược chia thành
T
rình tự các công việcnhỏ này được

c ngoài đời. Mỗicôngviệcnhỏ hơn
n
ữa, ⇒ công việc ngoài đờicóthể

nh máy (chương trình).
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
 vấn đề mấuchốtcủaviệcdùngm
á
là lậptrình(đượchiểu nôm na là
lệnh máy để thể hiệncôngviệc).
củaconngười
(vớisự trợ giúp ng

à
 Với công nghệ phầncứng hiệnn
a
mà tậplệnh máy rấtsơ khai, mỗi
l
việcrấtnhỏ và đơngiản ⇒ công
ới
tì h
t
ất
lớ
(hà
tiệ )
á
Các khái niệm cơ b

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
v
ới
t
r
ì
n
h
t
ự r
ất
lớ

n
(hà
ng
t
r
iệ
u
)
c
á
ngữ máy rấtphứctạp, tốnnhiều
bảo trì, phát triển.
 Ta muốncómáyluậnlývớitập
l
trình) cao cấpvàgầngủihơnvới
này bằng 1 máy vậtlý+1chươn
trình phân giải (interpreter).
á
y tính giải quyếtcôngviệc ngoài đời
qui trình xác định trình tựđúng các
Cho đếnnay,lập trình là công việc
à
y càng nhiềucủa máy tính).
a
y, ta chỉ có thể chế tạo các máy tính
l
ệnh máy chỉ có thể thựchiện1công
việc ngoài đờithường tương đương
á
lệ h

á
Lậ
tì h
bằ
ô

n về máy tính số (tt)
Môn : Ngôn ngư Java
Slide 3
á
c
lệ
n
h
m
á
y ⇒
Lậ
p
t
r
ì
n
h
bằ
ng ng
ô
n
thời gian, công sức, kếtquả rấtkhó
l

ệnh (được đặctả bởingônngữ lập
con người. Ta thường hiệnthựcmáy
gtrìnhdịch (compiler) hay 1 chương
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
 Gọingônngữ máy vậtlýlàN
0
.
ngôn ngữ N
0
sẽ nhận đầuvàolà
ngữ N
1
, phân tích từng lệnh N
1
r

ngôn ngữ N
0
có chứcnăng tươ
n
ngôn ngữ N
1
sang N
0
dễ dàng, đ

N
1
khôngquácaosovớitừng lện
h

 Sau khi có máy luậnlýhiểu đượ
c
Các khái niệm cơ b

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
nghĩavàhiệnthựcmáyluậnlýN
2
có 1 máy luậnlýhiểu đượcngô
n
dễ dàng miêu tả giảithuậtcủabài
 Nhưng qui trình trên chưacóđiể
m
và kiếnthức ngày càng nhiều,
n
ngôn ngữ mớivớitậplệnh ngày
c
miêu tả giảithuậtcàngdễ dàng, g
Trìnhbiêndịch ngôn ngữ N
1
sang
chương trình đượcviếtbằng ngôn

ichuyển thành danh sách các lệnh
n
g đương. Để chương trình dịch từ

phứctạpcủatừng lệnh ngôn ngữ
h

ngôn ngữ N
0
.
c
ngôn ngữ luậnlýN
1
,tacóthểđịnh

n về máy tính số (tt)
Môn : Ngôn ngư Java
Slide 4
1
theo cách trên và tiếptục đếnkhita
n
ngữ N
m
rấtgầngủivớiconngười,
toán cầngiải quyết
m
dừng, vớiyêucầu ngày càng cao
n
gườitatiếptục định nghĩanhững
c
àng gầngủihơnvớiconngười để
ọnnhẹ và trong sáng hơn.
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
 Ngôn ngữ máy vậtlýlàloạingô
n
bình thường có thể dùng được.
C

miêu tả bởicácsố binary (hay hex
a
máy vậtlýcóthể hiểutrựctiếp,
n
khăntrongviệcviếtvàbảotrìchư
ơ
 Ngôn ngữ assembly rấtgầnvới
n
nhấtcủangônngữ assembly tư
ơ
biểu
diễn
dưới
dạng
gợi
nhớ
Ngoà
Các cấp độ n
g
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
biểu
diễn
dưới
dạng
gợi
nhớ
.
Ngoà

niệm"lệnh macro" để nâng sứcm

 Ngôn ngữ cấp cao theo trường ph
á
Tậplệnh củangônngữ này khá
bình thường.
 Ngôn ngữ hướng đốitượng như C
phương pháp cấutrúcchương trì
phát triểnvàthaythế linh kiện.
n
ngữ thấpnhấtmàngườilậptrình
C
ác lệnh và tham số củalệnh được
a
decimal). Đây là loạingônngữ máy
n
hưng con ngườithìgặpnhiềukhó
ơ
ng trình.
n
gôn ngữ máy, những lệnh cơ bản
ơ
ng ứng vớilệnh máy nhưng được
ài
ra
người
ta
tăng
cường
thêm

khái
g
ôn ngữ lập trình
Môn : Ngôn ngư Java
Slide 5
ài
ra
,
người
ta
tăng
cường
thêm
khái

nh miêu tả giảithuật.
á
ilậptrìnhcấutrúcnhư Pascal, C,
mạnh và gầnvớitư duy củangười
++, Visual Basic, Java, C#, cảitiến
nh sao cho trong sáng, ổn định, dễ
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
 Các lệnh củachương trình (code
)
tin (dữ liệu).
 Chương trình giải quyết bài toán
n
khác nhau với tính chấtrất đad

cần 3 thông tin về dữ liệu đó:

- tên nhậndạng (identifier) xác
-
kiểu
dữ
liệu
(type)
miêu
tả
cấu
Dữ liệu của
c
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
-
kiểu
dữ
liệu
(type)
miêu
tả
cấu
- tầmvựctruyxuất (visibility)
nào) truy xuấtdữ liệu.
 Chương trình cổđiển=dữ liệu+
g
 Chương trình con (function, sub
r
chứcnăng được dùng nhiềulần


cho phép cấutrúcchương trình, s
)
sẽ tham khảohoặcxử lý (truy xuất)
n
ào đócóthể truy xuấtnhiềudữ liệu

ng. Để truy xuất1dữ liệucụ thể,ta
định vị trí củadữ liệu.
u
trúc
của
dữ
liệu
c
hương trình
Môn : Ngôn ngư Java
Slide 6
u
trúc
của
dữ
liệu
.
miêu tả phạm vi khách hàng (lệnh
g
iảithuật.
r
outine, ) là 1 đoạncodethể hiện

nhiềuvị trí trong chương trình, nó

ử dụng lại code
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Chương trình = cấu trú
t'tt'
module
(package)
Cấu trúc 1 chư
ơ
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
en
t
ry
'
s
t
ar
t'
c dữ liệu + giải thuật
global data
local data
of module
ơ
ng trình c

đi

n
Môn : Ngôn ngư Java

Slide 7
of

module
local data
of function
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Bộ nhớ
(Memory)
Đ
ơn vị
x
(CPU
chứa code và data
đang thực thi
thực thi từn
của chươn
g
Mô hình máy tính
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
(Memory)
(CPU
Bus gi
a
x
ử lý
)
Các thiết bị

vào ra (I/O)
g lệnh
g
trình
giao tiếp với bên ngoài
(thường là người) để
nhập/xuất tin
số Von Neumann
Môn : Ngôn ngư Java
Slide 8
)
vào

ra

(I/O)
a
o tiếp
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Dữ liệu cần xử lý bằng
máy tính (chữ số, hình
ảnh, âm thanh, )
Qui trình tổn
g
quát để
g
iải qu
y
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM
Xử lý
d
dạng c
Mã hóa dữ liệu
thành dạng
chuỗi bit
Giảiãhỗi
Kết quả có được sau
khi xử lý bằng máy tính
(chữ số, hình ảnh, âm
thanh, )
y
ết bài toán bằn
g

y
tính số
Môn : Ngôn ngư Java
Slide 9
Giải
m
ã
c
h
u
ỗi
bit ra dạng
người, thiết bị
ngoài hiểu được

d
ữ liệu
huỗi bit
Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Trong quá khứ,phương pháp thườ
n
phương pháp từ-trên-xuống (top-dow
Nộidungcủaphương pháp này là x
é
đóthìcầnphảilàmnhững công việc
n
tìm đượclại được phân thành những
cho đến khi những công việcphảilà
m
có thể th

chi

ndễ dàn
g
.
Phương pháp phân
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM


g
Thí dụ việchọclấybằng kỹ sư CNT
T

bao gồm9côngviệcnhỏ hơnlàhọ
c
là họcnmônhọccủahọckỳđó, h

môn đó,
Hình vẽ củaslidekế cho thấytrựcqu
a
n
gsử dụng để phân tích bài toán là
n analysis).
é
txem,muốngiải quyếtvấn đề nào
n
hỏ hơnnào.Mỗicôngviệcnhỏ hơn
công việcnhỏ hơnnữa, cứ như vậy
m
là những công việcthật đơngiản,
tích t

-trên-xuống
Môn : Ngôn ngư Java
Slide 10
T
khoa CNTT ĐHBK TP.HCM có thể
c
từng họckỳ từ 1tới9,họchọckỳ i

c1mônhọclàhọcmchương của
a
ncủaviệc phân tích top-down.

Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Công v
i
giải qu
y
Công việc
A
1
Công
v
A
2
Phương pháp phân t
í
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Công việc
A
11
Công việc
A
12
Công việc
A
1n

i
ệc cần
y

ết (A)
v
iệc Công việc
A
n

í
ch t

-trên-xuống (tt)
Môn : Ngôn ngư Java
Slide 11
Công việc
A
n1
Công việc
A
n2
Công việc
A
nn

Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
Công việc c

≡ đối tượng
Đối tượng
A
1
Đ

ối t
ư
A
Phương pháp phân t
í
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Đối tượng
A
11
Đối tượng
A
12
Đối tượng
A
1n

.

n giải quyết
phức hợpA
ư
ợng
A
2
Đối tượng
A
n


í
ch t

-trên-xuống (tt)
Môn : Ngôn ngư Java
Slide 12
Đối tượng
A
n1
Đối tượng
A
n2
Đối tượng
A
nn
.

Chương 1: Phương pháp giải quyết bài toán bằng máy tính số
MÔN NGÔ
N
Chư
ơ
TH

HI
ỆN
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM


TRONG M
Á
N
NGỮ JAVA
ơ
ng
2
N
DỮ LI

U
Môn : Ngôn ngư Java
Slide 13

Á
Y TÍNH SỐ
Chương 2 : Thể hiện dữ liệu trong máy tính số
Phầntử nhớ nhỏ nhấtcủa máy tín
h
(ta gọilàbit).
Ta kếthợpnhiềuphầntử nhớđểc
ó
dụ ta dùng 8 bit để miêu tả 2
8
=2
5
đượcgọi là byte, đây là 1 ô nhớ tro
n
Bộ nhớ trong của máy tính được
d

chương
trình
đang
thực
thi


1
d
Cơ bản về việc lưu trử v
à
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
chương
trình
đang
thực
thi
.


1
d
nhớđượctruyxuất độclập thông
q
Thường ta dùng chỉ số từ 0-nđể
m
Mặc dù ngoài đờitađã quen dùn
g

phầncứng bên trong máy tính, máy
liệu ở dạng nhị phân. Do đótrongc
niệmnềntảng về hệ thống số và cá
c
h
số chỉ có thể chứa2giátrị :0và1
ó
thể miêu tảđạilượng lớnhơn. Thí
5
6giátrị khác nhau. Dãy 8 bit nhớ
n
gbộ nhớ của máy tính.
d
ùng để chứadữ liệuvàcodecủa
dãy
đồng
nhất
các
ô
nhớ
8
bit
mỗi
ô
à
xử lý tin trong máy tính
Môn : Ngôn ngư Java
Slide 14
dãy
đồng

nhất
các
ô
nhớ
8
bit
,
mỗi
ô
q
ua địachỉ củanó(tênnhậndạng).
m
iêu tảđịachỉ củatừng ô nhớ.
g
hệ thống số thập phân, nhưng về
chỉ có thể chứavàxử lý trựctiếpdữ
hương này, ta sẽ giớithiệu các khái
c
hmiêutả dữ liệu trong máy tính.
Chương 2 : Thể hiện dữ liệu trong máy tính số
Hệ thống số (number system) là
c
thống số gồm3thànhphần chính :
1. cơ số :số lượng ký số (ký h
2. qui luậtkếthợpcáckýsố
3. các phép tính cơ bản trên
c
Tron
g
3 thành

p
hầntrên
,
ch

có thà
n
Cơ bản về
h
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
g
p
,
thống số, còn 2 thành phần2và3t
h
Thí dụ :-hệ thống số thập phân (
h
0,1,2,3,4,5,6,7,8,9.
- hệ nhị phân dùng 2 ký
s
-hệ bát phân dùng 8 ký s

- hệ thập lục phân dùng
1
c
ông cụđểbiểuthị lượng. Mộthệ
iệu để nhậndạng các số cơ bản).
để miêu tả 1lượng nào đó.

c
ác số.
n
h
p
hần 1 là khác nhau
g
iữacách

h
ệ thống số
Môn : Ngôn ngư Java
Slide 15
p
g

h
ìgiống nhau giữacáchệ thống số.
h
ệ thập phân) dùng 10 ký số :
s
ố : 0,1.

: 0,1,2,3,4,5,6,7.
1
6 ký số : 0 đến 9,A,B,C,D,E,F.
Chương 2 : Thể hiện dữ liệu trong máy tính số
Biểudiễncủalượng Q trong hệ thố
n
d

n
d
n-1
d
1
d
0
d
-1
d
-m

Q=d
n
*B
n
+d
n-1
*B
n-1
+ +d
0
*B
0
+
d
trong đómỗid
i
là1kýsố trong hệ t
h

Trong thựctế lậptrìnhbằng ngôn
thống số thậpphânđể miêu tả d

Cơ bản về hệ thống số
-
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
quen). Chỉ trong 1 số trường hợp đ

phân (hay thậplục phân) để miêu t

hợp này, qui luậtbiểudiễncủalượn
g
đơngiảnlà:
d
n
d
n-1
d
1
d
0

Q=d
n
*B
n
+d
n-1

*B
n-1
+ +d
1
*B
1
+d
0
trong đómỗid
i
là1kýsố trong hệ t
h
n
gsố B(B>1)là:
d
-1
*B
-1
+ +d
-m
*B
-m
h
ống B.
ngữ cấp cao, ta thường dùng hệ

liệusố củachương trình (vì đã
-
Qui luật miêu tả lượng
Môn : Ngôn ngư Java

Slide 16

cbiệt, ta mớidùnghệ thống số nhị

1vàigiátrị nguyên, trong trường
g
nguyên Q trong hệ thống số Bsẽ
0
*B
0
h
ống B.
Chương 2 : Thể hiện dữ liệu trong máy tính số
Thí dụ về biểudiễncáclượng trong
-lượng "mườibảy" đượcmiêu
t
17 = 1*10
1
+7*10
0
-lượng "mườibảy" đượcmiêu
t
11 = 1*16
1
+1*16
0
-lượng "mườibảy" đượcmiêu
t
10001 = 1*2
4

+0*2
3
+0*2
2
+0*2
1
+
Cơ bản về hệ th

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Trong môi trường sử dụng đồng thờ
lẫntrongcácbiểudiễncủacáclư
nhậndạng hệ thống sốđượcdùng
t
viết:
-17
D
để xác định sự biểudiễnt
r
-11
H
(hệ thống số thậplụcphâ
n
- 10001
B
(hệ thống số thậpnhị
p
các hệ thống số :

t
ả là 17 trong hệ thậpphânvì:
t
ả là 11 trong hệ thậplụcphânvì:
t
ả là 10001 trong hệ nhị phân vì :
+
1*2
0

ng số -Vài thí dụ
Môn : Ngôn ngư Java
Slide 17
inhiềuhệ thống số, để tránh nhằm
ợng khác nhau, ta sẽ thêm ký tự
t
rong biểudiễn liên quan. Thí dụ ta
r
ong hệ thống số thập phân.
n
.)
p
hân.)
Chương 2 : Thể hiện dữ liệu trong máy tính số
Các phép tính cơ bảntrong1hệ thố
1. phép cộng
2. phép trừ
3. phép chia
4. phép nhân
5. phép dịch trái n ký số

6. phép dịch phải n ký số
Cơ bản về hệ thốn
g
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Ngoài ra do đặc điểmcủahệ nhị ph
â
tính sau (các phép tính luậnlý):
1. phép OR bit
2. phép AND bit
3. phép XOR bit
4.
ng số là :
(+).
(-).
(/).
(*).
(<< n).
(>> n).
g
số - Các phép tính
Môn : Ngôn ngư Java
Slide 18
â
n, hệ nàycòncungcấp1số phép
(|).
(&).
(^).
Chương 2 : Thể hiện dữ liệu trong máy tính số

Thí dụ về các phép tính cơ bản(c
á
hệ nhị phân :
0 1 1 0
+ 0 0 1 1
1 0 0 1
1
0 0
-
0
0 1
0
1 1
Thí dụ về phép
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
á
cgiátrịđều đượcbiểudiễnbằng
1
1
0
1 0 0 1
* 0 1 0 1
1 0 0 1
cộng, trừ, nhân
Môn : Ngôn ngư Java
Slide 19
0
0 0 0

1 0 0 1
1 0 1 1 0 1
Chương 2 : Thể hiện dữ liệu trong máy tính số
1 0 1 1
-1 0
1 0
1 0 1
Thí dụ về các phép tính cơ bản(c
á
hệ nhị phân) :
Thí dụ về
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
0 1
-0 0
1 1
-1 0
0 1
á
cgiátrịđều đượcbiểudiễnbằng
số bị chia
số chia
thương số
phép chia
Môn : Ngôn ngư Java
Slide 20
dư số
Chương 2 : Thể hiện dữ liệu trong máy tính số
Thí dụ về các phép tính dịch ký s


bằng hệ nhị phân) :
00001101
bị dịch trái 2 bi
t
(tương dương
Thí dụ về ph
é
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
00001101
bị dịch phải 2
b
(tương dương

(các giá trịđều đượcbiểudiễn
0000110100
t
thành
với nhân 2
2
)
0
0
é
p dịch ký số
Môn : Ngôn ngư Java
Slide 21
00001101

b
it thành
với chia 2
2
)
00
Chương 2 : Thể hiện dữ liệu trong máy tính số
Đạisố Boolenghiêncứuvề các ph
é
có 2 giá trị 0và1,tương ứng với
h
(hay "không" và "có") của đờithườn
g
xynot xxand yxnand
y
00 1 0 1
01 0 1
Các phép tính c
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
10 0 0 1
11 1 0
BiểuthứcBoolelà1biểuthứctoá
n
Boole trên các toán hạng là các biế
n
é
ptoánthựchiện trên các biếnchỉ
h

ai thái cựcluận lý "sai" và "đúng"
g
. Các phép toán này gồm:
y
x or yxnor yxxor y
01 0
10 1
ủa đại số Boole
Môn : Ngôn ngư Java
Slide 22
10 1
10 0
n
hoc cấu thành từ các phép toán
n
chỉ chứa2trị 0và1.
Chương 2 : Thể hiện dữ liệu trong máy tính số
Các đơn vị đo lường bộ nhớ thường
1. byte : 8bit, có th

miêu tả đư

2. word : 2 byte, có th

miêu tả
3. double word : 4 byte, có thể
nhau.
4
KB (kilo byte)
=2

10
= 1024 b
Các đơn vị nh

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
4
.
KB

(kilo

byte)
=

2
10
=

1024

b
5. MB (mega byte) = 2
20
= 102
4
6. GB (giga byte) = 2
30
= 1024

M
7. TB (tetra byte) = 2
40
= 1024
G
Thí dụ, RAM của máy bạn là 256MB
dùng là :

c 2
8
= 256 giá trị khác nhau.
được 2
16
= 65536 giá trị khác nhau.
miêu tả được 2
32
= 4 tỉ giá trị khác
byte

thường dùng
Môn : Ngôn ngư Java
Slide 23
byte
.
4
KB ≅ 1 triệu byte.
M
B ≅ 1 tỉ byte.
G
B ≅ 1 ngàn tỉ byte.

, đĩa cứng là 30GB.
Chương 2 : Thể hiện dữ liệu trong máy tính số
Tùy ngôn ngữ lập trình mà
cách biểudiễnsố trong máy
có những khác biệtnhất
định. Riêng VC++ có nhiều
phương pháp biểudiễnsố
khác nhau, trong đó 2 cách
thường dùng là số nguyên
Bi

u diễn số ng
u
00
00

01
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
và số thực.
Máydùng1word(2byte)để
chứadữ liệu nguyên (short)
theo qui định sau (khi chứa
vào bộ nhớ thì byte trọng số
nhỏđitrước - LE - Little
Endian) :
01
10
10


11
u
yên trong Java
0
000000 00000000 0
0
000000 00000001 1
.

1111111 11111111
32767
Sự biểu diễngiá trị
Môn : Ngôn ngư Java
Slide 24
1111111

11111111
32767
0
000000 00000000 -32768
0
000000 00000000 -32767
.

1
111111 11111111 -1
Chương 2 : Thể hiện dữ liệu trong máy tính số
miờu tc cỏc giỏ tr nguyờ
n

32767, VC++ cung cpkiu'int'&'l
o
1giỏtr nguyờn vi cựng nguyờn t
c
long miờu t cỏc s nguyờn trong ph

Mỏydựng8byte chad liuth

m *B
e
, m gi l nh tr (0.1
m
Bi

u din s t
h
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
b
63
111
phn nh tr
m
phn s m e
bit du
n
nm ngoi phmvit -32768 n
o
ng', kiu ny dựng 4 byte miờu t

c
nh kiushort.Ktqu l kiuint,

mvit -2 tn2t.

c(Kiu double) theo dng sau :
m
<1), B l c s v e l s m.
h
c trong Java
Mụn : Ngụn ng Java
Slide 25
b
0
52
m
vi c s B = 16
Chng 2 : Th hin d liu trong mỏy tớnh s
Chuikýt l danh sỏch nhiukýt

binbitnh :
mó ASCII dựng 7 bit (dựng lu

1kýt tpkýt m mó
AS
mó ISO8859-1 dựng 8 bit (1
b
m mó ISO8859-1 miờu t

Bi


u din chui
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
mó Unicode trờn Windows d

tpkýt m mó Unico
d
65536.

Hincúnhiuloimóting Vitkh

riquinh licỏchhinth 1s ký t
b mó thng nhttoncu, trong ú

,mikýtcmiờut trong mỏy

n1bytenhng b bit 8) miờu t
S
CII miờu tc l 128.
b
yte) miờu t 1kýt tpkýt

cl256.

ký t trong Java
Mụn : Ngụn ng Java
Slide 26


ng 16 bit (2 byte)

miờu t 1kýt
d
e trờn Windows miờu tcl

c nhau, as dựng mó ISO8859-1
thnh ký t Vit. Riờng Unicode l
cú cỏc ký t Vit.
Chng 2 : Th hin d liu trong mỏy tớnh s
Mó ASCII dựng cỏc giỏ tr (mó) t 0
-
mó t 0-31lcỏcmóiu
k
LF=10 (Line Feed), ESC=27
(
mó 32 miờu t ký t trng, 3
3
Bng mó
A
$
/
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
!
" #
$
% & ' ( ) * + ,
-

.

/

0
@
A B C D E F G H I J K L M N O
P
`
a b c d e f g h i j k l m n o
p
-
127 miờu t cỏckýt :
k
hi

nnh CR=13 (Carriage Return),
(
Escape)
3
miờu t ký t !, theo bng sau :
A
SCII 7 bit
Mụn : Ngụn ng Java
Slide 27
0
1 2 3 4 5 6 7 8 9 : ; < = > ?
P
Q R S T U V W X Y Z [ \ ] ^ _
p

q r s t u v w x y z { | } ~
Chng 2 : Th hin d liu trong mỏy tớnh s
Mó ISO8859-1 dựng cỏc giỏ tr (mó)
mó ký tuquinh ging nh mó
mó t 0-31lcỏcmóiu
k
LF=10 (Line Feed), ESC=27
(
mó 32 miờu t ký t trng, 3
3
Bng mó IS
O
!"#$%&'()*+
/0
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
!

"

#

$

%

&

'


(

)

*

+
,
-
.

/

0
@
A B C D E F G H I J K L M N O
P
`
a b c d e f g h i j k l m n o
p

Ă Â Ê Ô Ơ Ư Đ ă â ê ô ơ - đ



ặ ầ ẩ ẫ ấ ậ è ẻ ẽ
é

ỏ õ ó ọ ồ ổ ỗ ố ộ ờ ở ỡ ớ ợ ù


t 0-256 miờu t cỏckýt (128
ASCII) :
k
hinnh CR=13 (Carriage Return),
(
Escape)
3
miờu t ký t !, theo bng sau :
O
8859-1 (8 bit)
0123456789:;<=>?
Mụn : Ngụn ng Java
Slide 28
0

1

2

3

4

5

6

7


8

9

:

;

<

=

>

?
P
Q R S T U V W X Y Z [ \ ] ^ _
p
q r s t u v w x y z { | } ~


à ả ã á ạ ằ ẳ ẵ ắ
é
ẹ ề ể ễ ế ệ ì ỉ ĩ í ị ò

ủ ũ ú ụ ừ ử ữ ứ ự ỳ ỷ ỹ ý ỵ
Chng 2 : Th hin d liu trong mỏy tớnh s
Mó HBK 1 byte cú cbng cỏc
h
mó t 0-31lcỏcmóiu

k
LF=10 (Line Feed), ESC=27
(
mó 32 miờu t ký t trng, 3
3
Bng mó ting
V
!"#$%&'()*+
/0123456789:
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
!

"

#

$

%

&

'

(

)


*

+
, - .
/

0

1

2

3

4

5

6

7

8

9

:

@ A B C D E F G H I J K L M N O P Q R S
T

` a b c d e f g h i j k l m n o p q r s t u v w x y
z


Ă Â Ê Ô Ơ Ư Đ ă â ê ô ơ - đ à ả ã á ạ

ặ ầ ẩ ẫ ấ ậ è ẻ ẽ é ẹ ề ể ễ
ỏ õ ó ọ ồ ổ ỗ ố ộ ờ ở ỡ ớ ợ ù ủ ũ ú ụ ừ ử ữ ứ ự

h
hiuchnh bng mó ISO8859-1 :
k
hi

nnh CR=13 (Carriage Return),
(
Escape)
3
miờu t ký t !, theo bng sau :
V
it HBK 1 byte
;<=>?
Mụn : Ngụn ng Java
Slide 29
;

<

=


>

?
T
U V W X Y Z [ \ ] ^ _
z
{ | }
~




ẳ ẵ ắ
ế ệ ì ỉ ĩ í ị ò

ỷ ỹ ý ỵ
Chng 2 : Th hin d liu trong mỏy tớnh s
Mó Unicode Windows dựng 2 byte

256 mó ut 0-255ging
mó t 256 trichacỏck
ý
th gii(quỏkh,hintiv
thớ d saul1phnmóting
Mt phn mó ting Vi
mó 1ea0
H
biu din k
ý
t




B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM




H
ý

miờu t 1kýt :
ynh mó ISO8859-1.
ý
t cahuht cỏc ngụn ng trờn
tng lai).
Vit trong mó Unicode :
t Unicode dng sn
mó 1ef9
H
biu din k
ý
t



Mụn : Ngụn ng Java
Slide 30






H
ý
Chng 2 : Th hin d liu trong mỏy tớnh s
S nguyờn (short), s thc (double
)
mó húa d liuph dng, ngoi ra
m
húa riờng mó húa d liu
c
thanh,
Trong chng5v6chỳngtas t
r
ngụn ng VC++ h tr.
Nhng
ta
ó
trỡnh
by
trong
slide
9
(c
Mó húa d liu
B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin

Trng H Bỏch Khoa Tp.HCM
Nhng
ta
ó
trỡnh
by
trong
slide
9
(c
th no thỡ ktqu cavicmóhú
a
cú thclutr v x lý bờn
t
B nh ca mỏy tớnh thng cú du
n
nú chacodevd liucach

1mỏytớnhcúth lutr rtnhiu
trờn cỏc thitb chatin(b nh

CDROM,
)
,chuikýt (char*) l nhng dng
m
i ng dng cú th cncúcỏchmó
c
thự camỡnhnh hỡnh nh, õm
r
ỡnh by chi titcỏckiud lium

chng
1
)
dự
dựng
cỏch

húa
c
ca ng dng
Mụn : Ngụn ng Java
Slide 31
chng
1
)
,
dự
dựng
cỏch

húa
c
a
phi l 1 chui bit (hay chuibyte)
t
rong mỏy tớnh.
n
glng khụng lnnờntach dựng

ng trỡnh ang thcthi.

chngtrỡnhvd liuca chỳng

ngoi) nhamm, acng,
Chng 2 : Th hin d liu trong mỏy tớnh s
code ca1chng trỡnh, chuib
y
thitb chatintrong1phnt c
h
1thitb chatinthng cha
r
xut 1 file, ta dựng tờn nhndn
tờn nhndng canúsdng
t
nghacani dung file), thớ d n
h
ton b nidun
g
lunỏnttn
g
hi

Thit b ch

B Mụn Cụng ngh phn mm
Khoa Cụng ngh Thụng tin
Trng H Bỏch Khoa Tp.HCM
g
g
Nutadựngkhụnggianphng


chatinthỡvỡs lng file quỏ
dng, x lý, (núi chung l qun
l
gii quytvn trờn ta dựn
g
v qun lý cỏc file trờn tng thit
b
y
te miờu t d liu clutr trờn
h
atinlunlýcgilfile.
r
tnhiufile. nhndng v truy
g gỏn cho mifile. d dựng file,
t
ờn ginh (chuikýt miờu t ng
h
file "lunỏnttnghip.doc" cha

pcan
g
idựn
g
mỏ
y
.

a tin - File
Mụn : Ngụn ng Java
Slide 32

g
g
y

t tờn cho cỏc file trờn 1 thitb
lnnờntakhúlũngttờn,nhn
l
ý) tng file.
g
khụng gian cõy th bc t chc
b
chatin.
Chng 2 : Th hin d liu trong mỏy tớnh s
 Để tạo không gian cây thứ
b
(directory).
 thư mụclàphầntử chứanhiều
p
hay thư mục. Thường ta sẽ dùn
g
con có mốiquanhệ mậtthiếtnà
o
ảnh kỷ niệm, thư mụcchứacácfil

Thiết
bị
chứa
tin
vật


(đĩa
mềm
Thiết bị chứa tin : Kh
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Thiết
bị
chứa
tin
vật

(đĩa
mềm
tượng hóa như là1thư mục(ta
g
gốc). Thư mụcgốcchứanhiều
p
con củathư mụcgốcthường là
file. Mỗithư mụcconlạicóthể c
h
cứ thế ta sẽ hình thành 1 cây thứ
 Ta cũng dùng tên gợinhớđểnh

gian cây thứ bậc, ta sẽ dùng k
h
nhậndạng 1 file hay 1 thư mục.
b
ậc, ta dùng khái niệmthư mục
p

hầntử bên trong nó : có thể là file
g
thư mục để chứanhững phầntử
o
đó, thí dụ như thư mụcchứacác
enhạc ưa thích,
m
đĩa
cứng
CDROM
)
được
trừu
ông gian cây thứ bậc
Môn : Ngôn ngư Java
Slide 33
m
,
đĩa
cứng
,
CDROM
,
)
được
trừu
g
ọithư mục đặcbiệt này là thư mục
p
hầntử con bên trong, mỗiphầntử

thư mụcconnhưng cũng có thể là
h
ứanhiềuthư mục con hay file và
bậccácthư mụcvàfile.

ndạng từng thư mục. Trong không
h
ái niệm đường dẫn (pathname) để
Chương 2 : Thể hiện dữ liệu trong máy tính số
Thí dụ về h

Windows
A
u
d
config.sys
Syste
m
Fonts
i
Cây thứ bậc của ổ c:
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
System

w
i
n.com
arial.ttf


thống file
\
d
ioFile VideoFile

USAFilm
VNFilm
ChinaFilm
Môn : Ngôn ngư Java
Slide 34

Dòng đời.mpg
Chương 2 : Thể hiện dữ liệu trong máy tính số
 Đường dẫn (pathname) là thông
t
từ 1vị trí nào đó, nó chứadanh
s
các phầntử mà ta phải điquax
u
cần tìm.
 ta dùng 1 dấungăn đặcbiệt để
nhau trong đường dẫn(trongWin
d
 Tên thư m

c
g
ốcluônlà'
\

'.
Đ
ường dẫn tuyệt
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

g
 Có2kháiniệm đường dẫn:đ
ư
tương đối. Đường dẫntuyệt đối
l
gốc, đường dẫntương đốixuất
directory).
 Trướckhibắt đầuchạy, hệ thốn
g
ứng dụng (theo cơ chế nào đó).
T
quyềnthayđổithư mục working t
h
t
in để tìm kiếm (xác định) 1 phầntử
s
ách chính xác các tên gợinhớ của
u
ất phát từ vị trí đầu để đếnphầntử
ngăncách2têngợinhớ liên tiếp
d
ows, dấungănlà'\')
đối và tương đối

Môn : Ngôn ngư Java
Slide 35
ư
ờng dẫntuyệt đốivàđường dẫn
l
à đường dẫnxuất phát từ thư mục
phát từ thư mụclàmviệc (working
g
sẽ khởi động thư mụcthực thi cho
T
rong quá trình thựcthi,ứng dụng có
h
eo yêu cầuriêngtạitừng thời điểm.
Chương 2 : Thể hiện dữ liệu trong máy tính số
 Xét cây thứ bậccủa ổ c: trên s
l
nhậndạng chính xác file arial.ttf t
r
c:\Windows\Fonts\arial.ttf
 Nếuthư mục working củachươ
n
ta có thể dùng đường dẫntương
đ
arial.ttf

Đường
dẫn
tuyệt
đối
thường

dài
h
Đ
ường dẫn tuyệt
đ
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Đường
dẫn
tuyệt
đối
thường
dài
h
luôn có giá trị bấtchấp ứng dụng
đ
 Đường dẫntương đốithường g

truy xuấtvìứng dụng sẽ thiếtlậ
p
các file mà ứng dụng truy xuất)
working cụ thể.
 Trong 1 vài trường hợp đặcbiệt,
ngay cả nó dài và phứctạphơn đ
l
ide x, đường dẫntuyệt đốisausẽ
r
ong thư mục'Fonts':
n

g trình hiện là c:\Windows\Fonts thì
đ
ốisauđây để xác định file arial.ttf :
hơn
đường
dẫn
tương
đối
nhưng

đ
ối và tương đối (tt)
Môn : Ngôn ngư Java
Slide 36
hơn
đường
dẫn
tương
đối
nhưng

đ
ang ở thư mục working nào.

nhơn(đasố chỉ chứatênfilecần
p
thư mục working là thư mụcchứa
nhưng chỉ có giá trị với1thư mục
ta phảidùngđường dẫntương đối
ường dẫntuyệt đối!

Chương 2 : Thể hiện dữ liệu trong máy tính số
 Hình dạng và cấutrúccủa1hệ th
người dùng thiếtlậpnhờ các tác
tạo/xóa file, copy/move file/thư mụ
c
 Nhưng trướckhithựchiện1tác
v
file : làm hiểnthị cấutrúccủahệ th
nó dễ dàng.
 Hệ thống dùng nhiềucơ chế khác
ời

1
t
á
hế
Quản lý h

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
ngư
ời

ng.
1
t
rong c
á
ccơ c

hế
m
mỗifile1số thuộc tính truy xuất,
m
:
 Read Only, nếu=1thìh

xóa/hiệuchỉnh phầntử.
 Hidden, nếu=1thìhệ thốn
g
các ứng dụng duyệtfile.
 Archive đượcthiếtlập=1
n
(phụcvụ cho cơ chế backup
t
ống file của1thiếtbị chứatinsẽ do
vụ phổ biếnnhư :tạo/xóa thư mục,
c
từ nơi này đếnnơikhác.
v
ụ nào đó, ngườidùngthường duyệt
ống file ở 1dạng nào đó để quan sát
nhau để bảovệ việctruyxuấtfilebởi
à
Wi d
9


kết
h

ới

thống file
Môn : Ngôn ngư Java
Slide 37

Wi
n
d
ows
9
x

ng

kết
h
ợpv
ới
m
ỗithuộc tính đượclưutrữ trong 1 bit

thống không cho các ứng dụng
g
sẽ dấu không hiểnthị phầntử bởi
n
ếuphầntử bị hiệuchỉnh nộidung
t
ăng dần).
Chương 2 : Thể hiện dữ liệu trong máy tính số

 Tấtcả tác vụ liên quan đếnhệ th

thống file.
 hệ thống sẽ cung cấp1ứng dụ
n
thựchiệncáctácvụ quảnlýfile.
T
tiện ích "Windows Explorer" để qu
 Có 3 cách phổ biến để chạy1ứn
g
Tiện ích quản
l
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
1. double-clic
k
vàoiconmiêut
(phảitạoiconchương trình t
r
2. duyệt ứng dụng từ menu
S
Explorer
3. vào menu Start.Run, rồinh

xác định file chương trình và

ng file đượcgọilàtácvụ quảnlýhệ
n
g(tiện ích) để ngườidùngdễ dàng

T
hí dụ trên Windows ta thường dùng
ảnlýhệ thống file.
g
dụng (tiệních):

l
ý hệ thống file
Môn : Ngôn ngư Java
Slide 38

ứng dụng trên màn hình desktop
r
ước khi dùng cách chạy này).
S
tart.Programs.Accessories.Windows

phànglệnh "explorer" (đường dẫn
các tham số hàng lệnh).
Chương 2 : Thể hiện dữ liệu trong máy tính số
MenuBar chứa tất cả
tác vụ mà ứng dụng
hỗ trợ
Toolbar chứa các
icon tác vụ thường
dùng

Cửa sổ của WE & các
p
Bộ Môn Công nghệ phần mềm

Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
TreeCtrl hi

n thị hệ
thống file dạng cây
ListCtrl hiển thị các
phần tử trong thư mục
StatusBar
Taskbar
p
hần tử giao diện chính
Môn : Ngôn ngư Java
Slide 39
Chương 2 : Thể hiện dữ liệu trong máy tính số
Click vào ô - để thu
nhỏ nội dung thư mục
Click vào ô + để chi
tiết hóa nội dung thư
mục.
ố ấ
Các thao tác du
y
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Nhưng t

t nh


t là
double-click vào tên
thư mục để chi tiết
hóa/thu nhỏ nội dung
Click vào tên thư mục
để hiển thị nội dung
y
ệt hệ thống file
Môn : Ngôn ngư Java
Slide 40
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình chung để thực hiện tác
vụ trên 1 hay nhiều phần tử
nào đó là :
1. chọn 1 hay nhiều phần tử
cần xử lý.
2. chọn option trong menu
hay icon trong toolbar thực
Các tác v

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
hay

icon

trong

toolbar


thực

hiện tác vụ mong muốn.
Chọn nhiều phần tử liên tiếp :
1. chick vào phần tử đầu,
2. ấn và giử phím Shift,
3. click vào phần tử cuối.
4. thả phím Shift.

xử lý file
Môn : Ngôn ngư Java
Slide 41
Chương 2 : Thể hiện dữ liệu trong máy tính số
Chọn nhiều phần tử rời rạc :
1. chick vào phần tử đầu,
2. ấn và giử phím Ctrl,
3. dời mouse đến từng phần
tử cần chọn rồi click vào
nó.
ề ầ
Các tác v

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
4. lặp lại bước 3 nhi

u l


n
cho nhiều phần tử
5. thả phím Ctrl.

xử lý file
Môn : Ngôn ngư Java
Slide 42
Chương 2 : Thể hiện dữ liệu trong máy tính số
Thường việc tạo file mới
được thực hiện bên trong
ứng dụng. Qui trình tạo
mới 1 thư mục/file trong
WE như sau :
1. duyệt cây thư mục
trong cửa sổ bên trái
và ch

n thư m

c mà
Tạo thư m

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
ọ ụ
ở đó bạn muốn tạo
thư mục/file mới.
2. chọn menu File.New
3. nếu muốn tạo thư

mục, chọn Folder.
4. nếu muốn tạo file,
chọn loại file trong
danh sách.

c/file mới
Môn : Ngôn ngư Java
Slide 43
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình xóa 1 thư mục/file
trong WE như sau :
1. duyệt cây thư mục
trong cửa sổ bên trái
và chọn thư mục mà ở
đó bạn muốn xóa thư
mục/file.
2.
chọn các phầntử cần
Xóa thư mục/f
i
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
2.
chọn

các

phần


tử

cần
xóa trong ListCtrl bên
phải.
3. chọn menu File hay ấn
phải chuột vào vị trí
chọn các phần tử để
hiển thị menu các tác
vụ có thể thực hiện.
4. chọn option "Delete"
i
le đang tồn tại
Môn : Ngôn ngư Java
Slide 44
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình copy thư mục/file
trong WE như sau :
1. duyệt cây thư mục
trong cửa sổ bên trái
và chọn thư mục mà ở
đó bạn muốn copy thư
mục/file.
2.
chọn các phầntử cần
Copy thư mục/fi
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
2.

chọn

các

phần

tử

cần

copy trong ListCtrl bên
phải.
3. chọn menu Edit hay ấn
phải chuột vào vị trí
chọn các phần tử để
hiển thị menu các tác
vụ có thể thực hiện.
4. chọn option "Copy"
le vào clipboard
Môn : Ngôn ngư Java
Slide 45
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình dán thư mục/file từ
clipboard vào thư mục
chứa như sau :
1. duyệt cây thư mục
trong cửa sổ bên trái
và chọn thư mục mà ở
đó bạn muốn dán thư
m


c/file.
Dán thư mục/fi
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

2. chọn menu Edit để
hiển thị menu các tác
vụ có thể thực hiện.
3. chọn option "Paste"
le từ clipboard
Môn : Ngôn ngư Java
Slide 46
Chương 2 : Thể hiện dữ liệu trong máy tính số
Việc di chuyển thư mục/file được
thực hiện bởi 3 tác vụ
copy/paste/delete như đã
được trình bày. Qui trình
move thư mục/file khác như
sau :
1. duyệt cây thư mục trong
cửa sổ bên trái và chọn
thư mụcmàở đóbạn
Di chuy

n (mo
v
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM
thư

mục





đó

bạn
muốn copy thư mục/file.
2. chọn các phần tử cần copy
trong ListCtrl bên phải.
3. chọn menu Edit để hiển thị
menu các tác vụ có thể
thực hiện.
4. chọn option "Move to
Folder" và xác định thư
mục đích.
v
e) thư mục/file
Môn : Ngôn ngư Java
Slide 47
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình chạy ứng dụng và
load file vào bộ nhớ để
hiệu chỉnh nội dung file
như sau :

1. duyệt cây thư mục trong
cửa sổ bên trái và chọn
thư mục file cần hiệu
chỉnh.
2
chọn file cầnhiệuchỉnh
Load file vào bộ
n
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
2
.
chọn

file

cần

hiệu

chỉnh
trong ListCtrl bên phải.
3. ấn phải chuột vào file
chọn để hiển thị menu
các tác vụ có thể thực
hiện.
4. chọn option "Open with"
và xác định ứng dụng
được dùng để hiệu

chỉnh file.
n
hớ đ

hiệu chỉnh
Môn : Ngôn ngư Java
Slide 48
Chương 2 : Thể hiện dữ liệu trong máy tính số
Qui trình làm hiển thị cửa sổ
thông tin thư mục/file như
sau :
1. duyệt cây thư mục trong
cửa sổ bên trái và chọn
thư mục/file cần hiển thị
thông tin.
2. chọn thư mục/file cần
hiểnthị thông tin trong
Hi

n thị cửa s

thô
n
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
hiển

thị


thông

tin

trong

ListCtrl bên phải.
3. ấn phải chuột vào file
chọn để hiển thị menu
các tác vụ có thể thực
hiện.
4. chọn option "Properties"
để làm hiển thị cửa sổ
thông tin của thư
mục/file tương ứng.
n
g tin về file/thư mục
Môn : Ngôn ngư Java
Slide 49
Chương 2 : Thể hiện dữ liệu trong máy tính số
Khi cửa sổ thông tin của thư
mục/file đã được hiện thị,
chọn trang
general/Version để thấy
các thông tin tương ứng.
Trang bên phải là trang
General.
1. xem các thuộc tính file.
2
nếumuốn thay đổi

Xem và hiệu chỉnh thu

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
2
.
nếu

muốn

thay

đổi

thuộc tính nào đó, ấn
chuột vào checkbox
tương ứng. Thuộc tính
sẽ chuyển từ không
thành có hay ngược lại.
3. nếu muốn cập nhật các
hiệu chỉnh thì ấn chuột
vào button OK.

c tính file/thư mục (tt)
Môn : Ngôn ngư Java
Slide 50
Chương 2 : Thể hiện dữ liệu trong máy tính số
MÔN NGÔ
N

Chư
ơ
T

NG QUÁT
V
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
BẰNG J
B
N
NGỮ JAVA
ơ
ng
3
V
Ề L

P TRÌNH
Môn : Ngôn ngư Java
Slide 51

B
UILDER
Chương 3 : Tổng quát về lập trình JBuilder
Cấu trúc của 1 ứng dụn
g
Chương trình = cấu tr
ú

t'tt'
module
(package)
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
en
t
ry
'
s
t
ar
t'
g
được lập trình cấu trúc
ú
c dữ liệu + giải thuật
global data
local data
of module
Môn : Ngôn ngư Java
Slide 52
of

module
local data
of function
Chương 3 : Tổng quát về lập trình JBuilder
Xét cấutrúcchương trình cổđiển

c
điểm chính sau :
1. rấtkhóđảmbảo tính nhấtqu
á
vì bấtkỳ lệnh nào trong hàm n
à
2. nếuchương trình cần đồng th

thì cơ chế lậptrìnhcấutrúc
'
instance
'
này
Từ lập trình cấ
u
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
instance
này
.
Để khắcphục2nhược điểm chính tr
ê
ta sẽ lậptrìnhtheohướng đối
Programming) trong đóchương trìn
h
tác nhau (xem slide kế tiếp).
Visual Basic là ngôn ngữ hỗ trợ việc
nữaVBcònlàmôitrường lậptrìnhtr


c
ủaslidetrước, ta thấycó2nhược
á
nvàđúng đắncủadữ liệutoàncục
à
ocũng có thể truy xuất chúng.

inhiều 'instance' của cùng 1 module
không cho phép tạotựđộng các
u
trúc đến OOP
Môn : Ngôn ngư Java
Slide 53
ê
n(vàbổ sung nhiều ưu điểm khác),
tượng (OOP - Object Oriented
h
là 1 tậpcácđốitượng sống tương
lậptrìnhtheohướng đốitượng, hơn

c quan (visual) nên rấtdễ dùng.
Chương 3 : Tổng quát về lập trình JBuilder
Chương trình = tập các
đ
entry
đối tượng
(object)
Cấu trúc của 1
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM
entry
đ
ối tượng tương tác nhau
local data
of object
ứng dụng OOP
Môn : Ngôn ngư Java
Slide 54
of

object
local data
of operation
Chương 3 : Tổng quát về lập trình JBuilder
Đ
ối tượn
g
~ Mô hình đốitượng quan niệmchươn
g
và tương tác với nhau.
~ Đốitượng bao gồmnhiều thành phần
 thuộctính(attribute) : mang 1 gi
á
 tác vụ (operation) : thựchiện1c
ô
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Interface

(abstract type)
g
(Object)
g
trình bao gồmcácđốitượng sinh sống
,mỗi thành phầnthuộc1trong2loại:
á
trị nhất định tạitừng thời điểm.
ô
ng việcnàođó.
Implementation
(class)
Môn : Ngôn ngư Java
Slide 55
Chương 3 : Tổng quát về lập trình JBuilder
Ki

u trừu tượn
g
~ Abstract type (type) định nghĩain
~ Interface là tậphợp các 'entry'
m
tượng.
~ Dùng signature để định nghĩam

 tên method (operation, functi
o
 danh sách tham số hình th

th ộ

tí h

t
à
hiề
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
th
u

c

n
h
:

n,
t
ype v
à
c
hiề
u
 đặctả chứcnăng củametho
d
~ Dùng abstract type (chứ không
p
thuộc tính, tham số hình thức.
~ User không cầnquantâmđến

tượng.
g
(Abstract type)
terface sử dụng đốitượng.
m
à bên ngoài có thể giao tiếpvới đối

i 'entry'. Signature gồm:
o
n)

c, mỗithamsốđược đặctả bởi3
di
h ể
(IN
OUT
INOUT)
Môn : Ngôn ngư Java
Slide 56
di
c
h
uy

n
(IN
,
OUT
,
INOUT)

.
d
(thường ở dạng chú thích).
p
hải class) để đặctả kiểu cho biến,
class (hiệnthựccụ thể)của đối
Chương 3 : Tổng quát về lập trình JBuilder
Class (Impl
e
~ Class định nghĩa chi tiết hiện
t
 định nghĩa các thuộc tính
d
tính xác định trạng thái củ
a
 ki

u của thuộc tính có th


l
ký tự, chuỗi ký tự, ) hay '
a
sau thuộc tính chứa tham k
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
sau

thuộc


tính

chứa

tham

k
 coding các method và các
~
Đ
ịnh nghĩa các method tạo v
à
~
Đ
ịnh nghĩa các method 'const
r
~ User không cần quan tâm đế
n
e
mentation)
t
hực đối tượng :
d
ữ liệu : giá trị của tất cả thuộc
a
đối tượng.
l
à type c


đi

n (số nguyên, thực,
a
bstract type', trong trường hợp
khảo đến đốitượng khác
Môn : Ngôn ngư Java
Slide 57
khảo

đến

đối

tượng

khác
.
'internal function'.
à
xóa đối tượng.
r
uctor' và 'destructor'.
n
class của đối tượng.
Chương 3 : Tổng quát về lập trình JBuilder
Tính bao đóng
(
~ Bao đóng : che dấumọic
h

không cho bên ngoài thấyvà
t
cao giữacácđốitượng (hay
t
đốitượng rấtthấp), nhờđód

 che dấucácthuộctínhdữ
1thuộc tính, ta tạo2me
t
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
sát việctruyxuấtvàched

 che dấuchitiếthiệnthực
c
 che dấu các 'internal functi
(
encapsulation)
h
itiếthiệnthựccủa đốitượng,
t
ruy xuất ⇒ đảmbảo tính độclập
t
ính kết dính - cohesion giữacác

bảotrì,pháttriển ứng dụng :
liệu:nếucần cho phép truy xuất
t
hod get/set tương ứng để giám

Môn : Ngôn ngư Java
Slide 58

uchitiếthiệnthực bên trong.
c
ác method.
on' và sự hiệnthựccủa chúng.
Chương 3 : Tổng quát về lập trình JBuilder
Tính thừa kế
~ Viết1ứng dụng OOP là đị
n
đốitượng cấu thành ứng dụn
~ Tính thừakế cho phép gi
type/class : ta có thểđịnh ng
h
đầumàbằng cách kế thừa
c
nghĩa thêm các chi tiếtmới
m

Đa
thừa
kế
hay
đơn
thừa
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM


Đa
thừa
kế
hay
đơn
thừa
 Mốiquanhệ supertype/su
 có thể 'override' sự hiện
t
kếtquả override chỉ có t
á
class con.
 Đốitượng của class con
c
cha nhưng ngượclạithìk
(inheritance)
n
hnghĩa các type/class củacác
g.
ảmnhẹ công sức định nghĩa
h
ĩa các type/class không phảitừ
c
ác type/class có sẵn, ta chỉđịnh
m
àthôi(thường khá ít).
kế
Môn : Ngôn ngư Java
Slide 59
kế

.
btype và superclass/subclass.
t
hựccácmethodcủa class cha,
á
cdụng trên các đốitượng của
c
óthểđóngvaitròcủa đốitượng
hông đúng.
Chương 3 : Tổng quát về lập trình JBuilder
Tính bao gộp
 1 đối tượng có th

chứa nhiề
u
hệ bao gộp 1 cách đệ qui giữ
a
 Có 2 góc nhìn về tính bao gộp
Góc nhìn ngữ nghĩa
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
O
1
O
2
O
3
O
O

4
O
5
(aggregation)
u
đối tượng khác nhờ mối quan
a
các đối tượng.
: ngữ nghĩa và hiện thực.
Góc nhìn hiện
thực
O
Môn : Ngôn ngư Java
Slide 60
O
1
O
2
O
3
O
4
O
5
Chương 3 : Tổng quát về lập trình JBuilder
Thông điệ
p
~ Thông điệp là 1 phép gọi tác
v
khảo.

~ Thông điệp bao gồm 3 phần :
 tham khảo đến đối tượng
đ
 tên tác vụ muốn gọi.

da
nh
sác
h
t
h
a
m
số

t
h
ực

cầ
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
danh

sách

tham

số


thực

cầ
tác vụ.
 ví dụ : aCircle.Draw (pWn
d
 truy xuất thuộc tính trong i
n
aCircle.Radius = 10 ≡ a
C
r = aCircle.Radius ≡ r
=
~ Thông điệp là phương tiện gi
a
giữa các đối tượng.
p
(Message)
v
ụ của 1 đối tượng từ 1 tham
đ
ích.

n
t
r
uyề
n
t
h

eo

(
h
ay
nh

n v


từ)
Môn : Ngôn ngư Java
Slide 61
ần

truyền

theo

(hay

nhận

về

từ)
d
)
n
terface :

C
ircle.SetRadius(10);
=
aCircle.GetRadius();
a
o tiếp (hay tương tác) duy nhất
Chương 3 : Tổng quát về lập trình JBuilder
Xem lạislide9miêutả qui trình t
ổn
quyết1vấn đề ngoài đời, ta t
h
phần chính :
1. giao diệnngười dùng :là
tác vớichương trình để nh

sát hoạt động củachương
dùn
g
là t
ập
các đốitư

n
g
g
Hai thành phần chí
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
g

ập
ợ g
g
nhiều đốitượng nhỏ hơn
n
listbox, treeview
2. giảithuậtxử lý bên trong
các đốitượng giao diệnvà
Mỗi method là danh sách c
á
để miêu tả giảithuậtmàme
t
n
g quát củaviệcdùngmáytínhgiải
h
ấy1ứng dụng gồm2phần thành
phương tiệnchongườidùngtương

p/xuấtdữ liệu, để điềukhiển/giảm
trình. Trong OOP, giao diệnngười
g
iao di

nnhư form
,
mỗiformchứa
nh của 1 ứng dụng
Môn : Ngôn ngư Java
Slide 62
g


,
n
hư menu, toolbar, button, textedit,
: đượcthể hiệnbởi các method của
các đốitượng bên trong ứng dụng.
á
clệnh thựcthi(cấutrúcđiềukhiển)
t
hod thựchiện.
Chương 3 : Tổng quát về lập trình JBuilder
Định nghĩacácđốitượng giao diện
1côngviệcrấtkhókhănvàtốnnhiề
Để giảmnhẹ công sức định nghĩa
trường lậptrìnhtrực quan (visual)
đ
thường dùng và cung cấpcôngcụ
đ
giao diệncủa ứng dụng bằng cách
t
sẵnnày:ngườilậptrìnhđóng v
a


Thiết kế trực quan cá
c
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
thước/di chuy


nvị trí các ph

ntử gi
Ngoài ra môi trường trực quan còn
đốitượng giao diệnmới(ActiveXC
đượcviếtsauđó. Qui trình tạoviết

là viết ứng dụng bằng cách lắpghé
như việclắp máy tính từ các linh ki

keyboard, monitor,
bằng cách viếtcodetường minh là
ucôngsức, thời gian.
các đốitượng giao diện, các môi
đ
ãviếtsẵn1sốđốitượng giao diện
để
ngườilậptrìnhthiếtkế trựcquan
t
ích hợpcácđốitượng giao diệncó
a
itròhọasĩđểvẽ/hiệuchỉnh kích

c
đối tượng giao diện
Môn : Ngôn ngư Java
Slide 63
ao diệnc


nchoứng dụng.
cho phép ngườilậptrìnhtự tạocác
ontrol) để dùng trong các ứng dụng

ng dụng theo cơ chế này đượcgọi
p các linh kiệnphầnmềm, nó giống

nphầncứng như CPU, RAM, disk,
Chương 3 : Tổng quát về lập trình JBuilder
Control buttons
Window ≡ Form,
Dialogbox
Title bar
Editbox
Các đối tượng giao
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Button
diện có trong VC++
Môn : Ngôn ngư Java
Slide 64
Chương 3 : Tổng quát về lập trình JBuilder
Static text
DriveListBox
Combobox ≡
Editbox + ListBox
Các đối tượng giao d
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM
Tree Control
ListBox
Picture
iện có trong VC++ (tt)
Môn : Ngôn ngư Java
Slide 65
Chương 3 : Tổng quát về lập trình JBuilder
Group Box
Radio Button
Các đối tượng giao d
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Checkbox
iện có trong VC++ (tt)
Môn : Ngôn ngư Java
Slide 66
Chương 3 : Tổng quát về lập trình JBuilder
MenuBar
Toolbar
Button
Pop-up Menu
Các đối tượng giao d
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
1 window chứa 1
document của ứng
dụng

StatusBar
iện có trong VC++ (tt)
Môn : Ngôn ngư Java
Slide 67
Chương 3 : Tổng quát về lập trình JBuilder
Đốitượng giao diệncónhững tính c
h
ngoài ra chúng còn có 1 sốđặc điểm
Đốitượng giao diệncũng đượccấut
h
và tác vụ.
Mỗi đốitượng giao diệnchứakhá
n
loạitrạng thái khác nhau :
 các thuộc tính xác định vị trí và kí
c
Các tính chất chung của
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
 các thuộc tính xác định tính
BackColor,
 các thuộc tính xác định hành vi :
E

h
ấtgiống nhưđốitượng bình thường,
riêng.
h
ành từ 2loại thành phần:thuộc tính

n
hiềuthuộctínhliênquanđếnnhiều
c
hthước : Left, Top, Height, Width


các đối tượng giao diện
Môn : Ngôn ngư Java
Slide 68
ch

thi

nthị : Caption, Picture,
E
nable,
Chương 3 : Tổng quát về lập trình JBuilder
Khi tạotrựcquan1đốitượng giao di

cho các thuộc tính, thường ta chỉ cầ
n
đượcyêucầuriêng.Có2cáchđể hi

1. trực quan thông qua cửasổ thu

2. lập trình truy xuấtthuộc tính của
Hiệu chỉnh thuộc tính
c
di


Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

n, môi trường đãgángiátrị ban đầu
n
thay đổi1vàithuộc tính là đáp ứng

uchỉnh giá trị 1thuộc tính :

c tính của đốitượng giao diện.
đốitượng giao diện.
c
ủa các đối tượng giao

n
Môn : Ngôn ngư Java
Slide 69
Chương 3 : Tổng quát về lập trình JBuilder
Mỗi đốitượng giao diệncókhánhiềut
á
là hàm xử lý biếncố vì cơ chế gọihà
m
ứng dụng thông qua sự tương tác trực
t
khởihàmxử lý tương ứng chạy.
Biến cố -Hà
m
Thí dụ khi ta ấnchuột
vào button tên "IDC_C",

hệ thống tạorabiếncố

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
"BN_CLICKED" đ

kích
khởihàmOnC()chạy.
á
cvụ (method), hầuhết chúng đượcgọi
m
này chủ yếulàtrựctiếptừ người dùng
t
iếpvới đốitượng, từđótạobiếncố kích
m
xử lý biến cố
Môn : Ngôn ngư Java
Slide 70
Chương 3 : Tổng quát về lập trình JBuilder
1. chọnmenu
View.ClassWizard để
hiễnthị cửasổ code.
2. chọn tên class sẽ chứa
hàm xử lý biếncố.
3. chọnbiếncố cầntạo
Cách tạo hàm xử lý
b
Qui trình tổng quát củaviệctạohàmxử
l

là dùng ClassWizard :
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
hàm xử lý trong danh
sách Objects IDs, chọn
biếncố tương ứng rồi
ấn button Add function.
4. sử dụng kiếnthứcvề
giảithuật & cú pháp
ngôn ngữ VC++ để viết
code cho hàm xử lý.
b
iến cố của đối tượng
l
ýcho1biếncố nào đócủa1đốitượng
Môn : Ngôn ngư Java
Slide 71
Chương 3 : Tổng quát về lập trình JBuilder
1. Trướchếtphảinắmbắtyêucầuph

ứng dụng phảicungcấp cho người
2. Phân tích sơ lượctừng chứcnăn
g
thành chứcnăng tương ứng.
3. Thiếtkế chi tiết các class phân tích
cũng như phát họagiảithuậtcủatừ
4. Hiệnthựcphầnmềmbằng VC++ g

ế

ế
T

ng kết qui trình viết
1
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
1. thi
ế
tk
ế
trựcquancácform
g
nhiềuphầntử giao diện, các p
h
khôngtaphảitạothêm1sốđối
Ứng vớimỗiphầntử giao diện
1số thuộc tính cầnthiết.
2. tạobiếnkếthợpvớiphầntử
g
3. tạohàmxử lý biếncố cho cá
c
diệnrồiviếtcodechotừng hàm

nmềm để xác định các chứcnăng mà
dùng.
g
và phát họa các class phân tích cấu
:xácđịnh các thuộctínhvàcáctácvụ

ng tác vụ.

m3côngviệc chính :

1
ứng dụng bằng VC++
Môn : Ngôn ngư Java
Slide 72
g
iao diệnngườidùng:m

iformchứa
h
ầntử giao diệnthường đãcósẵn, nếu
tượng giao diệnmới(ActiveXControl).
vừatạo ra, nên thiếtlậpgiátrịđầucho
g
iao diện để truy xuấtnótừ lập trình.
c
biếncố cầnthiếtcủacácphầntử giao
xử lý biếncố vừatạora.
Chương 3 : Tổng quát về lập trình JBuilder
Chư
ơ
QUI TRÌNH THIẾ
T
MÔN NGÔ
N
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM
GIAO DIỆN C

A

JBUI
L
ơ
ng 4
T
KẾ TR

C QUAN
N
NGỮ JAVA
Môn : Ngôn ngư Java
Slide 73


NG DỤNG BẰNG
L
DER
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thí dụ l

Bài tập này cho
phép bạn làm quen
với qui trình viết 1
chương trình Java
bằng JBuilder. Thí

dụ viết 1 trình
Calculator đơn
giản có giao diện
(i diệ ủ
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
sau
(
g
i
ao
diệ
n c

a
tiện ích Calculator
trong Windows ở
chế độ Standard) :

p trình
Môn : Ngôn ngư Java
Slide 74
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thí dụ l

Với các chi tiết menu
như sau :
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM

p trình
Môn : Ngôn ngư Java
Slide 75
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Dự Án (Project) & Ứ
n
1 ứng dụng java đượccấu thành từ
n
 Các phầntử giao diện
 Các file code *.java miêu tả sự
h
 Các đốitượng khác như các p
a
được dùng cho giao diện,
Để
quản

ứng
dụng
được
dễ
dàn
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Để
quản


ứng
dụng
được
dễ
dàn
(Project). Dự ánlà1câythứ bậcc
á
ứng dụng là qui trình tạodự án, thê
m
dự án.
Thao tác để thựchiệncáctácvụ trê
n
biếttrênhệ thống file thứ bậccủam
á
n
g Dụng (Application)
n
hiều đốitượng thuộcnhiềuloại:
h
iệnthựccủa các class.
a
ckage đượcdùnglại, các tài nguyên
ng
ta
sử
dụng
phương
tiện
"
Dự

án
"
Môn : Ngôn ngư Java
Slide 76
ng
ta
sử
dụng
phương
tiện
Dự
án
á
cphầntử cấu thành ứng dụng. Viết
m
/bớt, hiệuchỉnh từng phầntử trong
n
khá giống với các thao tác mà ta đã
á
y tính.
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Khởi độn
g
JBuilder là 1 ứng dụng như bao ứng
d
trongWindows,tacónhiều cách khá
c
 chọnmenuStart.Programs.
Trial.Borland JBuilder 7 Enter
p

 Ấn kép chuột vào icon shortcut
(ta phảitạotrứciconshortcutn
à
 ch

n menu Start.Run
,
rồi nh
ập

h
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
ọ , ập
"c:\JBuilder7\bin\JBuilderW.exe"
 dùng trình quảnlýhệ thống fil
e
chương trình JBuilder (thí d

chương trình JBuilderW.exe.
Sau khi JBuilderW đượckhởi động,
t
sau:
g
JBuilder
d
ụng khác. Để khởi động 1 ứng dụng
c
nhau :

Borland JBuilder 7 Enterprise
p
rise Trial.
của JBuilder trên màn hình desktop
à
y).
h
àn
g
l

nh ch
ạy
ứn
g
d

n
g,
thí d

như
Môn : Ngôn ngư Java
Slide 77
g ệ ạy g ụ g, ụ
.
e
WE, duyệt đếnthư mụcchứafile

c:\JBuilder7\bin), ấnképvàofile

t
athường thấycửasổ mànhìnhnhư
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Cửa sổ khởi
đ
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
đ
ộng JBuilder
Môn : Ngôn ngư Java
Slide 78
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo m

Chọnmenu
File.New Project,
cửasổ bên phải
hiệnra.
Nhậptêndự án
phầnmềmvào
textbox Name.
Bạn

thể
thay
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Bạn


thể
thay
đổicácthôngsố
khác trong cửa
sổđếnlúcvừaý
thì ấn button
Next để đến
Step 2.

i dự án
Môn : Ngôn ngư Java
Slide 79
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới
d
Trong cửa sổ "Step
2 of 3", bạn có thể
thay đổi các thông
số theo ý muốn rồi
ấn button Next để
đi tiếp Step 3.
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
d
ự án (tt)
Môn : Ngôn ngư Java
Slide 80
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng

Tạo mới
d
Trong cửa sổ "Step
3 of 3", bạn có thể
thay đổi các thông
số theo ý muốn rồi
ấn button Finish để
kết thúc qui trình
Project Wizard.
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
d
ự án (tt)
Môn : Ngôn ngư Java
Slide 81
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới
d
Màn hình
JBuilder sau khi
kết thúc Project
Wizard
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
d
ự án (tt)
Môn : Ngôn ngư Java
Slide 82

Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới ứng dụ
Chọnmenu
File.New, cửasổ
bên phảihiệnra.
Chọntab
General, chọn
icon Application
để tạomới1ứng
d

n
g
rồi ấn
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
ụ g
button OK.
ng trong Project
Môn : Ngôn ngư Java
Slide 83
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới ứng dụn
g
Nhậptên
package chứa
các class của
ứng dụng.
Nhập tên class

miêu tảđối
tượng ứng dụng.
Bạn

thể
thay
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Bạn

thể
thay
đổicácthôngsố
khác trong cửa
sổđếnlúcvừaý
thì ấn button
Next để đến
Step 2.
g
trong Project (tt)
Môn : Ngôn ngư Java
Slide 84
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới ứng dụn
g
Nhập tên class
miêu tả frame
giao diện ứng
dụng. Nhậptiêu

đề củaframe
này.
Bạncóthể chọn
các o
p
tion cần
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
p
thiết(thídụ
menu bar, About
Dialog, ).
Khi vừaýthìấn
button Next để
đếnStep3.
g
trong Project (tt)
Môn : Ngôn ngư Java
Slide 85
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo mới ứng dụn
g
Trong bước này,
bạnthường chỉ
cần ấn button
Finish để hoàn
thành qui trình
Application
Wizard.

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
g
trong Project (tt)
Môn : Ngôn ngư Java
Slide 86
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Màn hình
JBuilder sau
khi kết thúc
Application
Wizard
Tạo mới ứng dụn
g
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
g
trong Project (tt)
Môn : Ngôn ngư Java
Slide 87
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực
q
Chọn tab
Design để
chuyển cửa
sổ làm việc
về chế độ

thiết kế giao
diện như
hình bên.
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
q
uan giao diện
Môn : Ngôn ngư Java
Slide 88
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Để tự do bố trí
các phần tử
giao diện, bạn
chọn phần tử
"contentPane"
trong cửa sổ
cây các phần
tử giao diện
ể ể
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
đ

hi

n thị
thuộc tính của

nó rồi thay đổi
thuộc tính
layout về
"XYLayout".
an giao diện (tt)
Môn : Ngôn ngư Java
Slide 89
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Để tạo 1 phần
tử giao diện
trong layout,
chọn icon miêu
tả nó trên thanh
công cụ, dời
chuột tới vị trí
cần tạo phần tử

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
r

i vẽ nó thông
qua động tác
"drag" chuột (ấn
giữ chuột rồi dời
chuột để tạo 1
hình chữ nhật
rồi thả chuột).

an giao diện (tt)
Môn : Ngôn ngư Java
Slide 90
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Ngay sau khi
tạo phần tử giao
diện, bạn có thể
thiết lập giá trị
cho các thuộc
tính của nó (thí
dụ như name,
text, )
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
an giao diện (tt)
Môn : Ngôn ngư Java
Slide 91
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Lập lại quá trình
tạo và thiết lập
thuộc tính cho
các phần tử
giao diện khác
nhau. Bạn có
thể dùng cơ chế
Copy-Paste để


Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
nhân bản ph

n
tử giao diện từ
phần tử đã có.
Sau khi thiết kế
giao diện xong,
ta có kết quả
như hình bên :
an giao diện (tt)
Môn : Ngôn ngư Java
Slide 92
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Danh sách giá trị các thuộctínhđược
thiếtlậpchocácđốitượng :
 text = , Name = cmdMemStatus
 text = MC, Name = cmdMC
 text = MR, Name = cmdMR
 text = MS, Name = cmdMS
 text = MA, Name = cmdMA
 text = 0, Name = cmd0
tt1N d1







Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

t
ex
t
=
1
,
N
ame = cm
d1
 text = 2, Name = cmd2
 text = 3, Name = cmd3
 text = 4, Name = cmd4
 text = 5, Name = cmd5
 text = 6, Name = cmd6
 text = 7, Name = cmd7
 text = 8, Name = cmd8
 text = 9, Name = cmd9









an giao diện (tt)

text = +, Name = cmdAdd

text = -, Name = cmdSub

text = *, Name = cmdMul

text = /, Name = cmdDiv

text = +/-, Name = cmdPosNeg

text = ., Name = cmdPoint
tt N dE l
Môn : Ngôn ngư Java
Slide 93

t
ex
t
= =,
N
ame = cm
dE
qua
l

text = 1/x, Name = cmd1x


text = %, Name = cmdPercent

text = sqrt, Name = cmdSqrt

text = C, Name = cmdC

text = CE, Name = cmdCE

text = Backspace, Name = cmdBack

text = 0., Name = txtDisplay
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Chọn mục
jMenuBar1 để
hiển thị
menubar đã
được tạo sẵn.
Qui trình
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
tạo menu
Môn : Ngôn ngư Java
Slide 94
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Menubar default
ban đầu của
chương trình có 2
phần tử File,
Help. Bây giờ

hiệu chỉnh lại nó
theo mẫu đặc tả.
Để
t

o menu View
Qui trình t

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

trước menu Help,
ấn kép chuột vào
Help rồi chọn mục
"Insert menu".
Sau khi menu mới
đã được chèn vào
vị trí, bạn nhập
tên cho nó.

o menu (tt)
Môn : Ngôn ngư Java
Slide 95
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Qui trình t

Để tạo option
Copy trước option
Exit trong menu

File, ấn chuột vào
File để hiển thị
pop-up menu của
nó, ấn phải chuột
vào option Exit để
hiểnthị danh sách
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
hiển

thị

danh

sách

lệnh rồi chọn mục
"Insert menu
Item".
Sau khi option
mới đã được
chèn vào vị trí,
bạn nhập tên cho
nó.

o menu (tt)
Môn : Ngôn ngư Java
Slide 96
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng

Tạo method xử lý sự
k
Chọn phần tử
giao diện tương
ứng, chọn tab
Events để hiển
thị danh sách các
sự kiện của phần
tử, duyệt tìm sự
kiện cần quan

Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
tâm,

n kép
chuột vào cột
phải của phần tử
để tạo method
xử lý sự kiện
tương ứng. Bạn
có quyền định
nghĩa lại tên
method.
k
iện cho từng phần t

Môn : Ngôn ngư Java
Slide 97

Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Tạo method xử lý sự ki

Cửa sổ code sẽ
được hiển thị để
bạn viết code
cho method vừa
tạo ra.
Bạn cần nắm
vững cú pháp
ngôn ngữ Java
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
ngôn

ngữ

Java

để viết code.

n cho từng phần tử (tt)
Môn : Ngôn ngư Java
Slide 98
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Thiết kế trực qu
Tương tự với
thiết kế giao diện
cửa sổ chính của

chương trình,
bạn có thể thiết
kế giao diện của
các cửa sổ khác
nếu cần thiết. Thí
ế ế
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
dụ bên là thi
ế
t k
ế

lại hộp thoại
AboutBox.
an giao diện (tt)
Môn : Ngôn ngư Java
Slide 99
Chương 4: Qui trình thiết kế trực quan giao diện của ứng dụng
Chư
ơ
CÁC KI

U DỮ LI

MÔN NGÔ
N
Bộ Môn Công nghệ phần mềm
Khoa Công nghệ Thông tin

Trường ĐH Bách Khoa Tp.HCM

ơ
ng 5

U TRONG JAVA
N
NGỮ JAVA
Môn : Ngôn ngư Java
Slide 100

Chương 5 : Các kiểu dữ liệu trong Java

×