b0y_b4n0_o

New Member

Download miễn phí Bài giảng Lý thuyết ngôn ngữ hệ điều hành





• Ngày nay, nhắc đến Java, không còn nhắc đến
như một ngôn ngữ mà còn là một công nghệ, một
nền tảng phát triển.
• Java có một cộng đồng phát triển mạnh mẽ
▫ Một tập hợp các thư viện với số lượng lớn (từ Sun
và các nguồn khác)



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

LÝ THUYẾT NGÔN NGỮ HĐT
Bé m«n C«ng nghÖ phÇn mÒm
KHOA CÔNG NGHỆ THÔNG TIN
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Bài 01. Tổng quan về OOP
Nội dung
1. Lập trình hướng đối tượng
2. Công nghệ hướng đối tượng
3. Ngôn ngữ lập trình Java
4. Ví dụ và bài tập
2
Nội dung
1. Lập trình hướng đối tượng
2. Công nghệ hướng đối tượng
3. Ngôn ngữ lập trình Java
4. Ví dụ và bài tập
3
1.1. Lịch sử phát triển của các NNLT
• a. Hợp ngữ (Assembly language):
▫ Là một ngôn ngữ lập trình tuần tự, gần với tập các
lệnh mã máy của CPU.
▫ Khó nhớ, khó viết, nhất là với những bài toán
phức tạp.
▫ Khó sửa lỗi, bảo trì.
4
• b. NNLT cấu trúc/thủ tục:
5
 Xây dựng chương trình
dựa trên các hàm/thủ
tục/chương trình con
 Dữ liệu và xử lý (hàm) tách
rời nhau
 Các hàm không bắt buộc
phải tuân theo một cách
thức chung truy cập vào
dữ liệu
1.1. Lịch sử phát triển của các NNLT (2)
1.1. Lịch sử phát triển của các NNLT (3)
• c. NNLT hướng đối tượng:
▫ Thể hiện các thành phần của bài toán là các “đối
tượng” (object).
▫ Hướng đối tượng là một kỹ thuật đểmô hình hóa
hệ thống thành nhiều đối tượng.
6
7• Đối tượng trong thế giới thực
▫ Ví dụmột chiếc ô tô
• Liên quan đến chiếc ô tô:
▫ Các thông tin về chiếc xe như: màu sắc, tốc độ, số km
đã đi được,...
▫ Các hoạt động của chiếc xe như: tăng tốc khi nhấn
ga, giảm tốc khi đạp phanh,...
1.2. Đối tượng là gì?
Đối tượng thế giới thực
 Một đối tượng thế giới thực là một thực
thể cụ thể mà thông thường chúng ta có thể
sờ, nhìn thấy hay cảm nhận được.
 Tất cả có
trạng thái
(state) và
hành động
(behaviour)
8
Đối tượng phần mềm
 Các đối tượng phần mềm có thể được
dùng để biểu diễn các đối tượng thế giới
thực.
 Cũng có trạng thái và
hành động
Trạng thái: thuộc tính
(attribute; property)
Hành động: cách
(method)
9
10
Đối tượng
Đối tượng (object) là một
thực thể phần mềm bao
bọc các thuộc tính và các
cách liên quan.
Đối tượng phần mềm Đối tượng phần mềm Xe Đạp
Thuộc tính được xác định
bởi giá trị cụ thể gọi là
thuộc tính thể hiện.
Một đối tượng cụ thể
được gọi là một thể hiện.
Mô hình hóa đối tượng
11
Object-oriented modeling
House Tom
Car
Tree
House
Tom
Car
Tree
lives in
drives
Model
Reality
Tương tác giữa các đối tượng
• Sự giao tiếp giữa các đối tượng trong thế giới thực:
• Các đối tượng và sự tương tác giữa chúng trong lập
trình
▫ Các đối tượng giao tiếp với nhau bằng cách gửi thông điệp
(message)
12
Hướng cấu trúc vs. Hướng ĐT?
• Hướng cấu trúc:
▫ data structures + algorithms = Program
▫ (cấu trúc dữ liệu + giải thuật = Chương trình)
• Hướng đối tượng:
▫ objects + messages = Program
▫ (đối tượng + thông điệp = Chương trình)
15
1.3. Lớp đối tượng
 Trong thế giới thực có nhiều đối tượng cùng loại.
 Chương trình hướng đối tượng có nhiều đối
tượng cùng loại chia sẻ những đặc điểm chung.
 Ví dụ
