Category Archives: OOP

“Lập trình hướng đối tượng” là sao?

Nhiều người (đa phần là sinh viên hoặc những người mới tiếp xúc với lập trình) thường cảm thấy sợ khi nhắc đến khái niệm “HƯỚNG ĐỐI TƯỢNG”, vậy thì nó là gì?

Sau đây là theo quan điểm của một con gà công nghệ như tôi.

LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG (OOP – Object-oriented programming)

Chúng ta sẽ tách ra làm 2 vế: LẬP TRÌNHHƯỚNG ĐỐI TƯỢNG.

  • Lập trình: Quá trình chúng ta ra lệnh cho máy tính làm những việc mà chúng ta muốn bằng cách giao tiếp với nó thông qua một ngôn ngữ nào đó (ngôn ngữ lập trình).
  • Hướng đối tượng: Đối tượng là những gì có xung quanh chúng ta.

Như bạn cũng biết thì máy tính được phát minh ra để giải quyết những vấn đề thực tế trong cuộc sống mà con người khó hoặc không thể làm được, ví dụ như tính nhiều phép toán cùng một lúc chẳng hạn.

Lập trình hướng đối tượng tức là dùng ngôn ngữ lập trình để giải quyết các vấn đề trong cuộc sống.

Ví dụ viết một chương trình tính toán lãi suất ngân hàng, thì những con số chính là đối tượng mà chúng ta sẽ phải làm việc với nó, và nhắc đến lập trình thì hầu như chúng ta đều phải làm quen với những con số, những phép toán. Cho nên người ta mới nói để trở thành một lập trình viên giỏi thì cần phải giỏi toán, nhưng các bạn lưu ý một điều là dở toán không có nghĩa là không thể trở thành một lập trình viên giỏi.

Thật ra nó chẳng có gì ghê gớm cả, các bạn hãy từ từ thưởng thức nhé, nó chỉ là bước đầu thôi. Chúc các bạn thành công!

Huy Nguyen

Khóa học C++ daynhauhoc.com

Khóa học này được anh em trên DAYNHAUHOC cùng nhau xây dựng cũng đã lâu và vẫn còn tiếp tục được phát triển.

dev210x-course_card_image-378x225

Nội dung trình bày, bố cục khá hợp lý dành cho những bạn mới bắt đầu với việc tiếp xúc các ngôn ngữ lập trình nói chung và ngôn ngữ C/C++ nói riêng.

Sau đây là phần lý thuyết, các bạn có thể xem bất cứ khi nào tại link dưới đây:

https://cpp.daynhauhoc.com

Ngoài ra còn có series các videos hướng dẫn do chính founder của DAYNHAUHOC làm ra với mục đích làm cho khóa học thêm sinh động và các bạn dễ tiếp cận hơn.

Có thể tham khảo khóa học này tại đây:

https://www.udemy.com/c-co-ban-danh-cho-nguoi-moi-hoc-lap-trinh/

Đăng ký mua với giá ưu đãi nhất? Click vào link dưới đây:

https://docs.google.com/forms/d/e/1FAIpQLScHY3aMUaG81hafWHL8Gzhj_ZUskRVsyOJS0P_Xr7gPoe29FA/viewform

 

Mọi chi tiết vui lòng xem thêm tại DAYNHAUHOC.COM

UML Class Diagram

http://i.imgur.com/DDVESLQ.jpg

 

Dependency:

[code lang=java]
public class A {
public void doSomething(B b) {

}
}
[/code]

 

Aggregation:

[code lang=java]
public class A {

private B _b;

public void setB(B b) { _b = b; }
}
[/code]

 

Composition:

[code lang=java]
public class A {
private B _b = new B();
}
//or

public class A {

private B _b;

public A() {
_b = new B();
} // default constructor
}
[/code]

 

Inheritance:

[code lang=java]
public class A {

} // class A

public class B extends A {

….

} // class B
[/code]

 

Realization:

[code lang=java]
public interface A {

} // interface A

public class B implements A {

} // class B
[/code]

 

source: Kipalog