1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Môn học kỹ thuật lập trình

219 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Môn học kỹ thuật lập trình
Trường học Đại học Bách Khoa TP.HCM
Chuyên ngành Kỹ Thuật Lập Trình
Thể loại giáo trình
Thành phố Tp.HCM
Định dạng
Số trang 219
Dung lượng 0,91 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nội dung chính gồm 12 chương : 1. Ôn lại máy tính số, ngôn ngữ, thể hiện dữ liệu. 2. Phân tích topdown bottomup. 3. Cấu trúc dữ liệu giải thuật. 4. Cấu trúc ₫iều khiển gọi hàm. 5. Lặp và ₫ệ qui. 6. Cơ bản về kiểm thử phần mềm. 7. Ôn lại hướng ₫ối tượng. 8. Xây dựng phầm mềm bằng cách lắp ghép những linh kiện cơ bản. 9. Tính tổng quát hoá. 10. Thừa kế trong xây dựng class ₫ối tượng mới. 11. Tính ₫a xạ. 12. Tính thường trú

Trang 1

MÔN KỸ THUẬT LẬP TRÌNH

Tài liệu tham khảo :

ƒ Tập slide bài giảng & thực hành của môn học này.

ƒ 3 CD MSDN trong Microsoft Visual Studio.

Nội dung chính gồm 12 chương :

1 Ôn lại máy tính số, ngôn ngữ, thể

hiện dữ liệu.

2 Phân tích top-down & bottom-up.

3 Cấu trúc dữ liệu & giải thuật.

4 Cấu trúc ₫iều khiển & gọi hàm.

10 Thừa kế trong xây dựng class

₫ối tượng mới.

11 Tính ₫a xạ.

12 Tính thường trú.

Đối tượng : SV ₫ại học chính quy ngành CNTT

Trang 2

MÔN KỸ THUẬT LẬP TRÌNH

Chương 1

ÔN LẠI MÁY TÍNH SỐ, NGÔN NGỮ

LẬP TRÌNH, THỂ HIỆN DỮ LIỆU

Trang 3

ƒ Máy tính số là thiết bị có thể thực hiện 1 số hữu hạn các chức năng cơ bản (tập lệnh), cơ chế thực hiện các lệnh là tự ₫ộng, bắt ₫ầu từ lệnh

₫ược chỉ ₫ịnh nào ₫ó rồi tuần tự từng lệnh kế tiếp cho ₫ến lệnh cuối cùng Danh sách các lệnh ₫ược thực hiện này ₫ược gọi là chương trình

ƒ Các lệnh mà máy hiểu và thực hiện ₫ược ₫ược gọi là lệnh máy Ta dùng ngôn ngữ ₫ể miêu tả các lệnh Ngôn ngữ lập trình cấu thành từ 2 yếu tố chính : cú pháp và ngữ nghĩa Cú pháp qui ₫ịnh trật tự kết hợp các phần

tử ₫ể cấu thành 1 lệnh (câu), còn ngữ nghĩa cho biết ý nghĩa của lệnh

Các khái niệm cơ bản về máy tính số

Trang 4

ƒ Vấn ₫ề mấu chốt của việc dùng máy tính giải quyết công việc ngoài ₫ời

là lập trình (₫ược hiểu nôm na là qui trình xác ₫ịnh trình tự ₫úng các lệnh máy ₫ể thực hiện công việc) Cho ₫ến nay, lập trình là công việc của con người (với sự trợ giúp ngày càng nhiều của máy tính)

ƒ Với công nghệ phần cứng hiện nay, ta chỉ có thể chế tạo các máy tính

mà tập lệnh máy rất sơ khai, mỗi lệnh máy chỉ có thể thực hiện 1 công việc rất nhỏ và ₫ơn giản ⇒ công việc ngoài ₫ời thường tương ₫ương với trình tự rất lớn (hàng triệu) các lệnh máy ⇒ Lập trình bằng ngôn ngữ máy rất phức tạp, tốn nhiều thời gian, công sức, kết quả rất khó bảo trì, phát triển

ƒ Ta muốn có máy luận lý với tập lệnh (₫ược ₫ặc tả bởi ngôn ngữ lập trình) cao cấp và gần gủi hơn với con người Ta thường hiện thực máy này bằng 1 máy vật lý + 1 chương trình dịch Có 2 loại chương trình dịch : trình biên dịch (compiler) và trình thông dịch (interpreter)

