Dagger Là Gì

  -  

Trong nội dung bài viết về phong cách xây dựng MVPhường trong Android, mình đã có lần giới thiệu thỏng viện Dragger2, một thỏng viện Dependency Injection khỏe khoắn cùng hữu ích giành cho trở nên tân tiến Android. Bài viết này mình sẽ share cách áp dụng Dagger 2 trong Android, siêu khôn cùng cơ phiên bản nhằm các bạn bắt đầu cũng rất có thể hiểu với vận dụng được.Quý khách hàng đang xem: Dagger là gì

Trước đây khi mình bắt đầu học tập thiết kế, tôi cũng bước đầu tò mò về quy tắc viết clean code SOLID. Thực sự nó có tác dụng mình tẩu hỏa nhập ma với một loạt khái niệm như: Dependency Injection, Provider, Component, Module, Scope

Do vậy, tôi đã tự hứa hẹn với phiên bản thân rằng bao giờ tôi đã hiểu rõ về quy tắc này thì mau lẹ phải làm ngay lập tức một nội dung bài viết nhằm chia sẻ lại cho mọi bạn (cũng vừa góp mình ghi nhớ lại).

Bạn đang xem: Dagger là gì

Và đấy là 1 phần trong planer đó, một nội dung bài viết về Dagger 2, một thư viện hỗ trợ các bạn tiến hành nguyên tắc Dependency Injection( một phần trong triết lý SOLID).

Note: Bài viết khám phá Dagger này chỉ giành riêng cho chúng ta mới học lập trình sẵn thôi nhé! Hay số đông bạn đang ban đầu tiếp cận cùng với nguyên tắc viết code clean SOLID. Những định nghĩa, phương pháp tiếp cận trong bài viết này khôn xiết cơ phiên bản, phần đa kỹ năng và kiến thức tối tphát âm cần biết nhằm trở nên developer bài bản. Mình xin lỗi các bậc tiền bối ví như bao gồm múa rìu qua mắt thợ nhé!
*

Tìm đọc dagger Dagger 2 trong Android

Nội dung bao gồm của bài viết

Tìm hiểu Dagger 2 vào Android#Xây dựng MagicBox

Tìm phát âm Dagger 2 trong Android

#Khởi chế tạo dự án công trình Android

Trước khi bạn ban đầu phát âm bài viết này, các bạn sẽ nghe biết những có mang nlỗi Function, Class cùng Member Variables rồi đúng không?

Và bạn cũng biết phương pháp tạo ra một dự án trong Android Studio rồi chứ? Thậm chí Android Studio bây giờ còn cung ứng sinh sản dự án công trình với các tài năng cơ phiên bản nhưng các bạn không cần phải nhúng tay code.

Tuy nhiên, để một thể theo dõi, chúng ta sẽ khởi tạo một dự án công trình với 1 Empty Activity. Sau kia thêm một TextView.

Và đây là code của MainActivity:

Nếu bọn họ khởi chế tạo Info trong MainActivity sẽ khiến cho code ko được clean. Việc kế thừa code sẽ trsống bắt buộc trở ngại rộng.

Xem thêm: 1000+ Câu Đố Vui Trẻ Em Co Dap An, Những Câu Đố Mẹo Hay Nhất

Do đó, cố gắng vì chưng bọn họ tạo một class Info trong MainActivity. Mình mong muốn ban bố ( và những biến thành viên không giống nữa) được tạo nên ở 1 địa điểm khác.

Quý Khách có biết hành động này gọi là gì không? Đó đó là Dependencies Injection.


*

Trong thời điểm này code của bọn họ gắng bởi khỏi tạo ra với có mang Info bên phía trong MainActivity. Chúng ta đang truyền Info vào.

Xem thêm: Download Half Life - Cài Half Life Chơi Game Half Life Trên Máy Tính

class MainActivity(val info:Info) : AppCompatActivity()Ồ! Có gì đấy không nên không nên trong đoạn code bên trên. Dường như Android không cho phép truyền tmê mệt số vào MainActivity. Vậy đề nghị làm thế nào đây?

Nếu các bạn có kinh nghiệm lập trình Android thì bạn sẽ nghĩ cho class Application. Chúng ta đang truyền tđắm say số mang đến MainActivity từ bỏ class Application. Tuy nhiên, ở chỗ này họ ko làm gắng, họ đang thực hiện Dagger2.