26 julio, 2024

What are domain controllers? | Bootcamps

In this article we tell you what they are and some examples of them. domain controllers and, for this, we remember the concept domainas well as the elements that compose it, so that you have a clear context on this topic.

What is domain?

Before getting into the matter about the domain controllers in a softwareit is necessary to remember what the term domain refers to and why it is relevant.

He domain It is related to the architecture of software and is itself responsible for representing what is simulated within the computer.
However, what do we want to say about this? Generally, any software that you develop will simulate something in the real world, for example, you may be developing an application to inform you about the busiest routes for motor vehicles. Therefore, you need to simulate the maps with the infrastructure of the different cities, as well as the transit options that the user will have and the advantages or disadvantages of each one, among other things.

What are the domain components in software?

After remembering what the concept refers to domain, we can go into detail about the different elements that make it up to, in this way, explain each one. In itself, the most common components in a program are:

Domain agents: They are minimally functional elements with a responsibility, so let’s assume that they are «things» that have a counterpart in the system being simulated. Typically in programming languages ​​they are called classes or types, however some books refer to them as «entities», which is somewhat confusing.Repositories: is the second of the domain components in the software and refers to the interfaces for creating domain agents. Repositories are often used as a buffer of abstraction to hide details that, in a certain way, do not matter to the domain.domain controllers: These are the components that refer to the actions that will be implemented in the different agents of the program, so they act as mediators and control them. In general, these control units can be classes or functions, it all depends on the complexity of the program.

In the following image you can see a representation of how these three parts of the domain are related in the program:

Examples of domain controllers

Now, this topic can be complicated to understand, so, to make it a little easier, we present some examples of the component domain controllers in a software.

ValuePresenter

Broadly speaking, it is an interface or abstract class, which seeks to represent a variety of ways of presenting an accounting value: fonts, colors, rounding, etc. It does this in order to be able to represent a value and a currency. In fact, ValuePresenter is an example of the Strategy pattern.

ValueConverter

Another example of domain controllers It is the ValueConverter, which is responsible for transforming a Value from one currency to another. In itself, it does not have to be a class; in fact, it may be a function.

ValueReducer

The ValueReducer is another example of domain controllers, which transforms a list of values ​​(with possible different currencies) into a single value with an output currency. This final value, in turn, can be presented with a ValuePresenter. As in the case of the ValueConverter, it does not have to be a class, but could also be a function.

Where to continue?

Now that you have some basics about what the domain controllers, It is likely that you will be interested in expanding much more information related to the architecture of software. For this reason, you should know that at we look for a way to help you get familiar with the development mobile and accompany you in your training process, which is why we have built our Full Stack Mobile App Development Bootcamp.

With this bootcamp, you will be able to access intensive, high-quality training that will be perfect for your training process. Our agenda includes topics such as the development and design processes of cross-platform apps, as well as the fundamentals of iOS and Android and various application design guidelines, among many other things. Don’t miss this great opportunity and take a big leap in your academic training!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *