What are we going to talk about
How to train DDD
Konstantin Gustov, RaiffeisenbankAbout the speaker: Has been developing software for over 10 years. Currently working as an architect. I started with C ++ and a little Delphi, then completely switched to .NET and C #, which I am very happy about. He changed several subject areas - from the military industry and the energy of oil production to banking. He tries to always adhere to pragmatic approaches without extremes. Works with service architectures and DDD.
About the report:For 5 years, we in the company have been using DDD practices in various projects. They help us decompose systems into microservices, find a common language with the customer, create applications that do not resist new requirements, and also maintain high-quality communication within the team. At the same time, the use of domain-specific design is often abandoned due to the fact that it is a methodology without clear instructions on what and how to do.
In my report I will talk about our application of this approach, what good practices we use, what mistakes we made and what conclusions we made from this.
Answers on questions
How is the interaction between aggregates within one microservice organized? Does the aggregate store a link to another aggregate, or does the aggregate store the identifier of another aggregate, or do you manage with events? If events, how is the mechanism organized?
. 4 , . ( ), ( ). , . , Mediator, , . Handler, β , ORM, instance Mediator, interceptors NHibernate.
application , , ?
, , . , -, Transaction Script, , CRUD. , , , . , -, . , use-case Handler. use-cases /, Handler use-case. , , , . . UseCaseHandler, -. , Handler Insurance, InsuranceReports . use-case Handler.
, ( )?
. , . , . , , . β β β 50 , . ACID, . , use-cases, , , .
? , ?
. , . , , , β , , β .
, ( ) , ? .
, . .
. 4 , . ( ), ( ). , . , Mediator, , . Handler, β , ORM, instance Mediator, interceptors NHibernate.
application , , ?
, , . , -, Transaction Script, , CRUD. , , , . , -, . , use-case Handler. use-cases /, Handler use-case. , , , . . UseCaseHandler, -. , Handler Insurance, InsuranceReports . use-case Handler.
, ( )?
. , . , . , , . β β β 50 , . ACID, . , use-cases, , , .
? , ?
. , . , , , β , , β .
, ( ) , ? .
, . .
PRESENTATION
Start of development in a new subject area using DDD, using the example of Rich Communication Services - replacing ordinary SMS services with a native IM messenger of a mobile operator
Alexander Lukashkin, FunBoxAbout the speaker: Head of department at FunBox. He rose from an engineer to a CTO. Launched new products and sometimes new mobile operators from scratch. Now he is developing products for the native IM messenger of a mobile operator.
About the report: Development for mobile operators is the intersection of different subject areas, βclassicβ and completely new. What if these subject areas are complex and confusing? What if for you, as a developer, these subject areas are completely unfamiliar? Let's look at the example of Rich Communication Services.
RCS is a native IM messenger available to subscribers out of the box, replacing the operator's standard SMS service with video, interactive, geolocation, group chats and other features. Moreover, this is βjustβ one of the services that use the operator's IP Multimedia Subsystem network. In my talk, I will talk about the practices that we use to start development in new subject areas. I will dwell on how the principles of Domain-Driven Design help us.
We believe that with the help of these practices, the team can figure out anything and build up the necessary expertise in a short time. Even in development for mobile operators.
PRESENTATION
>>> Let's start the meetup at 19:00 (Moscow time).
Register to receive a link to the broadcast:a letter with a link will come to your mail. We are waiting for you, see you online!