Dagger 2 is an injection framework for Android applications. Using Dagger, users can implement pure dependency injection without involving any third-party frameworks all while improving architecture structure and long-term maintainability.
This instructor-led, live training (online or onsite) is aimed at software architects who wish to use Dagger 2 for dependency injection in Android applications.
By the end of this training, participants will be able to:
Set up a project with dependency injection with Dagger 2.
Integrate Dagger 2 into an Android application.
Implement dependency injection without using third-party frameworks.
Format of the Course
Interactive lecture and discussion.
Lots of exercises and practice.
Hands-on implementation in a live-lab environment.
Course Customization Options
To request a customized training for this course, please contact us to arrange.
Course Outline
Introduction
Dagger 2 Overview
What is Dagger 2?
Dagger 2 features
Dependency Injection at a Glance
Dependency injection techniques
Architectural pattern
Preparing the Development Environment
Setting up Dagger 2
Dependency Injection Quick Start
Building a project
Decoupling logic
Sharing an instance
Preventing injections
Dagger 2
Adding Dagger dependency
Creating an application scope
Using components
Working with multibindings
Testing the Application
Testing with unit tests, mock tests, and repo unit tests
Bare minimum requirements for getting started with FastAPI. Pydantic, SQLAlchemy, Async Python, Dependency Injection
Requirements
Basic understanding of Python is required.
Understanding of basic object oriented principles is needed.
Description
This course is designed for students and developers who want to learn how to build fast and reliable web applications using the FastAPI Python framework. This course serves as a prerequisite for anyone who wants to dive deeper into the FastAPI framework.
The course covers the basic concepts of Python programming, type hinting, data validation, inheritance, dependency injection, and asynchronous programming, which are necessary for building FastAPI applications.
Throughout the course, students will complete hands-on exercises and quizzes to solidify their understanding of the concepts covered. By the end of the course, students will have a solid foundation and will be ready to dive into the more advanced features of FastAPI.
Topics Covered:
– Type Hinting
– Inheritance
– Pydantic
– Dependency Injection
– Asynchronous Programming
The course starts by introducing Type Hinting, a powerful feature of Python 3. Type Hinting enables developers to annotate function signatures and class attributes with type information, helping to catch errors early and improve code readability. Next, students will learn about Inheritance, a key concept in Object-Oriented Programming (OOP).
Students will also dive into Pydantic, a powerful data validation and serialization library that is tightly integrated with FastAPI. They will learn how to use Pydantic to validate and serialize data in their FastAPI applications, and how to take advantage of its powerful features, such as model inheritance and advanced data types.
The course also covers Dependency Injection, a design pattern that helps developers write more modular and testable code. Students will learn how to use FastAPI’s built-in Dependency Injection system to manage their application’s dependencies and create more maintainable code.
Finally, the course covers Asynchronous Programming, a technique that allows developers to write code that can perform multiple tasks simultaneously, improving performance and scalability.