Khỏi niệm lập trỡnh hướng đối tượng (Object-Oriented Programmin g OOP)

Một phần của tài liệu Bài giảng ngôn ngữ lập trình Java doc (Trang 45 - 47)

I.1. Khỏi niệm OOP

Lập trỡnh hướng đối tượng là sự cài đặt một chương trỡnh theo hướng đối tượng bằng cỏc ngụn ngữ lập trỡnh, thường là ngụn ngữ OOP.

Như vậy, nếu dựng một ngụn ngữ OOP mà chương trỡnh khụng theo hướng đối tượng thỡ cũng khụng phải là lập trỡnh OOP. Trong khi nếu dựng một ngụn ngữ khụng hướng đối tượng để viết một chương trỡnh OOP (rất khú khăn) thỡ cũng cú thể gọi là lập trỡnh OOP. Thực tế thỡ ta khụng thể viết chương trỡnh hướng đối tượng bằng cỏc ngụn ngữ cấu trỳc (như Pascal chẳng hạn) vỡ cỏc ngụn ngữ này khụng hỗ trợ cỳ phỏp cài đặt và kỹ thuật biờn dịch cỏc đặc tớnh của hướng đối tượng.

Những ngụn ngữ OOP khụng chỉ bao gồm cỳ phỏp và một trỡnh biờn dịch (compiler) mà cũn cú một mụi trường phỏt triển toàn diện. Mụi trường này bao gồm một thư viện được thiết kế tốt, thuận lợi cho việc sử dụng kế thừa cỏc đối tượng – tớnh tỏi sử dụng. Đõy là một điểm mạnh của OOP và phương phỏp trước đõy khụng cú được.

Đối với một ngụn ngữ lập trỡnh hỗ trợ OOP thỡ việc triển khai kỹ thuật lập trỡnh hướng đối tượng sẽ dễ dàng hơn. Hơn nữa, cỏc dự ỏn phần mềm phõn tớch và thiết kế theo UML bắt buộc phải sử dụng kỹ thuật OOP để cài đặt thỡ mới phỏt huy hiệu quả.

I.2 Cơ sở lý luận của OOP

Chỳng ta thấy rằng thuật ngữ “hướng đối tượng” cú nghĩa là lấy đối tượng làm trung tõm và tất cả nằm trong đối tượng. Quan sỏt thế giới thực, ta thấy mọi vật đều cú vị trớ riờng của nú, chỳng sở hữu cỏc tớnh chất và thuộc tớnh riờng, cỏch thức vận động riờng. Chỳng ta gọi chỳng là những đối tượng. Theo cỏch hiểu như vậy thỡ mọi nghiệp vụ thực tế suy cho cựng chỉ là việc quản lý cỏc đối tượng, khai thỏc thụng tin cũng như cỏc mối quan hệ từ chỳng hoặc thay đổi trạng thỏi của chỳng.

OOP là phương thức tư duy mới để giải quyết vấn đề bằng mỏy tớnh. Để đạt kết quả, lập trỡnh viờn phải nắm được sự tương ứng giữa cỏc cỏc đối tượng thực tế, mối quan hệ giữa chỳng và sự hỗ trợ của ngụn ngữ để cài đặt chỳng vào mỏy tớnh. Ngụn ngữ OOP cung cấp đầy đủ phương tiện để thực hiện điều này. Chỳng ta sử dụng kỹ thuật hướng đối tượng để ỏnh xạ những thực thể chỳng ta gặp phải trong đời sống thực thành những thực thể tương tự trong mỏy tớnh. Do đú, phỏt triển phần mềm theo kỹ thuật lập trỡnh hướng đối tượng cú khả năng giảm thiểu sự lẫn lộn thường xảy ra giữa hệ thống và lĩnh vực ứng dụng.