Các khái niệm cơ bản về máy tính số (tt)

Trang 5

ƒ Gọi ngôn ngữ máy vật lý là N0 Trình biên dịch ngôn ngữ N1 sang ngôn ngữ N0 sẽ nhận ₫ầu vào là chương trình ₫ược viết bằng ngôn ngữ N1, phân tích từng lệnh N1 rồi chuyển thành danh sách các lệnh ngôn ngữ N0 có chức năng tương ₫ương Để viết chương trình dịch từ ngôn ngữ N1 sang N0 dễ dàng, ₫ộ phức tạp của từng lệnh ngôn ngữ

N1 không quá cao so với từng lệnh ngôn ngữ N0

ƒ Sau khi có máy luận lý hiểu ₫ược ngôn ngữ luận lý N1, ta có thể ₫ịnh nghĩa và hiện thực máy luận lý N2 theo cách trên và tiếp tục ₫ến khi ta

có 1 máy luận lý hiểu ₫ược ngôn ngữ Nm rất gần gũi với con người, dễ dàng miêu tả giải thuật của bài toán cần giải quyết

ƒ Nhưng qui trình trên chưa có ₫iểm dừng, với yêu cầu ngày càng cao

và kiến thức ngày càng nhiều, người ta tiếp tục ₫ịnh nghĩa những ngôn ngữ mới với tập lệnh ngày càng gần gũi hơn với con người ₫ể miêu tả giải thuật càng dễ dàng, gọn nhẹ và trong sáng hơn

Các khái niệm cơ bản về máy tính số (tt)

Trang 6

ƒ Ngôn ngữ máy vật lý là loại ngôn ngữ thấp nhất mà người lập trình bình thường có thể dùng ₫ược Các lệnh và tham số của lệnh ₫ược miêu tả bởi các số nhị phân (binary) hay hexadecimal Đây là loại ngôn ngữ mà máy vật lý có thể hiểu trực tiếp, nhưng con người thì gặp nhiều khó khăn trong việc viết và bảo trì chương trình ở cấp này.

ƒ Ngôn ngữ assembly rất gần với ngôn ngữ máy, những lệnh cơ bản nhất của ngôn ngữ assembly tương ứng với lệnh máy nhưng ₫ược biểu diễn dưới dạng gợi nhớ Ngoài ra, người ta tăng cường thêm khái niệm "lệnh macro" ₫ể nâng sức mạnh miêu tả giải thuật

ƒ Ngôn ngữ cấp cao theo trường phái lập trình cấu trúc như Pascal, C, Tập lệnh của ngôn ngữ này khá mạnh và gần với tư duy của người bình thường

ƒ Ngôn ngữ hướng ₫ối tượng như C++, Visual Basic, Java, C#, cải tiến phương pháp cấu trúc chương trình sao cho trong sáng, ổn ₫ịnh, dễ phát triển và thay thế linh kiện

Các cấp ₫ộ ngôn ngữ lập trình

Trang 7

ƒ Các lệnh của chương trình (code) sẽ truy xuất (₫ọc và/hoặc ghi) thông tin (dữ liệu).

ƒ Chương trình giải quyết bài toán nào ₫ó có thể truy xuất nhiều dữ liệu khác nhau với tính chất rất ₫a dạng Để quản lý việc truy xuất 1 dữ liệu

cụ thể, ta cần 3 thông tin về dữ liệu ₫ó :

- tên nhận dạng (identifier) xác ₫ịnh vị trí của dữ liệu.

- kiểu dữ liệu (type) miêu tả cấu trúc của dữ liệu.

- tầm vực truy xuất (visibility) xác ₫ịnh các lệnh ₫ược phép truy xuất

dữ liệu tương ứng

ƒ Chương trình cổ ₫iển = dữ liệu + giải thuật

ƒ Chương trình con (function, subroutine, ) là 1 ₫oạn code thực hiện chức năng ₫ược dùng nhiều lần ở nhiều vị trí trong chương trình, nó cho phép cấu trúc chương trình, sử dụng lại code

Thí dụ về chương trình VC++

Trang 8

₫ích riêng của người lập trình.

