HINH_HOC VE()

Một phần của tài liệu phân tích, thiết kế và lập trình hướng đối tượng pptx (Trang 25 - 26)

các hình khác nhau phụ thuộc vào tham số (đợc phân biệt bởi số l- ợng, kiểu của tham số) khi gọi để thực hiện.

HINH_HOCVE() VE()

HINH_TRON DA_GIAC DUONG_THANG

VE(TRON) VE(DA_GIAC) VE(DUONG_TH)

Hình 3-5. Tơng ứng bội của hàm VE()

Hàm VE() là hàm tơng ứng bội và nó đợc xác định tuỳ theo ngữ cảnh khi sử dụng.

Tơng ứng bội đóng vai trò quan trọng trong việc tạo ra các đối t- ợng có cấu trúc bên trong khác nhau nhng có khả năng cùng dùng chung một giao diện bên ngoài (nh tên gọi). Điều này có nghĩa là một lớp tổng quát các phép toán đợc định gnhĩa theo cùng một cách giống nhau. Tơng ứng bội là mở rộng khái niệm sử dụng lại trong nguyên lý kế thừa.

Liên kết động

Liên kết động là dạng liên kết các hàm, thủ tục khi chơng trình thực hiện các lời gọi tới các hàm, thủ tục đó. Nh vậy trong liên kết động, nội dung của đoạn chơng trình ứng với thủ tục, hàm sẽ không đợc biết cho đến khi thực hiện lời gọi tới thủ tục, hàm đó. Liên kết động liên quan chặt chẽ tới tơng ứng bội và kế thừa. Chúng ta hãy lu ý hàm VE() trong Hình 4-5. Theo nguyên lý kế thừa thì mọi đối tợng đều có thể sử dụng hàm này để vẽ hình theo yêu cầu. Tuy nhiên, thuật toán thực hiện hàm VE() là duy nhất đối với từng đối tợng HINH_TRON, DA_GIAC, DUONG_THANG và vì vậy hàm VE() sẽ đợc định nghĩa lại khi các đối tợng tơng ứng đợc xác định. Khi thực hiện, ví dụ nh khi vẽ một hình tròn, đoạn chơng trình ứng với hàm VE() hình tròn đợc gọi ra để thực hiện.

Truyền thông báo

Chơng trình hớng đối tợng (đợc thiết kế và lập trình theo hớng đối tợng) bao gồm một tập các đối tợng và mối quan hệ giữa các đối tợng với nhau. Vì vậy, lập trình trong ngôn ngữ hớng đối tợng bao gồm các bớc sau:

1. Tạo ra các lớp xác định các đối tợng và hành vi của chúng.

2. Tạo ra các đối tợng theo định nghĩa của các lớp. 3. Xác định sự trao đổi giữa các đối tợng.

Các đối tợng gửi và nhận thông tin với nhau giống nh con ngời trao đổi với nhau. Chính nguyên lý trao đổi thông tin bằng cách truyền thông báo cho phép chúng ta dễ dàng xây dựng đợc hệ thống mô phỏng gần hơn những hệ thống trong thế giới thực. Truyền thông báo cho một đối tợng tức là báo cho nó phải thực hiện một việc gì đó. Cách ứng xử của đối tợng sẽ đợc mô tả ở trong lớp thông qua các hàm (hay còn đợc gọi là lớp dịch vụ).

Trong chơng trình, thông báo gửi đến cho một đối tợng chính là yêu cầu thực hiện một công việc cụ thể, nghĩa là sử dụng những hàm tơng ứng để xử lý dữ liệu đã đợc khai báo trong đối tợng đó. Vì vậy, trong thông báo phải chỉ ra đợc hàm cần thực hiện trong đối tợng nhận thông báo. Hơn thế nữa,thông báo truyền đi phải xác định tên đối tợng, tên hàm (thông báo) và thông tin truyền đi. Ví dụ, lớp CONG_NHAN có thể hiện là đối tợng cụ thể đợc đại diện bởi Ho_Ten nhận đợc thông báo cần tính lơng thông qua hàm TINH_LUONG đã đợc xác định trong lớp CONG_NHAN. Thông báo đó sẽ đợc xử lý nh sau:

CONG_NHAN.TINH_LUONG (Ho_Ten) Đối tợng Thông báo Thông tin

Mỗi đối tợng chỉ tồn tại trong thời gian nhất định. Đối tợng đợc tạo ra khi nó đợc khai báo và sẽ bị huỷ bỏ khi chơng trình ra khỏi miền xác định của đối tợng đó. Sự trao đổi thông tin chỉ có thể thực hiện trong thời gian đối tợng tồn tại.

Các u điểm của lập trình hớng đối tợng

Nh trên chúng ta đã phân tích, lập trình hớng đối tợng đem lại một số lợi thế cho cả ngời thiết kế lẫn ngời lập trình. Cách tiếp cận hớng đối tợng giải quyết đợc nhiều vấn đề tồn tại trong quá trình phát triển phần mềm và tạo ra đợc những sản phẩm phần mềm có chất lợng cao. Những phơng pháp này mở ra một triển vọng to lớn cho những ngời lập trình. Hy vọng sẽ có nhiều sản phẩm phần mềm tốt hơn, đáp ứng đợc những tính chất về sản phẩm chất lợng cao trong công nghệ

phần mềm và nhất là bảo trì hệ thống ít tốn kém hơn. Những u điểm chính của LTHĐT là:

1. Thông qua nguyên lý kế thừa, chúng ta có thể loại bỏ đợc những đoạn chơng trình lặp lại, d thừa trong quá trình mô tả các lớpp và mở rộng khả năng sử dụng các lớp đã đợc xây dựng.

2. Chơng trình đợc xây dựng từ những đơn thể (đối tợng) trao đổi với nhau nên việc thiết kế và lập trình sẽ đợc thực hiện theo quy trình nhất định chứ không phải dựa vào kinh nghiệm và kỹ thuật nh trớc. Điều này đảm bảo rút ngắn đợc thời gian xây dựng hệ thống và tăng năng suất lao động.

3. Nguyên lý giấu thông tin giúp ngời lập trình tạo ra đợc những chơng trình an toàn không bị thay bởi những đoạn chơng trình khác.

4. Có thể xây dựng đợc ánh xạ các đối tợng của bài toán vào đối t- ợng của chơng trình.

5. Cách tiếp cận thiết kế đặt trọng tâm vào đối tợng, giúp chúng ta xây dựng đợc mô hình chi tiết và gần với dạng cài đặt hơn.

6. Những hệ thống hớng đối tợng dễ mở rộng, nâng cấp thành những hệ lớn hơn.

7. Kỹ thuật truyền thông báo trong việc trao đổi thông tin giữa các đối tợng giúp cho việc mô tả giao diện với các hệ thống bên ngoài trở nên đơn giản hơn.

8. Có thể quản lý đợc độ phức tạp của những sản phẩm phần mềm. Không phải trong hệ thống hớng đối tợng nào cũng có tất cả các tính chất nêu trên. Khả năng có các tính chất đó còn phụ thuộc vào lĩnh vực ứng dụng của dự án tin học và vào phơng pháp thực hiện của ngời phát triển phần mềm.

Một phần của tài liệu phân tích, thiết kế và lập trình hướng đối tượng pptx (Trang 25 - 26)