16
Lớp
• Một lớp là một thiết kế (blueprint) hay mẫu (prototype)
cho các đối tượng cùng kiểu
▫ Ví dụ: lớp XeDap là một thiết kế chung cho nhiều đối tượng xe đạp
được tạo ra
• Lớp định nghĩa các thuộc tính và các cách chung
cho tất cả các đối tượng của cùng một loại nào đó
• Một đối tượng là một thể hiện cụ thể của một lớp.
▫ Ví dụ: mỗi đối tượng xe đạp là một thể hiện của lớp XeDap
• Mỗi thể hiện có thể có những thuộc tính thể hiện khác
nhau
▫ Ví dụ: một xe đạp có thể đang ở bánh răng thứ 5 trong khi một xe
khác có thể là đang ở bánh răng thứ 3.
17
Ví dụ Lớp Xe đạp
Khai báo cho lớp
XeDap
Đối tượng của lớp
XeDap
18
Nội dung
1. Lập trình hướng đối tượng
2. Công nghệ hướng đối tượng
3. Ngôn ngữ lập trình Java
4. Ví dụ và bài tập
19
20
2. Công nghệ đối tượng (OT)
• Công nghệ đối tượng là một
tập các quy tắc (trừu tượng
hóa, đóng gói, đa hình), các
hướng dẫn để xây dựng phần
mềm, cùng với ngôn ngữ, cơ
sở dữ liệu và các công cụ
khác hỗ trợ các quy tắc này.
(Object Technology - A Manager’s Guide, Taylor, 1997)
21
• Các mốc chính của công nghệ đối tượng
2.1. Lịch sử phát triển của OT
Simula
1967
C ++
Late 1980s
Smalltalk
1972
Java
1991
The UML
1996
UML 2
2004
22
2.2. OT được sử dụng ở đâu?
• Các hệ thống Client/Server và phát triển Web
 Công nghệ đối tượng cho
phép các công ty đóng gói
thông tin doanh nghiệp trong
các đối tượng và giúp phân
phối quá trình xử lý qua
mạng Internet hay một
mạng máy tính.
23
2.2. OO được sử dụng ở đâu? (2)
• Hệ nhúng (embedded system)
• Hệ thống thời gian thực (real-time)
▫ Công nghệ đối tượng cho phép các hệ thống
thời gian thực có thể phát triển với chất lượng
cao hơn và linh hoạt hơn
 Hệ thống vệ tinh
 Các hệ thống quốc phòng
và hàng không vũ trụ
 …
4
24
2.3. Các nguyên lý cơ bản của OO
T
rừ
u


ng
h
óa
P

n
cấ
p
Hướng đối tượng
Đ
ón
g

i
M
ô-
đu
n

a
25
a. Trừu tượng hóa (Abstraction)
• Là quá trình loại bỏ đi các thông tin
cụ thể và giữ lại những thông tin
chung.
• Tập trung vào các đặc điểm cơ bản
của thực thể, các đặc điểm phân
biệt nó với các loại thực thể khác.
• Phụ thuộc vào góc nhìn
▫ Quan trọng trong ngữ cảnh này nhưng
lại không có ý nghĩa nhiều trong ngữ
cảnh khác.
25
26
Ví dụ: Trừu tượng hóa
Sinh viên Giáo viên
Khóa học diễn ra lúc 9:00 sáng các ngày thứ 3, 5, 7
Khóa học (ví dụ đại số)
27
b. Đóng gói (Encapsulation)
Tăng cường tính mềm dẻo
• Che giấu, ẩn đi chi tiết thực hiện bên trong
Cung cấp cho thế giới bên ngoài một giao diện
Người dùng không phụ thuộc vào việc sửa đổi
sự thực thi bên trong
28
Minh họa việc đóng gói
• Giao diện thông điệp
(cách) của đối
tượng
• Giáo sư Clark được yêu
cầu dạy 4 lớp tháng tới
TakeSabbatical()
Giáo sư Clark
Name: J Clark
Employee ID: 567138
HireDate: 07/25/1991
Status: Tenured
Discipline: Finance
MaxLoad:4
SetMaxLoad(4)
29
c. Mô đun hóa (Modularity)
• Chia nhỏ hệ thống phức tạp
thành những thành phần nhỏ
có thể quản lý được.
• Cho phép người dùng hiểu
biết về hệ thống.
29
30
Ví dụ: Mô đun hóa
• Ví dụ, chia nhỏmột hệ thống
phức tạp thành các mô đun
nhỏ hơn. Hệ thống
quản lý xuất
nhập sách
Hệ thống quản lý
siêu thị sách
Hệ thống
kế toán
Hệ thống
quản lý
nhân viên
31
d. Phân cấp (Hierarchy)
31
Giảm mức độ
trừu tượng hóa
Gia tăng mức độ
trừu tượng hóa
Tài sản
Bất động sản
Tiết kiệm
Tài khoản ngân hàng
Tiên gửi Cổ phiếu
Chứng khoán
Các loại giấy tờ có giá trị
Các phần tử ở cùng cấp trong sơ đồ phân cấp
thì có cùng mức trừu tượng hóa
Nội dung
1. Lập trình hướng đối tượng
2. Công nghệ hướng đối tượng
3. Ngôn ngữ lập trình Java
4. Ví dụ và bài tập
32
3.1. Java là gì?
• Java là một ngôn ngữ lập trình HĐT được phát triển
bởi Sun Microsystems.
33
Green Team and James Gosling
(the leader)
Java là một ngôn ngữ lập
trình khá trẻ
 Ban đầu được sử d
 

Các chủ đề có liên quan khác

Top