Classes và Objects: triết lí hướng đối tượng Kotlin

Classes và Objects: triết lí hướng đối tượng Kotlin

Tại phần bắt đầu của các học phần chúng tôi đã nói rằng các chương trình máy tính là về xử lí một vài nhập vào và
khởi tạo một vài đầu ra từ nó, có thể cũng thay đổi trạng thái của một vài thực thể khởi tạo giữ dữ liệu như một
file hay một CSDL. Mặc dù cái này chắc chắn đúng, nó không kể toàn bộ câu chuyện. Trong các kịch bản thế giới thực,
các chương trình máy tính trình bày đặc tính khác: Chúng được cho là thuộc một loại sử dụng thực tế, và như kết
quả của cái đó, mô hình hóa các vật và sự kiện thế giới thực.
Ví dụ, giả sử bạn viết một chương trình đơn giản cho đăng kí paper invoices và tính tổng các lượng money cho mỗi
day. Nhập vào là rõ ràng: nó là các paper invoices trong dạng điện tử. Đầu ra là tổng tính hàng ngày, và trên
suốt con đường một CSDL giữ các hồ sơ cho tất cả các invoices đăng kí. Khía cạnh mô hình hóa thông báo cho chúng
tta biết rằng chúng ta làm việc với các objects sau: một invoice trong dạng điện tử, một CSDL cho giữ các hồ sơ, và
một vài máy tính toán cho truy cập CSDL và thực hiện hoạt động tính tổng. Để là sử dụng thực tế các objects này
cần trình bày các đặc tính sau. Trước tiên, phụ thuộc vào bản chất của chúng, chúng có thể có state (trạng thái).
Cho invoice object, ví dụ, chúng ta có name của seller, name của buyer, date, name của goods, và tất nhiên lượng
tiền. Các phần tử state như vậy phổ biến được nhắc đến như là các đặc tính. CSDL rõ ràng là có các nội dung CSDL
như là state của nó. Máy tính toán, tương phản lại, không cần state của bản thân nó, và nó sử dụng state từ các
objects khác để làm công việc của nó. Đặc tính thứ hai của các objects là các hoạt động bạn có thể thực hiện trên
chúng, phổ biến nhắc đến như là các methods (phương thức). Invoice object, ví dụ, có thể có các methods để
thiết lập và thông báo cho chúng ta về state của nó, Object CSDL cần các methods cho lưu và giành dữ liệu từ nơi
lưu giữ của nó, và máy tính toán rõ ràng phải có thể thực hiện tính tổng cho mỗi day.

Chia sẻ