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

Ch

ng 0. L i nói đ u

ươ

““

Khi đ

c h

ng nh ng Thành qu l n t Phát minh c a ng

i khác, ta nên vui v đó

ượ ưở

ả ớ ừ

ườ

nh n C h i đ giúp đ ng

i khác b ng Phát minh c a ta, và vi c này nên làm m t cách t

ơ ộ ể

ườ

ý và hào phóng.”
—Benjamin Franklin, trích t cu n

ừ ố Benjamin Franklin c a tác gi Edmund S. Morgan.

Lý do mà tôi vi t cu n sách này

ế

Đây là n b n th năm c a cu n sách mà tôi đã b t đ u vi t t năm 1999, khi còn d y tr

ng Colby

ắ ầ

ế ừ

ạ ở ườ

College. Tôi d d y m t l p h c nh p môn khoa h c máy tính b ng ngôn ng Java, nh ng ch a tìm

ẫ ạ

ộ ớ

ư

ư

đ

c m t cu n giáo trình v a ý. M t trong nh ng lý do là, chúng quá dày! Không có cách nào mà sinh

ượ

viên có th đ c h t cu n sách dày c 800 trang, đ y nh ng ki n th c kĩ thu t, k c tôi có yêu c u h

ể ọ ế

ế

ể ả

th c hi n. Mà tôi ch ng mu n th . Ph n l n nh ng gì vi t trong sách đ u quá c th —nh ng chi ti t v

ế

ầ ớ

ế

ụ ể

ế ề

Java cùng các th vi n c a nó mà s l c h u ngay khi h c kì k t thúc, đ ng th i nh ng th đó s làm lu

ư ệ ủ

ẽ ạ ậ

ế

m nh ng ki n th c mà tôi th c s mu n sinh viên h c.

ế

ự ự

M t v n đ khác mà tôi th y, đó là ph n gi i thi u l p trình h

ng đ i t

ng là quá đ t ng t. Nhi u

ộ ấ

ệ ậ

ướ

ố ượ

sinh viên đáng ra đã h c suôn s r i nh ng khi b t đ u vào ph n “đ i t

ng” là b v p, b t k ph n này

ẻ ồ

ư

ắ ầ

ố ượ

ị ấ

ấ ể

đ

c đ a vào đâu trong giáo trình.

ượ ư

Vì v y tôi b t tay vào vi t. M i ngày tôi vi t m t ch

ng, liên t c trong 13 ngày đ u. R i ngày th 14 tôi

ế

ế

ươ

biên t p l i. Sau đó tôi đi phô-tô và đóng bìa. Bu i h c đ u tiên khi phân phát giáo trình, tôi d n sinh

ậ ạ

ổ ọ ầ

viên m i tu n ph i đ c m t ch

ng. Nói cách khác, h c n đ c ch m h n 7 l n so v i t c đ vi t c a

ả ọ

ươ

ọ ầ

ơ

ớ ố ộ ế ủ

tôi.

Tri t lý n sau cu n sách

ế

Sau đây là m t s ý t

ng đ nh hình cho cu n sách:

ộ ố

ưở

Thu t ng là quan tr ng. Sinh viên c n ph i trao đ i đ

c v ch

ng trình máy tính và hi u đ

c đi u

ổ ượ ề ươ

ượ

tôi gi ng. Tôi c g ng gi i thi u m t s t i thi u các thu t ng , đ đ nh nghĩa đ

c rõ ràng khi dùng l n

ố ắ

ộ ố ố

ữ ể ị

ượ

đ u, và đ t ch c l i thành m c “Thu t ng ” cu i t ng ch

ng. Trên l p, tôi có đ a nh ng câu h i liên

ể ổ ứ ạ

ố ừ

ươ

ư

quan đ n thu t ng vào đ ki m tra, đ thi, và yêu c u sinh viên ph i dùng thu t ng thích h p đ vi t

ế

ề ể

ể ế

vào đáp án.

Đ vi t m t ch

ng trình, sinh viên c n ph i hi u đ

c thu t toán, bi t ngôn ng l p trình, và có kh

ể ế

ươ

ượ

ế

ữ ậ

năng g l i. Tôi nghĩ r ng quá nhi u quy n sách b qua khâu g l i. Cu n sách này có m t ph l c vi t

ỡ ỗ

ỡ ỗ

ụ ụ

ế

v g l i và m t ph l c v phát tri n ch

ng trình (giúp tránh đ

c g l i). Tôi khuy n khích sinh viên

ề ỡ ỗ

ụ ụ ề

ươ

ượ ỡ ỗ

ế

s m đ c ngay nh ng ph n này và th

ng xuyên tham kh o đ n chúng.

ườ

ế

M t s khái ni m ph i m t th i gian m i l ng đ ng l i đ

c. M t s ch khó trong sách, nh đ quy, s

ộ ố

ớ ắ

ạ ượ

ộ ố ỗ

ư ệ

xu t hi n vài l n. B ng cách nêu l i nh ng đi m này, tôi c g ng t o cho sinh viên c h i đ ôn l i và

ố ắ

ơ ộ ể

c ng c , ho c n u l n đ u h không n m đ

c, thì đó là c h i đ theo k p.

ặ ế ầ

ượ

ơ ộ ể

Tôi c g ng dùng càng ít Java càng t t đ đ t đ

c công hi u l p trình t i đa. M c đích c a cu n sách

ố ắ

ố ể ạ ượ

ệ ậ

này là d y l p trình và m t s ý t

ng c b n v khoa h c máy tính, ch không ph i d y Java. Tôi b

ạ ậ

ộ ố

ưở

ơ ả

ả ạ

qua m t s đ c đi m c a ngôn ng này, nh l nh

ộ ố ặ

ư ệ switch, v n không c n thi t, và tránh h u h t các th

ế

ế

ư