Mụ hỡnh đối tượng
17.1.2- Trạng thỏi, ứng xử và nhận diện của đối tượng
Trạng thỏi (state) của một đối tượng là một trong những hoàn cảnh nơi đối tượng cú thể tồn tại. Trạng thỏi của một đối tượng thường sẽ thay đổi theo thời gian, và nú được định nghĩa qua một tổ hợp cỏc thuộc tớnh, với giỏ trị của cỏc thuộc tớnh này cũng như mối quan hệ mà đối tượng cú thể cú với cỏc đối tượng khỏc. Vớ dụ một danh sỏch ghi danh cho một lớp học trong hệ thống trường học cú thể cú hai trạng thỏi: trạng thỏi đúng và trạng thỏi mở. Nếu danh sỏch sinh viờn ghi danh cho lớp học này cũn nhỏ hơn số tối đa cho phộp (vớ dụ là 10), thỡ trạng thỏi của bảng ghi danh này là mở. Một khi đó đủ 10 sinh viờn ghi danh cho lớp, danh sỏch sẽ chuyển sang trạng thỏi đúng.
Ứng xử (Behaviour) xỏc định một đối tượng sẽ phản ứng như thế nào trước những yờu cầu từ cỏc đối tượng khỏc, nú tiờu biểu cho những gỡ mà đối tượng này cú thể làm. Ứng xử được thực thi qua loạt cỏc Phương thức (operation) của đối tượng. Trong vớ dụ trường đại học, một đối tượng bảng ghi danh lớp học cú thể cú ứng xử là bổ sung thờm một sinh viờn hay xúa đi tờn của một sinh viờn khi sinh viờn đăng ký học hay bói bỏ đăng ký.
Sự nhận diện (Identity) đảm bảo rằng mỗi đối tượng là duy nhất – dự trạng thỏi của nú cú thể giống với trạng thỏi của cỏc đối tượng khỏc. Vớ dụ, khúa học đại số 101 chương 1 và
G
khúa học đại số 101 chương 2 là hai đối tượng trong hệ thống ghi danh trường học. Mặc dự cả hai đều thuộc loại bảng ghi danh, mỗi khúa học vẫn cú sự nhận dạng duy nhất của mỡnh.
17.1.3 Lớp (Class)
Một lớp là một lời miờu tả của một nhúm cỏc đối tượng cú chung thuộc tớnh, chung phương thức (ứng xử), chung cỏc mối quan hệ với cỏc đối tượng khỏc và chung ngữ nghĩa (semantic). Núi như thế cú nghĩa lớp là một khuụn mẫu để tạo ra đối tượng. Mỗi đối tượng là một thực thể của một lớp nào đú và một đối tượng khụng thể là kết quả thực thể húa của nhiều hơn một lớp. Chỳng ta sử dụng khỏi niệm lớp để bàn luận về cỏc hệ thống và để phõn loại cỏc đối tượng mà chỳng ta đó nhận dạng ra trong thế giới thực.
Một lớp tốt sẽ nắm bắt một và chỉ một sự trừu tượng húa - nú phải cú một chủ đề chớnh. Vớ dụ, một lớp vừa cú khả năng giữ tất cả cỏc thụng tin về một sinh viờn và thụng tin về tất cả những lớp học mà người sinh viờn đú đó trải qua trong nhiều năm trước khụng phải là một lớp tốt, bởi nú khụng cú chủ đề chớnh. Lớp này cần phải được chia ra làm hai lớp liờn quan đến nhau: lớp sinh viờn và lớp lịch sử của sinh viờn.
Hỡnh 17.1- Mỗi thực thể trong mụ hỡnh trờn là một lớp
Khi tạo dựng mụ hỡnh cũng như thật sự xõy dựng cỏc hệ thống doanh nghiệp, cỏc hệ thống thụng tin, mỏy múc hoặc cỏc lọai hệ thống khỏc, chỳng ta cần sử dụng cỏc khỏi niệm của chớnh phạm vi vấn đề để khiến cho mụ hỡnh dễ hiểu và dễ giao tiếp hơn. Nếu chỳng ta xõy dựng hệ thống cho một cụng ty bảo hiểm, mụ hỡnh cần phải dựa trờn cỏc khỏi niệm của ngành bảo hiểm. Nếu chỳng ta xõy dựng một hệ thống cho quõn đội, thỡ cỏc khỏi niệm của thế giới quõn sự cần phải được sử dụng khi mụ hỡnh húa hệ thống. Một hệ thống dựa trờn cỏc khỏi niệm chớnh của một ngành doanh nghiệp nào đú cú thể dễ được thiết kế lại cho phự hợp với những qui chế, chiến lược và qui định mới, bởi chỳng ta chỉ cần cõn bằng và khắc phục sự chờnh lệch giữa cụng việc cũ và cụng việc mới. Khi cỏc mụ hỡnh được xõy dựng dựa trờn cỏc khỏi niệm lấy ra từ cuộc đời thực và dựa trờn cỏc khỏi niệm thuộc phạm vi vấn đề, hướng đối tượng sẽ là một phương phỏp rất thớch hợp bởi nền tảng của phương phỏp hướng đối tượng là cỏc lớp, đối tượng và mối quan hệ giữa chỳng.
Một lớp là lời miờu tả cho một dạng đối tượng trong bất kỳ một hệ thống nào đú – hệ thống thụng tin, hệ thống kỹ thuật, hệ thống nhỳng thời gian thực, hệ thống phõn tỏn, hệ thống phần mềm và hệ thống doanh thương. Cỏc vật dụng (artifact) trong một doanh nghiệp, những thụng tin cần được lưu trữ, phõn tớch hoặc cỏc vai trũ mà một tỏc nhõn đảm nhận trong một doanh nghiệp thường sẽ trở thành cỏc lớp trong cỏc hệ thống doanh nghiệp và hệ thống thụng tin.
Vớ dụ về cỏc lớp trong doanh nghiệp và cỏc hệ thống thụng tin: Khỏch hàng, Bản thương thuyết, Húa đơn, Mún nợ, Tài sản, Bản cụng bố giỏ cổ phiếu. Cỏc lớp trong một hệ thống kỹ thuật thường bao gồm cỏc đối tượng kỹ thuật, vớ dụ như mỏy múc được sử dụng trong hệ thống: Sensor, Màn hỡnh, I/O card, Động cơ, Nỳt bấm, Lớp điều khiển. Cỏc hệ thống phần
G
mềm thường cú cỏc lớp đại diện cho cỏc thực thể phần mềm trong một hệ điều hành: File, Chương trỡnh chạy được, Trang thiết bị, Icon, Cửa sổ, Thanh kộo