You are on page 1of 28

KỸ NGHỆ PHẦN MỀM

____________________________________
Lê Đức Thọ (*)
Nguyễn Tùng Thi
Bùi Đức Hoàng
Nguyễn Hữu Lộc
Phạm Tiến Thành
____________________________________

LỚP : 50 PM2 * NHÓM : BẤT HẢO


Nội dung chính

• Cách tiếp cận : Hướng đối tượng

• Các lớp ngôn ngữ

• Các công cụ lập trình


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

 Tiếp cận hướng đối tượng: tiếp cận các đối tượng
và kết cấu của nó.
-Đối tượng ở đây chính là các class, và kết cấu
của nó phải đi vào từng ngôn ngữ.

-Mỗi ngôn ngữ có tập đối tượng riêng và kết


cấu riêng, cấu trúc khối chương trình riêng.

Nhóm : Bất hảo Lớp : 50 PM2 3


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

 Về lý thuyết, việc tạo ra các đối tượng và kết cấu


của phần mềm hướng đối tượng có thể thực hiện
bằng bất kỳ ngôn ngữ quy ước nào(như C hay
Pascal..).

Nhóm : Bất hảo Lớp : 50 PM2 4


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

-Trong thực tế, việc hỗ trợ các cách tiếp cận


hướng đối tượng nên được xây dựng trực tiếp bên
trong ngôn ngữ lập trình,sẽ được dùng để cài đặt
thiết kế hướng đối tượng.

Nhóm : Bất hảo Lớp : 50 PM2 5


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

-Ngôn ngữ lập trình hướng đối tượng nên


được cung cấp sự hỗ trợ trực tiếp cho định nghĩa
lớp, kế thừa, bao gói và truyền thông báo.

Nhóm : Bất hảo Lớp : 50 PM2 6


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

 Định nghĩa về lớp là cơ sở cho các cách tiếp cận


hướng đối tượng.
-Ngôn ngữ lập trình hướng đối tượng định
nghĩa tên một lớp và xác định các thành phần
chung và riêng của lớp đó .

Nhóm : Bất hảo Lớp : 50 PM2 7


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

- Một lớp có thể được suy dẫn từ định nghĩa


lớp cơ sở. Các đối tượng của lớp mới khi được tạo
ra có thể dùng được tất cả các phương pháp được
xác định cho “lớp cha”.

Nhóm : Bất hảo Lớp : 50 PM2 8


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

-Định nghĩa về lớp bao quát cả trừu tượng dữ


liệu và thành phần chương trình vận hành trên
chúng.

Nhóm : Bất hảo Lớp : 50 PM2 9


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

 Các chi tiết cài đặt và thuật ngữ cho định nghĩa
lớp, kế thừa, bao gói và truyền thông báo sẽ thay
đổi khi chuyển từ ngôn ngữ nọ sang ngôn ngữ kia,
nhưng khái niệm nền tảng về lớp vẫn không thay
đổi.

Nhóm : Bất hảo Lớp : 50 PM2 10


CÁCH TIẾP CẬN HƯỚNG ĐỐI TƯỢNG

-Tương tự, kế thừa, bao gói và truyền thông


báo được cài đặt với một cú pháp khác tùy theo
ngôn ngữ, nhưng nó sẽ có cùng 1 nền tảng.

-Mỗi kết cấu sẽ có sẵn trong bất kỳ ngôn ngữ


nào thực sự hướng đối tượng.

Nhóm : Bất hảo Lớp : 50 PM2 11


CÁC LỚP NGÔN NGỮ

 Ngôn ngữ thế hệ thứ nhất

 Ngôn ngữ thế hệ thứ hai

 Ngôn ngữ thế hệ thứ ba

 Ngôn ngữ thế hệ thứ tư

Nhóm : Bất hảo Lớp : 50 PM2 12


CÁC LỚP NGÔN NGỮ

1. Ngôn ngữ thế hệ thứ nhất


- Lập trình theo ngôn ngữ máy
- Chương trình mã máy và dạng tương đương của nó
dễ học
- Hợp ngữ biểu thị cho ngôn ngữ thứ nhất
- Các ngôn ngữ phụ thuộc máy này biểu hiện mức
độ trìu tượng thấp nhất mà một chương trình có
thể biểu diễn được

Nhóm : Bất hảo Lớp : 50 PM2 13


CÁC LỚP NGÔN NGỮ

2. Ngôn ngữ thế hệ thứ hai


- Phát triển từ cuối năm 1950 và đầu
những năm 1960
- Phục vụ như nền tảng cho mọi ngôn ngữ lập trình
hiện đại ( thế hệ thứ 3 )
- Đặc trưng bởi việc sử dụng rộng rãi 1 thư viện
phần mềm quen thuộc : Fortran , Cobol ,Algol

Nhóm : Bất hảo Lớp : 50 PM2 14


CÁC LỚP NGÔN NGỮ

3 . Ngôn ngữ thế hệ ba ( Ngôn ngữ lập trình có


cấu trúc )
- Đặc trưng bởi khả năng cấu trúc dữ liệu và thủ tục
mạnh
- Chia thành 3 phạm trù lớn :
+ Ngôn ngữ cấp cao vạn năng :
Bao gồm PL / I ,Pascal ,C,Modula-2 ..

