B MÔN DUYT
Ch nhim B môn
Phan Nguyên Hi
Đ CƯƠNG CHI TIT BÀI GING
(Dùng cho tiết ging)
Hc phn: Lp trình Java
Nhóm môn hc: K thut lp trình
B môn: Công ngh phn mm
Khoa (Vin): Công ngh thông tin
Thay mt nhóm
môn hc
Phạm Văn Việt
Thông tin v nhóm môn hc
STT
H tên
Hc hàm
Hc v
1
Phan Nguyên Hi
GVC
TS
2
Phạm Văn Việt
GV
TS
3
H Nht Quang
GV
ThS
4
Nguyn Th Hin
GVC
ThS
5
Phm Th Bích Vân
TG
KS
6
Trn Hu Phi
TG
KS
Địa điểm làm vic: B môn Công ngh phn mm Khoa Công ngh thông
tin
Đin thoi, email:
Bài ging 1: Gii thiu ngôn ng lp trình Java
Chương I Mc 1 + 2 + 3 + 4
Tiết th: 1 3 Tun th: 1
- Mục đích, yêu cầu:
Gii thiu lược v lập trình hướng đối tượng (OOP Object Oriented
Programming), tng quan v ngôn ng lp trình Java, các đặc điểm ca
ngôn ng và nhng nội dung cơ bản ca ngôn ng lp trình Java.
Sau bài hc sinh viên phân biệt được lập trình hướng đối tượng và lp
trình hướng cu trúc, nắm được những đặc điểm ca Java, nhng yêu cu
cn thiết đ trin khai, xây dng mt ng dng Java, biết cách xây dng
nhng ng dụng đơn giản.
- Hình thc t chc dy hc: Lý thuyết, t hc, t nghiên cu
- Thi gian: Lý thuyết: 3t; T hc, t nghiên cu: 6t
- Địa điểm: Theo b trí ca P2
- Ni dung chính:
1. Ni dung chi tiết:
- Gii thiu v lập trình hướng đối tượng:
Đa hình (polymorphism)
Kế tha (inheritance)
Trừu tượng (abstraction)
Lp (classes)
Đối tượng (Object)
Th hin (Instance)
Phương thức (method)
Đóng gói (Encapsulation)
- Gii thiu ngôn ng Java:
Lch s ra đời: Ra đời đầu những năm 90, do hãng Sun
Microsystems phát trin vi tác gi chính là James Gosling, Java
kế tha t C++. Mục đích của Java để phát trin ng dng
cho các thiết b đin t thông minh, đ to các trang web ni
dung động (applet). Hiện nay Java được s dụng đ phát trin
nhiu loi ng dụng khác nhau như sở d liu, mng,
Internet, games, viễn thông…
Các đặc tính ca Java:
Đơn giản
Kh chuyn
ớng đối tượng
Phân tán
Đa luồng
An toàn
Biên dch và thông dch
Gii phóng b nh t động
Công ngh Java:
Ngôn ng lp trình
Ngôn ng phát trin
Môi trường thc thi và trin khai
Các dng công ngh Java c th:
Desktop application J2SE: Java application, Java
Applet
Server applivation J2EE
Mobile (enbedded) application J2ME
Các dng ng dng ca Java:
ng dụng độc lp (console applivation)
ng dng Apples
ng dng giao din (GUI application)
ng dng Web (Servlet và JSP)
ng dng nhúng (embedded application)
ng dụng cơ sở d liu (database application)
games
- JDK JAVA DEVELOPMENT KIT: B công c phát trin ng
dng Java bao gm 4 thành phn: Classes, Compiler, Debugger,
Java Runtime Environment.
- JVM JAVA VIRTUAL MACHINE:
JVM mt phn mm dựa trên s máy tính ảo. JVM cũng
được xem như là một h điu hành thu nh.
Máy o ph thuc vào Platform (Phn cng, OS), nó cung cp
môi trường thực thi cho Java (Độc lp vi platform).
thiết lập cho các Java đã biên dch mt cái nhìn trong
sut (Trasparence) v các phn cứng bên dưới.
- JAVA IDE INTEGRATED DEVELOPMENT ENVIRONMENT:
JCreator
NetBeans
Eclipse
EditPlus
Borland Jbuilder
Java Studio ca Sun
- Các phn mm cần cài đặt cho lp trình Java:
Java Stander Development Kit (JDK)
NetBeans IDE
- Kiến trúc chương trình Java, Java Platfrom:
Java Virtual Machine (Java VM)
Java Application Programming Interface (Java API)
- Các gói chun ca Java:
Java.lang
Java.applet
Java.awt
Java.io
Java.util
Java.net
Java.awt.event
Java.rmi
Java.security
Java.sql
- Các bước phát trin một chương trình Java: Biên dch, thông dch
- Cu trúc một chương trình Java đơn gin: Cách đặt tên file, tên
class, dấu cthích, khai báo class, phương thức main(), đặc điểm
lnh, public, static, void, d nhp d liu t bàn phím, xut d
liu ra màn hình, biên dch và thực thi chương trình.
- Các t khóa (keyword):
T khóa cho các kiu d liệu bản: Byte, Short, int, long,
float, double, char, Boolean.
T khó cho phát biu lp: do, while, for, break, continue.
T khóa cho phát biu r nhánh: if, else, switch, case, default,
break.
T khóa đặc t đặc tính mt method: private, public, protected,
final, static, abstract, synchronized.
Hng (literal): true, false, null.
T khóa liên quan đến method: return, void.
T khoá liên quan đến package: package, import.
T khóa cho vic qun lý li: try, catch, finally, throw, throws.
T khóa liên quan đến đối tượng: new, extends, implements,
class, instanceof, this, super.
- Cách đặt tên biến, hng:
- Các kiu d liu: các kiểu cơ sở, các kiu tham chiếu.
- Các toán t: toán t s hc, toán t quan h logic, các toán t
gán, toán t điu kiện, độ ưu tiên các toán tử, ví d.
- Các cấu trúc điu khin trong Java: cu trúc r nhanh (if, if else,
switch case), cu trúc lp (for, while, do while), lnh break, ví d.
- Mng và xâu t: các cách khai báo mng, khi to mng, cp b
nh cho mng, truy cp mng, mng nhiu chiu, mng g gh,
d; xâu kí t (String, StringBuffer, StringTokenizer), ví d.
- Mt s lớp cơ bản, tin ích: các lớp bao (Integer, Long, Double…),
lp toán hc Math, các lớp để làm vic vi thi gian (Date,
Calendar, SimpleDataFormat), lp biu thc chính quy
RegularExpression, ví d.
2. Ni dung tho lun: Lập trình hướng đối tượng, biên dch thông dch,
s độc lp vi platform ca Java, máy o; các gói trong Java.
3. Ni dung t hc: Cài đặt JDK, NetBeans.
4. Bài tp:
Bài 1. Nhp dãy n s thực, hãy xác định trt t của dãy đó (tăng,
gim hay không có th t)
Bài 2. Nhp n, in n s fibonaci đầu tiên
Bài 3. Nhp s n, in các s nguyên t 2..n
Bài 4. Viết chương trình nhập dãy các s nguyên dương từ n phím,
cho ti khi nhp s âm thì kết thúc nhp, tìm giá tr ln nht và s phn t
bng giá tr ln
Bài 5. Viết chương trình nhập s n, tìm in các s nguyên t thuc
2..n
Bài 6. Kim tra mt s có phi s fibonaci hay không
Bài 7. Kim tra mt s có phi là s hoàn chnh hay không
Bài 8. Tính sin(x) theo công thc khai trin Taylor với độ chính xác
cho trước
Bài 9. Cho mt dãy s t nhiên, hãy m s t nhiên c nh nht
không bng so trong dãy
Bài 10. Cho mt dãy s nguyên bt k. Hãy tìm mt dãy con liên tc
đơn điệu tăng dài nhất ca dãy
- Yêu cu SV chun b:
Đọc trước bài nhà.
Xem trước ni dung bài tập chương I.
Trước gi bài tp, thc hành chun b trước nội dung chu đáo.
- Ghi chú:
1. Tài liu tham kho:
[1] Java Tập 1. Phương Lan, Lao động Xã hi, 2006.
[2] Java Tập 2. Phương Lan, Lao động Xã hi, 2006.
[3] Java All-In-One Desk Reference For Dummies, 2nd Edition; Doug
LoweandBarry Burd; John Wiley & Sons; 2007.
[4] Java™ How to Program, Sixth Edition; H. M. Deitel - Deitel, P. J.
Deitel; Prentice Hall; 2004.
[5] Object Oriented With Java. Kenneth A. Lambert, Martin Oshorne,
Prentice Hall, 2003.