Cấu trúc dữ liệu và lập trình hướng đối tượng
1.8 Data Structures and Object-Oriented Programming
Mặc dù máy tính hoạt động trên các bit, chúng ta không thường xuyên suy nghĩa theo thuật nghữ này, trong thực tế, chúng ta không thích suy nghĩ đến nó. Mặc dù một số nguyên là một chuỗi 16 bit, chúng ta thích xem một số nguyên như một thực thể với tính cá biệt riêng của nó được phản ánh thông qua các phép toán trên các số nguyên nhưng không phải các biến loại khác. Và vì một số nguyên sử dụng bit làm khối xây dựng của nó, các đối tượng khác cũng có thể sử dụng số nguyên làm phần tử nguyên tử của chúng. Một số số kiểu xử liệu đã được cài đặt sẵn trong một số ngôn ngữ cụ thể, nhưng một số kiểu vẫn cần được xách định bởi người dùng. Các kiểu dữ liệu mới này có cấu trúc đặt biệt, cấu hình mới của các phần tử, và cấu trúc này xác định các hành vi của các đối tượng của kiểu dữ liệu mới này. Nhiệm vụ được giao cho miền cấu trúc dữ liệu là khám các cấu trúc mới và xem xét các hành vi của của chúng về mặt thời gian và không gian. Không giống như cách tiếp cận hướng đối tượng, chúng ta bắt đầu với các hành vi và sau đó cố gắng tìm kiểu dữ liệu phù hợp nhất cho phép thực hiện hiệu quả các hành vi mong muốn, bây giờ chúng ta bắt đầu với mô tả kiểu dữ liệu của một số cấu trúc dữ liệu và sau đó xem xét nó có thể làm, nó hoạt động như thế nào và hiệu quả như thế nào. Trường cấu trúc dữ liệu được thiết kế để xây dựng các công cụ được tích hợp và sử dụng bởi các chương trình ứng dụng và để tìm kiếm cấu trúc dữ liệu có thể thực hiện các hoạt động nhất định một cách nhanh chóng và không gây quá chiếm quá nhiều bộ nhớ máy tính. Trường này quan tâm đến việc xây dựng các lớp bằng cách tập trung vào phần máy móc của lớp, trên cách bánh răng và các răng của chúng, mà trong hầu hết tất cả các trương hợp, người sử dụng các lớp đó không nhìn thấy được. Trường cấu trúc dữ liệu xem xét khả nagnw hoạt động của lớp này và cả tiến bằng cách sửa đối cấu trúc dữ liệu được tìm thấy bên trong lớp, bởi vì nó có quyền truy cập trực tiếp vào chúng. Nó làm cho các công cụ hiệu quả hơn và tư vấn cho người dụng về những thứ mà nó có thể được áp dụng. Do sự kế thừa, người dùng có thể thêm một số hoạt động của lớp này cà cố tắng khai thác chúng nhiều hơn so người đã thiết kế ra chúng, nhưng vì cấu trúc dữ liệu đã bị ẩn từ người dùng, các hành vi mới này có thể được kiểm tra bằng chạy chạy chứ không phải bằng cách truy cập vào bên trong của lớp, trừ khi người dùng có quyền truy cập vào mã nguồn.
Trường cấu trúc dữ liệu được thực hiện một cách tốt nhất nếu thực hiện theo kiểu hướng đối tượng. Trong cách này, nó có thể được xây dựng các công cụ mà không có nguy cơ các công cụ này bị làm dụng trong ứng dụng. Bằng cách đóng gói các cấu trúc dữ liệu vào một lớp và chỉ công khai những gì cần thiết để sử dụng lớp, trường cấu trúc dữ liệu có thể phát triển các công cụ có chức năng không bị xâm phạm bởi sự giả mạo không cần thiết.