1. Lời mở đầu: Dependency Injection (DI) là một kỹ thuật quan trọng giúp cho code của bạn dễ test hơn trong quá trình kiểm thử. Thay vì các objects tự tạo những dependencies hoặc truy cập objects dưới dạng singletons, DI cho phép mọi thứ mà object cần để thực thi công việc của nó nên được truyền từ bên ngoài. Điều này vừa giúp dễ dàng bao quát các dependencies mà object có, và cũng giúp việc kiểm...
Swift iOS Dependency InjectionLời giới thiệu Chào các bạn. Khi lập trình Android, chúng ta đều có những design pattern riêng cho team mình. Một trong những kĩ thuật khá quen thuộc chúng ta sử dụng với design pattern MVVM chính là Dependencies Injection (DI). Đã có nhiều thư viện ra đời để hỗ trợ DI như Dagger, Hilt, Koin. Bản thân mình những ngày đầu đọc khá nhiều về những thư viện này nhưng vẫn thực sự đã rất khó hiểu, cho...
Dependency Injection AndroidDependency Injection là gì ? Dependency Injection (DI) là một pattern nhằm hỗ trợ lập trình viên chia tách các thành phần khác nhau trong ứng dụng của họ. Nó cung cấp cơ chế cho việc xây dựng các đồ thị phụ thuộc độc lập của các định nghĩa class. Thông qua bài viết này, tôi sẽ tập trung giới thiệu về contructor injection, nơi những phụ thuộc được cung cấp để có thể sử dụng chúng thông qua các...
Dependency Injection ASP.NET CoreLời giới thiệu Trong phần 1 và phần 2, chúng ta đã hình dung được việc tự quản lí các dependencies injection cũng như sự vất vả khi mà bài toán bắt đầu lớn hơn, càng nhiều chỗ cần dùng thì càng nhiều lần phải từng bước tạo chúng, và cũng càng phải cần quản lí chặt chẽ phạm vi, sự tồn tại của chúng. Trong khi chúng ta chỉ làm việc chủ yếu với 1 instance thôi, nếu như có một công...
Dependency Injection AndroidSoure Trong hướng dẫn này, Quokka sẽ giới thiệu về ba hình thức Dependency Injection trong Flutter: InheritedWidgets, get_it và provider. Trước khi làm điều đó, ta sẽ định nghĩa DI là gì? Định nghĩa DI là cách thực hiện các đoạn code để cung cấp các Object của bạn cho các Object khác mà chúng phụ thuộc vào. Hãy xem xét một ví dụ về sự phụ thuộc (dependency) là gì: class LoginService { Api api; } Ở trên...
Dependency Injection Flutter Flutter Provider InheritedWidgetLời giới thiệu Đã bao giờ bạn biết tới Singleton Design pattern chưa? Đôi lúc bạn chỉ muốn có một instance duy nhất trong toàn app vì những lí do sau: Nhiều khi một instance rất tốn nhiều bước để tạo và bạn không muốn tạo một instance mới, mà lại được quá nhiều chỗ trong app sử dụng, như là instance RetrofitService, instance JsonParser, instance OkHttpClient. Cho dù cả việc tạo mới đã có Dagger lo,...
Dependency Injection Android1. Inversion of Control Ở bài viết trước mình đã đề cập tới nguyên lý SOLID và nguyên lý cuối cùng trong SOLID chính là Dependency Inversion: Các module cấp cao không nên phụ thuộc vào các modules cấp thấp. Cả 2 nên phụ thuộc vào abstraction Interface (abstraction) không nên phụ thuộc vào chi tiết, mà ngược lại. ( Các class giao tiếp với nhau thông qua interface, không phải thông qua implementation.) Nếu không áp...
Dependency Injection inversion of control Service ContainerDependency Injection vs Service Locator Ngày xưa khi vẫn còn mài mông trên trường có một người anh chỉ điểm cho tôi một vài bộ bí quyết như: SOLID, IoC, DI, Dagger. Và sau khi StackOverFlow luận kiếm cùng các hảo hữu giang hồ, kinh mạnh của tôi như được đả thông đến mức tẩu hỏa nhập ma và cho đến tận bây giờ tôi vẫn đang lạc lối giữa ma đạo! Sốc tập 1. Đến một ngày của thế kỷ 21, Google...
Dependency Injection Koin1. Khái niệm Để hiểu được Dependency Injection, cần phải hiểu Dependency Inversion và Inversion of Control Pattern trước. Dependency Inversion Llà nguyên lý cuối cùng trong nguyên lý SOLID, trong đó: Các module cấp cao không nên phụ thuộc vào các modules cấp thấp. Cả 2 nên phụ thuộc vào abstraction. Interface (abstraction) không nên phụ thuộc vào chi tiết, mà ngược lại. ( Các class giao tiếp với nhau thông qua...
Dependency Injection asp.net ASP.NET Core Asp.net vs Asp.net Core API MVCTrong bài viết này, chúng ta sẽ cùng tìm hiểu về Dependency Injection - một trong những nguyên tắc lập trình vô cùng quan trọng để viết code "sạch" (hay còn gọi là clean code). Trước khi đi vào Dependency Injection, ta sẽ cùng tìm hiểu về khái niệm "Dependency là gì?", và khi hiểu được khái niệm Dependency thì việc tìm hiểu về Dependency Injection sẽ trở nên dễ dàng hơn đối với lập trình viên. 1....
Swift iOS Dependency Injection di