Xu Hướng 8/2022 # Học Lập Trình Hướng Đối Tượng Với Java # Top View | Englishhouse.edu.vn

Xu Hướng 8/2022 # Học Lập Trình Hướng Đối Tượng Với Java # Top View

Xem 594

Bạn đang xem bài viết Học Lập Trình Hướng Đối Tượng Với Java được cập nhật mới nhất ngày 12/08/2022 trên website Englishhouse.edu.vn. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Cho đến thời điểm hiện tại, bài viết này đã đạt được 594 lượt xem.

--- Bài mới hơn ---

  • Khóa Học ” Lập Trình Plc Và Hmi “
  • 5 Bước Để Học Lập Trình Nhanh Hơn
  • Khóa Học Lập Trình Ios Cơ Bản Và Nâng Cao Tại Stanford
  • Học Lập Trình Ios Từ Cơ Bản Tới Nâng Cao Ở Đâu Tốt Nhất?
  • Học Lập Trình Ios Từ Cơ Bản Tới Nâng Cao Hiệu Quả
  • Hầu hết sinh viên chuyên ngành CNTT đã được học về lập trình hướng đối tượng và cả ngôn ngữ lập trình Java. Tuy nhiên, nhiều bạn vẫn thấy khó hiểu về lập trình hướng đối tượng cũng như cách áp dụng nó vào lập trình thực tế.

    1. Lập trình hướng đối tượng là gì?

    Trong lập trình thông thường chúng ta có 02 hướng tiếp cận để phân tích bài toán trước khi tiến hành lập trình là hướng cấu trúc(Structered Programming) và hướng đối tượng (Object Oriented Programming).

    Lập trình có cấu trúc đã phát triển từ đầu những năm 1970 và đã khẳng định được ưu điểm của nó thông qua hàng loạt ứng dụng đã được phát triển và các ngôn ngữ lập trình hỗ trợ như Pascal, C… Với ưu điểm là cấu trúc rõ ràng, đơn giản, lập trình có cấu trúc đã phát triển mạnh trong giai đoạn đầu của ngành phần mềm với các ứng dụng có độ phức tạp thấp nhưng khi phải giải quyết các bài toán phức tạp hơn thì Lập trình có cấu trúc trở nên khó điều kiển và dần mất ưu thế về Lập trình hướng đối tượng.

    Lập trình hướng đối tượng là phương thức tiếp cận bài toán theo hướng xem hệ thống là hoạt động của các đối tượng như trong thực tế, sau đó mô tả chúng và cho chúng tương tác với nhau để tạo nên hệ thống. Với sự tiếp cận như vậy giúp lập trình hướng đối tượng tư duy gần với thực tế hơn (lập trình có cấu trúc tư duy thiên về toán hơn) và độ phức tạp cũng chia ra cho việc mô tả các đối tượng và hành vi của nó nên độ phức tạp của bài toán cũng được chia nhỏ ra.

    Chúng ta xem xét ví dụ sau để thấy được ưu điểm của Lập trình hướng đối tượng:

    Ví dụ chúng ta cần viết một ứng dụng để mô tả một trận đấu bóng đá. Chúng ta biết trận đấu gồm 22 cầu thủ, 04 trọng tài, khán giả, sân bóng và quả bóng. Trong đó mỗi hoạt động của quá bóng đều chi phối hoạt động của các thành phần còn lại. Ví dụ khi quả bóng được phát đi và chuẩn bị rơi xuống 1 điểm trên sân mỗi cầu thủ phải có phản ứng tương ứng hợp lý và trọng tài cũng phải di chuyển hợp lý, khán giả cũng phải có hành động phù hợp …

    Nếu tiếp cận theo lập trình có cấu trúc chúng ta phải xét từng trường hợp cụ thể (22 cầu thử + 04 trọng tài + sân bong = 27 đối tượng phải xem xét) để điều khiển cho hợp lý làm cho bài toán vô cùng phức tạp. Còn lập trình hướng đối tượng không làm vậy, nó chia hệ thống ra thành các nhóm đối tượng như sau: Cầu thủ (có thể phân biệt thủ môn riêng), Trọng tài, Khán giả, Sân bóng và Quả bóng. Sau đó định nghĩa tính chất và hành vi của từng loại đối tượng. Ví dụ: cầu thủ có các chỉ số như Vị trí đảm nhận, tốc độ chạy, khả năng sút, mức độ tranh chấp, đánh đầu … và định nghĩa ngữ cảnh và hành vi của các cầu thủ theo ngữ cản đó. Ví dụ một cầu thủ thấy bóng cách xa 30 mét thì không cần di chuyển theo bóng để giữ vị trí, nếu cách xa 20 mét thì di chuyển theo hướng bóng để đón bóng, tốc độ di chuyển càng gần bóng càng nhanh chẳng hạn …. Sau đó mô tả cho 22 cầu thủ. Sau đó tạo ngữ cảnh cho trận đấu và các đối tượng sẽ hành xử theo hành vi đã được mô tả để tạo nên ứng dụng.

    Tất nhiên, đây chỉ là ví dụ để bạn có ý niệm còn cài đặt nó không hề đơn giản cho người mới học lập trình hướng đối tượng, chúng ta sẽ thực hiện với bài toán dễ hơn để bạn dễ hình dung và thực hiện.

    Lập trình hướng đối tượng đã thể hiện tính ưu việt của nó mà bằng chứng là hầu hết các ngôn ngữ lập trình hiện đại đều hỗ trợ mô hình này như C++, Java, C#, PHP… Ở thời điểm này nếu không rành về Lập trình hướng đối tượng thì quả là thiệt thòi cho một Lập trình viên.

    2. Bài toán và phân tích

    Trong bài viết này, chúng ta sẽ cài đặt giả lập hoạt động của một máy ATM. Máy ATM cho phép người dùng đăng nhập, rút tiền, chuyển tiền, xem số dư, đổi mật khẩu.. Trong ví dụ này chúng ta giới hạn các chức năng của máy ATM gồm: đăng nhập, rút tiền, chuyển tiền, xem số dư, đổi mật khẩu và sẽ giảm độ phức tạp đến mức tối đa.

    Biểu đồ chức năng của hệ thống ATM như sau:

    (Làm thế nào để thấy được các bạn vui lòng đọc bài này: Class Diagram )

    • Khách hàng (Customer)
    • Tài khoản (Account)

    Thiết lập thêm các thuộc tính của các lớp này chúng ta có sơ đồ lớp như sau:

    Để cài đặt ứng dụng trong Java chúng ta phải cài đặt một lớp ứng dụng có tên là ATMApp(ứng dụng ATM) để sử dụng lớp Account này nhằm tạo ra chức năng cho khách hàng sử dụng. Lúc đó sơ đồ lớp như sau:

    Bây giờ chúng ta sẽ cài đặt ứng dụng này trên Java.

    3. Cài đặt ứng dụng ATM trên Java

    Bước 1. Tạo dự án ATMApp

    Khởi động NetBean và tạo một dự án ATMApp như hình bên dưới.

    public class Account { }

    Chúng ta sẽ xem hình mô tả lớp Account ở trên để tiến hành cài đặt.

      Tiếp tục chúng ta sẽ code Contructor để khởi tạo giá trị cho lớp:

    Điều này cũng giống như chúng ta đeo bảng tên mà tất cả các thông tin cá nhân của mình hiên ra trước mắt mọi người và nguy hiểm hơn là người khác có thể thay đổi thông tin này mà không cần hỏi ý kiên của chúng ta. Ví dụ ai đó tự nhiên lại thay đổi tên của bạn mà không hỏi ý kiến bạn có đồng ý hay không thì quá nguy hiểm.

    Do vậy, lập trình hướng đối tượng khuyến khích bạn viết private cho các thuộc tính của đối tượng và viết các hàm get() và set() để lấy hoặc thay đổi giá trị của thuộc tính. Ví dụ đối với thuộc tính accountNo cần 02 phương thức như sau:

    Tiếp tục bổ sung các hàm Get và Set cho các thuộc tính còn lại chúng ta sẽ hoàn thiện lớp Account:

    – Tạo ra một tài khoản (đối tượng của lớp Account)

    Trước tiên chúng ta phải tạo ra một tài khoản của khách hàng cần giao tiếp. Trong thực tế chúng ta phải lấy từ CSDL lên(phần này sẽ bàn ở các bài sau) nhưng ở đây để đơn giản chúng ta gán trực tiếp.

    Thủ tục đăng nhập (login)

    import java.util.Scanner;

    Thực hiện đoạn lệnh trên để kiểm tra chức năng Login.

    -Tiếp theo chúng ta sẽ viết các thủ tục rút tiền, xem số dư tài khoản như sau:

    Để gọi 2 hàm trên chúng ta vào hàm Main và thêm đoạn lệnh sau:

    Qua ứng dụng trên các bạn có thể thấy việc lập trình theo mô hình hướng đối tượng giúp chúng ta mô tả bài toán sát với cách thực hiện trong mô hình thực tế từ đó giúp bạn dễ hình dung hơn.

    Bài viết này mới là phần ứng dụng cơ bản về lập trình hướng đối tượng trên Java, trong loạt bài tiếp theo Tôi sẽ giới thiệu các bạn cách cài đặt theo MVC và chuyển đổi dữ liệu từ Database lên đối tượng qua ORM(Object Relation Mapping). Mời các bạn đón đọc.

    Nếu các bạn vẫn thấy khó hiểu có thể đăng ký lớp học thử tại iViettech. Đăng ký học thử 1 tuần miễn phí tại iViettech.

    Bài tiếp: Cài đặt mô hình MVC(Model – View – Controller) trong Java

    --- Bài cũ hơn ---

  • Lập Trình Hướng Đối Tượng(Oops) Trong Java
  • Ebook Lập Trình Hướng Đối Tượng Với Java (Pdf)
  • Tự Học Lập Trình Hướng Đối Tượng Java Cho Những Người Vừa Mới Khởi Đầu
  • Tự Học Lập Trình Hướng Đối Tượng Java Cho Những Người Vừa Mới Bắt Đầu
  • Lập Trình Hướng Đối Tượng Java
  • Cập nhật thông tin chi tiết về Học Lập Trình Hướng Đối Tượng Với Java trên website Englishhouse.edu.vn. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Chúc bạn một ngày tốt lành!

  • Web hay
  • Links hay
  • Push
  • Chủ đề top 10
  • Chủ đề top 20
  • Chủ đề top 30
  • Chủ đề top 40
  • Chủ đề top 50
  • Chủ đề top 60
  • Chủ đề top 70
  • Chủ đề top 80
  • Chủ đề top 90
  • Chủ đề top 100
  • Bài viết top 10
  • Bài viết top 20
  • Bài viết top 30
  • Bài viết top 40
  • Bài viết top 50
  • Bài viết top 60
  • Bài viết top 70
  • Bài viết top 80
  • Bài viết top 90
  • Bài viết top 100