Tuy nhiờn, từ nghiệp vụ thực tế chỳng ta khụng thể ngay lập tức đem vào cài đặt trong ngụn ngữ OOP mà phải qua một quy trỡnh phõn tớch và thiết kế theo hướng đối tượng như chỳng ta đó thấy qua việc nghiờn cứu ngụn ngữ mụ hỡnh húa UML – một ngụn ngữ giỳp chỳng ta trừu tượng húa thế giới thực.

I.3 Trừu tượng húa

Quản lý thụng tin, cỏc hành vi, cỏc mối quan hệ của cỏc đối tượng là nhiệm vụ mà lập trỡnh OOP phải làm. Thụng tin về đối tượng và mối quan hệ giữa chỳng thực tế là vụ cựng. Vậy làm thế nào để đưa chỳng vào mỏy tớnh? Cõu trả lời là chỳng ta cần một quỏ trỡnh trừu tượng húa.

Giả sử đối tượng quản lý là một sinh viờn. Một hệ thống quản lý sinh viờn cú thể chỉ cần quan tõm tới: Họ và tờn, ngày sinh, lớp học, địa chỉ nơi ở, điểm cỏc mụn học. Trong khi đú, cỏc thụng tin khỏc về sinh viờn – cũng là một con người – như chiều cao, cõn nặng, nhúm mỏu,… chỳng ta khụng cần quan tõm. Một quỏ trỡnh suy luận như vậy là một quỏ trỡnh trừu tượng húa dữ liệu. Ở đõy ta khụng quan tõm tới giỏ trị cụ thể của cỏc thuộc tớnh này.

Khi quan tõm tới giỏ trị của cỏc thuộc tớnh, chỳng ta cú một cõu hỏi: Cỏi gỡ làm cho dữ liệu này biến đối? Cõu trả lời là chớnh hành vi của đối tượng làm cho thuộc tớnh của chỳng bị thay đổi. Trong vớ dụ trờn, một anh sinh viờn bất kỳ cú thể cú hành vi “xin đổi lớp học” hoặc “đổi địa chỉ nơi ở” làm cho giỏ trị cỏc thuộc tớnh “lớp học”, “địa chỉ nơi ở” bị thay đổi. Quỏ trỡnh xỏc định cỏc hành vi của đối tượng phục vụ cho nghiệp vụ quản lý cũng là một quỏ trỡnh trừu tượng húa hành vi.

Túm lại, chỳng ta cú một mụ hỡnh trừu tượng húa của một sinh viờn: Sinh viờn Họ và tờn Ngày sinh Tờn lớp Địa chỉ Điểm mụn học Thay đổi lớp Thay đổi nơi ở

Điểm quan trọng là sau khi trừu tượng húa từ một lớp cỏc sinh viờn (tất cả cỏc sinh viờn trong phạm vi quản lý), mụ hỡnh này đại diện cho tất cả sinh viờn và là khuụn mẫu để tạo ra bất kỳ sinh viờn nào khỏc.

Qua đõy, ta cũng rỳt ra nhận xột rằng quỏ trỡnh trừu tượng húa tựy theo yờu cầu nghiệp vụ sẽ cho kết quả khỏc nhau. Cũng là một sinh viờn nhưng nếu chẳng may anh ta bị ốm nằm viện, anh ta được quản lý như một bệnh nhõn. Một hệ thống quản lý bệnh nhõn tất nhiờn khụng thể bỏ qua cỏc thụng tin về nhúm mỏu, cõn nặng, huyết ỏp,…và tất nhiờn là cũng cú cỏc mụ hỡnh hành vi khỏc.

Túm lại:

• Cỏc thực thể tồn tại trong thế giới thực được mụ hỡnh húa thành cỏc lớp đối tượng.

• Cỏc mối quan hệ giữa cỏc thực thể trong thế giới thực được mụ hỡnh húa bằng cỏc mối quan hệ giữa cỏc lớp đối tượng.

Thế giới thực = Cỏc đối tượng + Cỏc mối quan hệ

Cỏc lớp đối tượng trong chương trỡnh - Classes

Một phần của tài liệu Bài giảng ngôn ngữ lập trình Java doc (Trang 45 - 47)