ƒ VC++ phân biệt rõ ràng chữ hoa và chữ thường (có thể dùng If, IF ₫ể

₫ặt tên biến mà không sợ trùng với từ khóa if)

ƒ Chương trình VC++ là danh sách các câu lệnh VC++ với 1 ₫ộ dài nào

₫ó và 1 trình tự nào ₫ó tùy thuộc vào vấn ₫ề cần giải quyết và giải thuật giải quyết vấn ₫ề ₫ó

ƒ Nếu là chương trình nhỏ, nó ₫ược chứa trên 1 file *.cpp, nếu chương trình lớn, nó thường ₫ược chia nhỏ thành nhiều module chức năng, mỗi module thường ₫ược lưu trên 1 file *.cpp

Trang 9

Chương trình = cấu trúc dữ liệu + giải thuật

Trang 10

Bus giao tiếp

chứa code và data

₫ang thực thi

thực thi từng lệnh của chương trình

giao tiếp với bên ngoài (thường là người) ₫ể

nhập/xuất tin

Mô hình máy tính số Von Neumann

Trang 11

Phần tử nhớ nhỏ nhất của máy tính số chỉ có thể chứa 2 giá trị : 0 và 1 (ta gọi là bit).

Ta kết hợp nhiều phần tử nhớ ₫ể có thể miêu tả ₫ại lượng lớn hơn Thí

dụ ta dùng 8 bit ₫ể miêu tả 28 = 256 giá trị khác nhau Dãy 8 bit nhớ

₫ược gọi là byte, ₫ây là 1 ô nhớ trong bộ nhớ của máy tính

Bộ nhớ trong của máy tính ₫ược dùng ₫ể chứa dữ liệu và code của chương trình ₫ang thực thi Nó là 1 dãy ₫ồng nhất các ô nhớ 8 bit, mỗi ô nhớ ₫ược truy xuất ₫ộc lập thông qua ₫ịa chỉ của nó (tên nhận dạng) Thường ta dùng chỉ số từ 0 - n ₫ể miêu tả ₫ịa chỉ của từng ô nhớ

Mặc dù ngoài ₫ời ta ₫ã quen dùng hệ thống số thập phân, nhưng vềphần cứng bên trong máy tính, máy chỉ có thể chứa và xử lý trực tiếp dữ liệu ở dạng nhị phân Do ₫ó trong chương này, ta sẽ giới thiệu các khái niệm nền tảng về hệ thống số và cách miêu tả dữ liệu trong máy tính

Cơ bản về việc lưu trữ và xử lý tin trong máy tính

Trang 12

Hệ thống số (number system) là công cụ ₫ể biểu thị ₫ại lượng Một hệ thống số gồm 3 thành phần chính :

1 cơ số : số lượng ký số (ký hiệu ₫ể nhận dạng các số cơ bản).

2 qui luật kết hợp các ký số ₫ể miêu tả 1 ₫ại lượng nào ₫ó.

Trang 13

Biểu diễn của lượng Q trong hệ thống số B (B>1) là :

dndn-1 d1d0d-1 d-m ⇔

Q = dn*Bn + dn-1*Bn-1 + +d0*B0 +d-1*B-1 + +d-m*B-m

trong ₫ó mỗi di là 1 ký số trong hệ thống B

Trong thực tế lập trình bằng ngôn ngữ cấp cao, ta thường dùng hệthống số thập phân ₫ể miêu tả dữ liệu số của chương trình (vì ₫ãquen) Chỉ trong 1 số trường hợp ₫ặc biệt, ta mới dùng hệ thống số nhị phân (hay thập lục phân) ₫ể miêu tả 1 vài giá trị nguyên, trong trường hợp này, qui luật biểu diễn của lượng nguyên Q trong hệ thống số B sẽ

Trang 14

Thí dụ về biểu diễn các lượng trong các hệ thống số :

- lượng "mười bảy" ₫ược miêu tả là 17 trong hệ thập phân vì :

- 17D ₫ể xác ₫ịnh sự biểu diễn trong hệ thống số thập phân

- 11H (hệ thống số thập lục phân.)

- 10001B (hệ thống số thập nhị phân.)

Cơ bản về hệ thống số - Vài thí dụ

Trang 16