Nhóm : Bất hảo Lớp : 50 PM2 15


CÁC LỚP NGÔN NGỮ

+ Ngôn ngữ cấp cao hướng đối tượng :


Giúp người kỹ sư phần mềm cài đặt được
các mô hình phân tích thiết kế tạo ra bằng cách
dùng OOA và OOD

+ Các ngôn ngữ chuyên dụng :


Đặc trưng bởi cú pháp bất thường đã được
đặc biệt thiết kế cho một ứng dụng riêng

Nhóm : Bất hảo Lớp : 50 PM2 16


CÁC LỚP NGÔN NGỮ

4 . Ngôn ngữ thế hệ thứ tư ( 4GL ) :


- Nâng mức độ trìu tượng lên (bằng cách xóa
bỏ yêu cầu xác định chi tiết thuật toán)
- Chứa cú pháp phân biệt để biểu diễn điều
khiển và cấu trúc dữ liệu
- Tổ hợp các đặc trưng thủ tục và phi thủ tục

Nhóm : Bất hảo Lớp : 50 PM2 17


CÁC CÔNG CỤ LẬP TRÌNH

 Công trình phần mềm có máy tính hỗ trợ

 Môi trường phát triển phần mềm

Nhóm : Bất hảo Lớp : 50 PM2 18


CÁC CÔNG CỤ LẬP TRÌNH

1. Công trình phần mềm có máy tính hỗ trợ


( CASE – Computer Aided Software
Engineering )
Có 2 cách phân loại theo :
- Hướng hoạt động : dựa trên hoạt động của các quá
trình như : đặc tả yêu cầu, thiết kế ,thực hiện..
- Hướng chức năng : dựa trên chức năng của các công
cụ đó chứ không phải là dựa trên các mục tiêu trợ giúp

Nhóm : Bất hảo Lớp : 50 PM2 19


CÁC CÔNG CỤ LẬP TRÌNH

2. Môi trường phát triển phần mềm


A. Đại cương :
- Môi trường phát triển phần mềm là 1 bộ lọc các
công cụ phần cứng và phần mềm chúng được kết
lại để sản sinh ra một hệ thống phần mềm trong
một miền ứng dụng chuyên biệt
- Môi trường phần mềm có thể bao gồm các công cụ
phần cứng

Nhóm : Bất hảo Lớp : 50 PM2 20


CÁC CÔNG CỤ LẬP TRÌNH

- Môi trường phần mềm thường xuyên chuyên dụng


hơn là khái quát
- Môi trường phần mềm vận hành trên một hệ thống
máy tính host và phần mềm được phát triển nhằm
vào một máy tính mục tiêu

Nhóm : Bất hảo Lớp : 50 PM2 21


CÁC CÔNG CỤ LẬP TRÌNH

B. Phân loại :

* Môi trường lập trình :

Nhóm thành các lớp


Các môi trường mục đích khải quát
Các môi trường hướng ngôn ngữ

Nhóm : Bất hảo Lớp : 50 PM2 22


CÁC CÔNG CỤ LẬP TRÌNH

Các công cụ của môi trường lập trình


Phần mềm giao tiếp máy chủ-khách
Phần mềm bắt chước máy khách
Cán bộ biên dịch chéo
Các công cụ thử nghiệm và gỡ lỗi
Các công cụ quản lý cấu hình
Các công cụ giao tiếp

Nhóm : Bất hảo Lớp : 50 PM2 23


CÁC CÔNG CỤ LẬP TRÌNH

• Bàn thợ CASE :


-Đây là các môi trường chủ yếu hướng về đặc tả
phần mềm và thiết kế.
-Nó chỉ cung cấp một sự trợ giúp lập trình thô

-Nó chỉ thích hợp với các máy tính cá nhân và
kết hợp với các môi trường lập trình

Nhóm : Bất hảo Lớp : 50 PM2 24


CÁC CÔNG CỤ LẬP TRÌNH

- Các thành phần điển hình của bàn thợ CASE


+ Các tiện ích soạn thảo biểu đồ
+ Các tiện ích phân tích thiết kế và kiểm tra
+ Các tiện ích ngôn ngữ hỏi
+ Các tiện ích từ điển dữ liệu
+ Các tiện ích sinh ra báo cáo

Nhóm : Bất hảo Lớp : 50 PM2 25


CÁC CÔNG CỤ LẬP TRÌNH

+ Các công cụ tạo dạng cho phép việc định dạng


màn hình và tư liệu là được đặc tả
+ Các tiện ích xuất khẩu nhập
+ Trợ giúp các bộ sinh mã cốt tự động từ thiết kế
có trong kho trung tâm
- Các hệ bàn thợ CASE thường chủ yếu dùng để
phát triển các hệ thống lý dữ liệu

Nhóm : Bất hảo Lớp : 50 PM2 26


CÁC CÔNG CỤ LẬP TRÌNH

* Môi trường công trình phần mềm


- Trợ giúp sản sinh ra các hệ thống lớn, thọ mà
chi phí bảo trì vượt quá chi phí phát triển
- Sản sinh bởi một đội (chứ không phải là một
người lập trình riêng nào )
- Nó trợ giúp cho tất cả hoạt động bảo trì và phát
triển

Nhóm : Bất hảo Lớp : 50 PM2 27


End.

You might also like