Posts

Showing posts from July, 2009

Dependency Injection Pattern!

Ngày nay, DI là một mẫu thiết kễ phổ biến hiện nay. Nó giúp cho việc thiết kễ và thực hiện "loosely couple", sử dụng lại (reusable), có thể test (testable) trong phần mềm của bạn bằng cách giảm sự phụ thuộc của các đối tượng. Phụ thuộc của các đối tượng. (Object Dependency) Object có thể phụ thuộc nhau theo hai cách: tight coupling và loose coupling. Nếu các Object không có liên kết chặt chẽ với nhau thì việc thay đổi các Object sẽ đơn giản và ngược lại. Ví dụ: public class C2 { //Some code } public class C1 { C2 bObject = new C2(); //Some code } Class C1 phụ thuộc vào C2 vì C1 chứa C2 đây gọi "tight". Nếu bạn phải tay đôi code thì khi làm bạn chỉ có thể thoải mái thay đổi C1, còn với C2 bạn sẽ phải tính toán không là sẽ ảnh hưởng đến C1. Thuận lợi chính. - Loose coupling - Centralized configuration - Easy testable. Bất lợi chính. Việc viết và thực thi DI sẽ là một cơn ác mộng nếu có quá nhiều Object và các phụ thuộc giữa chúng. Kiểu Dependency In