Thí dụ về các phép tính cơ bản (các giá trị ₫ều ₫ược biểu diễn bằng hệ nhị phân :

Trang 17

Thí dụ về phép chia

Trang 18

Thí dụ về các phép tính dịch ký số (các giá trị ₫ều ₫ược biểu diễn bằng

Trang 19

Đại số Boole nghiên cứu các phép toán thực hiện trên các biến chỉ có

2 giá trị 0 và 1, tương ứng với hai thái cực luận lý "sai" và "₫úng" (hay

"không" và "có") của ₫ời thường Các phép toán này gồm :

x y not x x and y x nand y x or y x nor y x xor y

Trang 20

Các ₫ơn vị ₫o lường bộ nhớ thường dùng là :

1 byte : 8bit, có thể miêu tả ₫ược 28 = 256 giá trị khác nhau

2 word : 2 byte, có thể miêu tả ₫ược 216 = 65536 giá trị khác nhau

3 double word : 4 byte, có thể miêu tả ₫ược 232 = 4.294.967.296

giá trị khác nhau

4 KB (kilo byte) = 210 = 1024 byte

5 MB (mega byte) = 220 = 1024KB = 1.048.576 byte

6 GB (giga byte) = 230 = 1024MB = 1.073.741.824 byte

7 TB (tetra byte) = 240 = 1024GB = 1.099.511.627.776 byte

Thí dụ, RAM của máy bạn là 256MB, ₫ĩa cứng là 40GB

Các ₫ơn vị nhớ thường dùng

Trang 21

Tùy ngôn ngữ lập trình mà

cách biểu diễn số trong

máy có những khác biệt

nhất ₫ịnh Riêng VC++ có

nhiều phương pháp biểu

diễn số khác nhau, trong ₫ó

2 cách thường dùng là số

nguyên và số thực

Máy dùng 4 byte ₫ể chứa

dữ liệu nguyên (int) theo qui

₫ịnh sau (khi chứa vào bộ

nhớ thì byte trọng số nhỏ ₫i

trước - LE - Little Endian) :

Biểu diễn số nguyên trong Visual C++

00000000 00000000 00000000 00000000 0

00000000 00000000 00000000 00000001 1

01111111 11111111 11111111 11111111 2147483647

10000000 00000000 00000000 00000000 -2147483648

10000000 00000000 00000000 00000001 -2147483647

11111111 11111111 11111111 11111111 -1

Trang 22

Để miêu tả ₫ược các giá trị nguyên nằm trong phạm vi nhỏ từ -32768

₫ến 32767 ít tốn chỗ, VC++ cung cấp kiểu 'short', kiểu này dùng 2 byte

₫ể miêu tả 1 giá trị nguyên với cùng nguyên tắc như kiểu 'int'

Máy dùng 8 byte ₫ể chứa dữ liệu thực (Kiểu double) theo dạng sau :

Trang 23

Chuỗi ký tự là danh sách nhiều ký tự, mỗi ký tự ₫ược miêu tả trong máy bởi n bit nhớ :

ƒ Mã ASCII dùng 7 bit (dùng luôn 1 byte nhưng bỏ bit 8) ₫ể miêu tả

1 ký tự ⇒ tập ký tự mà mã ASCII miêu tả ₫ược là 128

ƒ Mã ISO8859-1 dùng 8 bit (1byte) ₫ể miêu tả 1 ký tự ⇒ tập ký tự

mà mã ISO8859-1 miêu tả ₫ược là 256

ƒ Mã Unicode trên Windows dùng 16 bit (2 byte) ₫ể miêu tả 1 ký tự

⇒ tập ký tự mà mã Unicode trên Windows miêu tả ₫ược là 65536

ƒ

Hiện có nhiều loại mã tiếng Việt khác nhau, ₫a số dùng mã ISO8859-1 rồi qui ₫ịnh lại cách hiển thị 1 số ký tự thành ký tự Việt Riêng Unicode là

bộ mã thống nhất toàn cầu, trong ₫ó có ₫ủ các ký tự Việt

Biểu diễn chuỗi ký tự trong VC++

Trang 24

Mã ASCII dùng các giá trị (mã) từ 0 - 127 ₫ể miêu tả các ký tự :

ƒ Mã từ 0 - 31 là các mã ₫iều khiển như CR=13 (Carriage Return),

LF=10 (Line Feed), ESC=27 (Escape)

ƒ Mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau :

Bảng mã ASCII 7 bit

! " # $ % & ' ( ) * + , - / 0 1 2 3 4 5 6 7 8 9 : ; < = > ?

@ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _

` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~

Trang 25

Mã ISO8859-1 dùng các giá trị (mã) từ 0 - 255 ₫ể miêu tả các ký tự (128

mã ký tự ₫ầu qui ₫ịnh giống như mã ASCII) :

ƒ Mã từ 0 - 31 là các mã ₫iều khiển như CR=13 (Carriage Return),

LF=10 (Line Feed), ESC=27 (Escape)

ƒ Mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau :

Trang 26

Mã ĐHBK 1 byte có ₫ược bằng cách hiệu chỉnh bảng mã ISO8859-1 :

ƒ Mã từ 0 - 31 là các mã ₫iều khiển như CR=13 (Carriage Return),

LF=10 (Line Feed), ESC=27 (Escape)

ƒ Mã 32 miêu tả ký tự trống, 33 miêu tả ký tự !, theo bảng sau :

Bảng mã tiếng Việt ĐHBK 1 byte

Trang 27

Mã Unicode Windows dùng 2 byte ₫ể miêu tả 1 ký tự :

ƒ 256 mã ₫ầu từ 0 - 255 giống y như mã ISO8859-1

ƒ Mã từ 256 trở ₫i chứa các ký tự của hầu hết các ngôn ngữ trên

thế giới (quá khứ, hiện tại và tương lai)

ƒ Thí dụ sau là 1 phần mã tiếng Việt trong mã Unicode :

Một phần mã tiếng Việt Unicode

Trang 28

Số nguyên (int), số thực (double), chuỗi ký tự (char[]) là những dạng mã hóa dữ liệu phổ dụng, ngoài ra mỗi ứng dụng có thể cần có cách mã hóa riêng ₫ể mã hóa dữ liệu ₫ặc thù của mình như hình ảnh, âm thanh,

Trong chương 3 chúng ta sẽ trình bày chi tiết các kiểu dữ liệu mà ngôn ngữ VC++ hỗ trợ

Nhưng dù dùng cách mã hóa cụ thể nào thì kết quả của việc mã hóa phải là 1 chuỗi bit (hay chuỗi byte) ₫ể có thể ₫ược lưu trữ và xử lý bên trong máy tính

Bộ nhớ của máy tính thường có dung lượng không lớn nên ta chỉ dùng nó

₫ể chứa code và dữ liệu của chương trình ₫ang thực thi

1 máy tính có thể lưu trữ rất nhiều chương trình và dữ liệu của chúng trên các thiết bị chứa tin (bộ nhớ ngoài) như ₫ĩa mềm, ₫ĩa cứng, CDROM,

Mã hóa dữ liệu của ứng dụng

Trang 29

ƒ Code của 1 chương trình, chuỗi byte miêu tả dữ liệu ₫ược lưu trữ trên thiết bị chứa tin trong 1 phần tử chứa tin luận lý ₫ược gọi là file.

ƒ 1 thiết bị chứa tin thường chứa rất nhiều file Để nhận dạng và truy xuất 1 file, ta dùng tên nhận dạng gán cho mỗi file Để dễ dùng file, tên nhận dạng của nó sẽ ở dạng tên gợi nhớ (chuỗi ký tự miêu tả ngữ nghĩa của nội dung file), thí dụ như file "luận án tốt nghiệp.doc" chứa toàn bộ nội dung luận án tốt nghiệp của người dùng máy

ƒ Nếu ta dùng không gian phẳng ₫ể ₫ặt tên cho các file trên 1 thiết bị chứa tin thì vì số lượng file quá lớn nên ta khó lòng ₫ặt tên, nhận dạng, xử lý, (nói chung là quản lý) từng file

ƒ Để giải quyết vấn ₫ề trên ta dùng không gian cây thứ bậc ₫ể tổ chức

và quản lý các file trên từng thiết bị chứa tin

Thiết bị chứa tin - File

Trang 30

ƒ Để tạo không gian cây thứ bậc, ta dùng khái niệm thư mục (directory).

ƒ Thư mục là phần tử chứa nhiều phần tử bên trong nó : có thể là file hay thư mục Thường ta sẽ dùng thư mục ₫ể chứa những phần tử con

có mối quan hệ mật thiết nào ₫ó, thí dụ như thư mục chứa các ảnh kỷ niệm, thư mục chứa các file nhạc ưa thích,

ƒ Thiết bị chứa tin vật lý (₫ĩa mềm, ₫ĩa cứng, CDROM, ) ₫ược trừu tượng hóa như là 1 thư mục (ta gọi thư mục ₫ặc biệt này là thư mụcgốc) Thư mục gốc chứa nhiều phần tử con bên trong, mỗi phần tử con của thư mục gốc thường là thư mục con nhưng cũng có thể là file Mỗi thư mục con lại có thể chứa nhiều thư mục con hay file và cứ thế ta sẽ hình thành 1 cây thứ bậc các thư mục và file

ƒ Ta cũng dùng tên gợi nhớ ₫ể nhận dạng từng thư mục Trong không gian cây thứ bậc, ta sẽ dùng khái niệm ₫ường dẫn (pathname) ₫ể nhận dạng 1 file hay 1 thư mục

Thiết bị chứa tin : Không gian cây thứ bậc

Trang 32

ƒ Đường dẫn (pathname) là thông tin ₫ể tìm kiếm (xác ₫ịnh) 1 phần tử

từ 1 vị trí nào ₫ó, nó chứa danh sách chính xác các tên gợi nhớ của các phần tử mà ta phải ₫i qua xuất phát từ vị trí ₫ầu ₫ể ₫ến phần tử cần tìm

ƒ Ta dùng 1 dấu ngăn ₫ặc biệt ₫ể ngăn cách 2 tên gợi nhớ liên tiếp nhau trong ₫ường dẫn (trong Windows, dấu ngăn là '\')

ƒ Tên thư mục gốc luôn là '\'

ƒ Có 2 khái niệm ₫ường dẫn : ₫ường dẫn tuyệt ₫ối và ₫ường dẫn tương

₫ối Đường dẫn tuyệt ₫ối là ₫ường dẫn xuất phát từ thư mục gốc,

₫ường dẫn tương ₫ối xuất phát từ thư mục làm việc (working directory)

ƒ Trước khi ứng dụng bắt ₫ầu chạy, hệ thống sẽ khởi ₫ộng thư mục

ứng dụng có quyền thay ₫ổi thư mục làm việc theo yêu cầu riêng

Đường dẫn tuyệt ₫ối và tương ₫ối

Trang 33

ƒ Xét cây thứ bậc của ổ c: trên slide 36, ₫ường dẫn tuyệt ₫ối sau sẽ nhận dạng chính xác file arial.ttf trong thư mục 'Fonts' :

c:\Windows\Fonts\arial.ttf

ƒ Nếu thư mục working của chương trình hiện là c:\Windows\Fonts thì ta

có thể dùng ₫ường dẫn tương ₫ối sau ₫ây ₫ể xác ₫ịnh file arial.ttf :

Trang 34

ƒ Hình dạng và cấu trúc của 1 hệ thống file của 1 thiết bị chứa tin sẽ do người dùng thiết lập nhờ các tác vụ phổ biến như : tạo/xóa thư mục,tạo/xóa file, copy/move file/thư mục từ nơi này ₫ến nơi khác.

ƒ Nhưng trước khi thực hiện 1 tác vụ nào ₫ó, người dùng thường duyệt file : làm hiển thị cấu trúc của hệ thống file ở 1 dạng nào ₫ó ₫ể quan sát nó

dễ dàng

ƒ Hệ thống dùng nhiều cơ chế khác nhau ₫ể bảo vệ việc truy xuất file bởi người dùng 1 trong các cơ chế mà Windows 9x dùng là kết hợp với mỗi file 1 số thuộc tính truy xuất, mỗi thuộc tính ₫ược lưu trữ trong 1 bit :

ƒ Read Only, nếu = 1 thì hệ thống không cho các ứng dụng

xóa/hiệu chỉnh phần tử

ƒ Hidden, nếu = 1 thì hệ thống sẽ dấu không hiển thị phần tử bởi

các ứng dụng duyệt file

ƒ Archive ₫ược thiết lập =1 nếu phần tử bị hiệu chỉnh nội dung

(phục vụ cho cơ chế backup tăng dần)

Quản lý hệ thống file

Trang 35

ƒ Tất cả tác vụ liên quan ₫ến hệ thống file ₫ược gọi là tác vụ quản lý hệ

thống file

ƒ Hệ thống sẽ cung cấp 1 ứng dụng (tiện ích) ₫ể người dùng dễ dàng

thực hiện các tác vụ quản lý file Thí dụ trên Windows ta thường dùng tiện ích "Windows Explorer" ₫ể quản lý hệ thống file

ƒ Có 4 cách phổ biến ₫ể chạy 1 ứng dụng (tiện ích) :

1 Double-click vào icon miêu tả ứng dụng trên màn hình desktop

(phải tạo icon shortcut chương trình trước khi dùng cách chạy này)

2 Duyệt và chọn ứng dụng từ menu Start.Programs

3 Chạy trình Windows Explorer (từ menu Start.Programs

Accessories.Windows Explorer), duyệt thư mục tìm file ứng dụng rồi chạy nó

4 Vào menu Start.Run, rồi nhập hàng lệnh chứa ₫ường dẫn xác ₫ịnh

Tiện ích quản lý hệ thống file

Trang 36

MÔN KỸ THUẬT LẬP TRÌNH

Chương 2

PHÂN TÍCH TOP-DOWN & BOTTOM-UP

Trang 37

Mỗi sự vật trong môi trường xung quanh ta ₫ều ₫ược cấu thành từ nhiều phần tử nhỏ hơn, mỗi phần tử nhỏ lại ₫ược cấu thành từ nhiều phần tử nhỏ hơn nữa Thí

dụ, con người gồm ₫ầu, mình, tứ chi Tứ chi gồm 2 tay và 2 chân

Mỗi công việc cần giải quyết bằng máy tính cũng ₫ược cấu thành từ nhiều công việc nhỏ hơn, mỗi công việc nhỏ hơn lại ₫ược cấu thành từ nhiều công việc nhỏ hơn nữa

Phương pháp phân tích từ-trên-xuống (top-down analysis) là phương pháp thường

sử dụng ₫ể phân tích công việc, nội dung của phương pháp này là cố gắng xác

₫ịnh xem công việc cần giải quyết ₫ược cấu thành từ những công việc nhỏ nào, mỗi công việc nhỏ ₫ược cấu thành từ các công việc nhỏ hơn nào, cứ như vậy cho

₫ến khi những công việc xác ₫ịnh ₫ược là những công việc thật ₫ơn giản, có thể thực hiện dễ dàng.

Thí dụ việc học lấy bằng kỹ sư CNTT khoa CNTT ĐHBK TP.HCM có thể bao gồm

9 công việc nhỏ hơn là học từng học kỳ từ 1 tới 9, học học kỳ i là học n môn học của học kỳ ₫ó, học 1 môn học là học m chương của môn ₫ó,

Hình vẽ của slide kế cho thấy trực quan của phương pháp phân tích top-down.

Phương pháp phân tích từ-trên-xuống

Trang 38

Công việc cần giải quyết (A)

Trang 39

Công việc cần giải quyết

Trang 40

Ngược với phương pháp phân tích từ-trên-xuống là phương pháp từ-dưới-lên (bottom-up), nội dung của phương pháp này là xuất phát từ những công việc nhỏ

₫ã biết ta cố gắng kết hợp chúng ₫ể giải quyết ₫ược công việc lớn hơn, rồi từ các công việc lớn hơn này, ta lại cố gắng kết hợp chúng ₫ể giải quyết ₫ược công việc lớn hơn nữa, cứ thế tiếp tục ₫ến lúc ta giải quyết ₫ược công việc cần giải quyết.

Thí dụ ta ₫ã biết n môn học rời rạc, ta cố gắng kết hợp 1 số trong chúng ₫ể tạo ra công việc lớn hơn mà ta gọi là "học kỳ", rồi ta cố gắng kết hợp 1 số trong các học

kỳ ₫ã có ₫ể tạo ra công việc lớn hơn mà ta gọi là "chương trình học kỹ sư".

Hình vẽ của slide kế cho thấy trực quan của phương pháp phân tích bottom-up.

Phương pháp phân tích từ-dưới-lên

Ngày đăng: 25/08/2023, 14:13

🧩 Sản phẩm bạn có thể quan tâm

w