OOAD - Object Oriented Paradigm
Lịch sử tóm tắt
Mô hình hướng đối tượng được định hình từ khái niệm ban đầu về phương pháp lập trình mới, trong khi sự quan tâm đến các phương pháp thiết kế và phân tích đến muộn hơn nhiều.
Ngôn ngữ hướng đối tượng đầu tiên là Simula (Mô phỏng hệ thống thực) được phát triển vào năm 1960 bởi các nhà nghiên cứu tại Trung tâm điện toán Na Uy.
Năm 1970, Alan Kay và nhóm nghiên cứu của ông tại Xerox PARK đã tạo ra một máy tính cá nhân có tên Dynabook và ngôn ngữ lập trình hướng đối tượng thuần túy đầu tiên (OOPL) - Smalltalk, để lập trình Dynabook.
Vào những năm 1980, Grady Booch đã xuất bản một bài báo có tiêu đề Thiết kế hướng đối tượng, chủ yếu trình bày một thiết kế cho ngôn ngữ lập trình, Ada. Trong các phiên bản tiếp theo, anh đã mở rộng ý tưởng của mình sang một phương pháp thiết kế hướng đối tượng hoàn chỉnh.
Vào những năm 1990, Coad đã kết hợp các ý tưởng hành vi với các phương pháp hướng đối tượng.
Những đổi mới quan trọng khác là Kỹ thuật mô hình hóa đối tượng (OMT) của James Rumbaugh và Kỹ thuật phần mềm hướng đối tượng (OOSE) của Ivar Jacobson.
Phân tích hướng đối tượng
Phân tích định hướng đối tượng (OOA) là quy trình xác định các yêu cầu kỹ thuật phần mềm và phát triển các đặc tả phần mềm theo mô hình đối tượng của hệ thống phần mềm, bao gồm các đối tượng tương tác.
Sự khác biệt chính giữa phân tích hướng đối tượng và các hình thức phân tích khác là trong cách tiếp cận hướng đối tượng, các yêu cầu được tổ chức xung quanh các đối tượng, tích hợp cả dữ liệu và chức năng. Chúng được mô phỏng theo các đối tượng trong thế giới thực mà hệ thống tương tác. Trong phương pháp phân tích truyền thống, hai khía cạnh - chức năng và dữ liệu - được xem xét riêng.
Grady Booch đã định nghĩa OOA là, phân tích hướng đối tượng là một phương pháp phân tích kiểm tra các yêu cầu từ quan điểm của các lớp và các đối tượng được tìm thấy trong từ vựng của miền vấn đề .
Các nhiệm vụ chính trong phân tích hướng đối tượng (OOA) là -
- Xác định đối tượng
- Tổ chức các đối tượng bằng cách tạo sơ đồ mô hình đối tượng
- Xác định phần bên trong của các đối tượng hoặc thuộc tính đối tượng
- Xác định hành vi của các đối tượng, tức là hành động của đối tượng
- Mô tả cách các đối tượng tương tác
Các mô hình phổ biến được sử dụng trong OOA là các trường hợp sử dụng và mô hình đối tượng.
Thiết kế hướng đối tượng
Thiết kế hướng đối tượng (OOD) liên quan đến việc thực hiện mô hình khái niệm được tạo ra trong quá trình phân tích hướng đối tượng. Trong OOD, các khái niệm trong mô hình phân tích, độc lập với công nghệ, được ánh xạ vào các lớp triển khai, các ràng buộc được xác định và các giao diện được thiết kế, dẫn đến một mô hình cho miền giải pháp, nghĩa là mô tả chi tiết về cách thức hệ thống được xây dựng trên công nghệ bê tông.
Các chi tiết thực hiện thường bao gồm -
- Tái cấu trúc dữ liệu lớp (nếu cần),
- Thực hiện các phương thức, nghĩa là các cấu trúc dữ liệu và thuật toán nội bộ,
- Thực hiện kiểm soát, và
- Thực hiện các hiệp hội.
Grady Booch đã định nghĩa thiết kế hướng đối tượng là một phương pháp thiết kế bao gồm quá trình phân rã hướng đối tượng và ký hiệu để mô tả cả mô hình logic và vật lý cũng như tĩnh và động của hệ thống theo thiết kế .
Lập trình hướng đối tượng
Lập trình hướng đối tượng (OOP) là một mô hình lập trình dựa trên các đối tượng (có cả dữ liệu và phương thức) nhằm mục đích kết hợp các lợi thế của mô đun hóa và tái sử dụng. Các đối tượng, thường là các thể hiện của các lớp, được sử dụng để tương tác với nhau để thiết kế các ứng dụng và chương trình máy tính.
Các tính năng quan trọng của lập trình hướng đối tượng là -
- Cách tiếp cận dưới cùng lên trong thiết kế chương trình
- Các chương trình được tổ chức xung quanh các đối tượng, được nhóm trong các lớp
- Tập trung vào dữ liệu với các phương thức để vận hành theo dữ liệu của đối tượng
- Tương tác giữa các đối tượng thông qua các chức năng
- Khả năng sử dụng lại thiết kế thông qua việc tạo các lớp mới bằng cách thêm các tính năng cho các lớp hiện có
Một số ví dụ về ngôn ngữ lập trình hướng đối tượng là C ++, Java, Smalltalk, Delphi, C #, Perl, Python, Ruby và PHP.
Grady Booch đã định nghĩa lập trình hướng đối tượng là một phương thức triển khai trong đó các chương trình được tổ chức thành các tập hợp đối tượng hợp tác, mỗi lớp đại diện cho một thể hiện của một lớp và các lớp có tất cả các thành viên của một lớp các lớp được hợp nhất thông qua các mối quan hệ thừa kế .
Đăng nhận xét