THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 8

1.3 G l i là gì?

ỡ ỗ

Vi c l p trình r t hay m c ph i l i. Vi c theo dõi, phân tích nguyên nhân gây ra l i đ

c g i là

ệ ậ

ả ỗ

ỗ ượ ọ

g l i

ỡ ỗ .

Có ba lo i l i có th xu t hi n trong ch

ng trình: l i cú pháp, l i ch y và l i ng nghĩa. Đ nhanh

ạ ỗ

ươ

chóng tìm ra l i ta c n phân bi t đ

c chúng.

ệ ượ

1.3.1 L I CÚ PHÁP

Trình biên d ch ch có th chuy n đ i đ

c ch

ng trình n u nh nó đúng đ n v cú pháp; còn n u

ổ ượ

ươ

ế

ư

ế

không, vi c biên d ch s th t b i và b n s không ch y đ

c ch

ng trình.

ẽ ấ ạ

ạ ẽ

ượ

ươ

Cú pháp nghĩa là c u trúc

c a ch

ng trình và các quy t c v c u trúc đó.

ươ

ắ ề ấ

Ch ng h n, trong ti ng Anh, m t câu vi t ph i b t đ u b ng ch in hoa và k t thúc b ng d u ch m. câu

ế

ế

ả ắ ầ

ế

này có m t l i cú pháp. Và câu này cũng v y

ộ ỗ

Đa ph n ban đ c th

ng không đ tâm đ n m t s ít l i cú pháp, vì v y ta có th đ c th c a tác gi e e

ườ

ế

ộ ố

ể ọ

ơ ủ

cummings mà không th t ra l i thông báo l i nào.

Các trình biên d ch thì không nh v y. Ch c n trong ch

ng trình có l i cú pháp b t c đâu, trình

ư ậ

ỉ ầ

ươ

ở ấ ứ

biên d ch s hi n th thông báo l i và k t thúc, và b n s không th ch y ch

ng trình.

ẽ ể

ế

ạ ẽ

ể ạ

ươ

T h n n a là trong Java có nhi u quy t c cú pháp h n là trong ti ng Anh, và th

ng thì nh ng thông

ệ ơ

ơ

ế

ườ

báo l i mà b n nh n đ

c t trình biên d ch đ u không giúp ích gì nhi u.

ượ ừ

ề N u b n m i nh p môn l p

ế

trình đ

c vài tu n, r t có th b n ph i dành nhi u th i gian dò tìm l i. Khi kinh nghi m tăng d n lên,

ượ

ể ạ

b n s tránh đ

c l i t t h n và n u m c thì cũng phát hi n ra l i nhanh h n.

ạ ẽ

ượ ỗ ố ơ

ế

ơ

1.3.2 L I TH C THI

Lo i l i th hai là l i th c thi; chúng có tên nh v y b i vì ch xu t hi n khi ch

ng trình đã b t đ u

ạ ỗ

ư ậ ở

ươ

ắ ầ

ch y. Trong Java, l i th c thi x y ra khi trình thông d ch đang ch y mã byte và có đi u gì đó tr c tr c.

Java có xu h

ng là ngôn ng

ướ

an toàn, theo nghĩa trình biên d ch s b t r t nhi u l i. Do v y l i th c

ẽ ắ ấ

ề ỗ

ậ ỗ

thi s hi m, đ c bi t là nh ng ch

ng trình đ n gi n.

ẽ ế

ươ

ơ

Trong Java, l i th c thi đ

c g i là

ượ ọ

bi t l

ệ ệ, và h u h t các môi tr ng l p trình, chúng xu t hi n d i

ở ầ

ế

ườ

ướ

hình th c c a s ho c h p tho i ghi rõ nh ng thông tin v tình tr ng đã di n ra và lúc đó thì ch

ng

ứ ủ ổ

ặ ộ

ươ

trình đang th c hi n nh ng gì. Thông tin này r t có ích đ i v i vi c g l i.

ố ớ

ệ ỡ ỗ

1.3.3 L I LOGIC VÀ NG NGHĨA

Lo i l i th ba là

ạ ỗ

l i logic

hay l i ng nghĩa

. Trong tr

ng h p có l i ki u này, ch

ng trình s v n

ườ

ươ

ẽ ẫ

đ

c biên d ch và ch y mà không phát ra thông báo l i nào, nh ng s không th c hi n đúng yêu c u

ượ

ư

mong mu n, mà s cho k t qu khác. C th là th c hi n theo đúng nh ng câu l nh mà b n đã ch d n.

ế

ụ ể

ỉ ẫ

V n đ đây là ch

ng trình b n vi t s không đúng theo ý mu n c a b n. Ý nghĩa c a ch

ng trình b

ề ở

ươ

ế ẽ

ố ủ

ươ

sai l ch. Vi c phát hi n các l i ng nghĩa đôi lúc r t khó vì b n c n ph i quay ng

c l i và nhìn vào k t

ạ ầ

ượ ạ

ế

qu c a ch

ng trình đ phán đoán xem b n thân ch

ng trình đã th c hi n nh ng gì.

ả ủ

ươ

ươ

1.3.4 G L I TH NGHI M

Ỡ Ỗ

M t trong nh ng kĩ năng quan tr ng nh t mà b n s h c đ

c, đó là g l i. M c dù đôi khi b v p váp,

ạ ẽ ọ ượ

ỡ ỗ

ị ấ

nh ng vi c g l i r t thú v , ch a đ y th thách và là m t ph n có giá tr trong l p trình.

ư

ệ ỡ ỗ ấ

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.