Декларативне конфігурування інверсії контролю в сучасних .NET8 застосунках

dc.contributor.authorФедорченко, Віталій
dc.date.accessioned2024-04-25T12:15:27Z
dc.date.available2024-04-25T12:15:27Z
dc.date.issued2023
dc.descriptionAs software systems continue to evolve in complexity and scale, the importance of adopting component-based architectural paradigms becomes increasingly evident. Inversion of Control (IoC) and Dependency Injection (DI) patterns play important role in managing OO-components dependencies, reduce coupling and enable seamless integration of components. This article explores the theoretical foundations of IoC and DI, shedding light on their practical implementation in modern .NET applications.Standard .NET DI-container has a number of technical limitations: properties injection is not supported, dependencies definitions from keyed services partially breaks IoC principle, and finally lack of declarative way to define components and their dependencies. To address these limitations, it is proposed to implement a special extension for standard DI-container in the form of a component factory. This factory would regis-ter components within the container and define their dependencies based on declarative configuration. The configuration can be stored either in a standard (for .NET Core apps) appsettings.json file or loaded from a separate JSON file. In fact, this JSON could be even dynamically generated in specific usage scenarios.The capability to use a declarative configuration for standard DI-container opens up broad possibilities for generative programming. It becomes technically feasible to implement a model-driven development, particularly an approach that leverages the DI-container configuration as the final (execution) model in a chain of transformations of domain-specific models.Modern .NET8 platform assumes that software is assembled from libraries of pre-existing components that are hosted in a standard DI-container that provides suitable runtime environment for them. Practical aspects of applying the Inversion of Control pattern are examined, considering the use of a standard De-pendency Injection (DI) container implementation. Existing technological limitations are defined, and a solution is proposed: implementation of declarative configuration of dependencies between components. This approach contributes to a reduced level of coupling between components and facilitates the decompo-sition of the program into more granular and abstract components – which increases their reusability in consequence.en_US
dc.description.abstractЗ огляду на постійне підвищення складності сучасних програмних систем стає дедалі важливішим значення впровадження компонентно-орієнтованих архітектурних парадигм. Шаблони інверсії контролю (IoC) та ін’єкції залежностей (DI) відіграють ключову роль у керуванні залежностями об’єктно-орієнтованих (ОО) компонентів, зменшенні зв’язності та забезпеченні безперешкодної інтеграції компонентів. Ця стаття досліджує теоретичні основи IoC та DI, розкриваючи їх практичну реалізацію в сучасних додатках .NET 8.uk_UA
dc.identifier.citationФедорченко В. М. Декларативне конфігурування інверсії контролю в сучасних .NET8 застосунках / Федорченко В. М. // Наукові записки НаУКМА. Комп'ютерні науки. - 2023. - Т. 6. - С. 57-61. - https://doi.org/10.18523/2617-3808.2023.6.57-61uk_UA
dc.identifier.urihttps://ekmair.ukma.edu.ua/handle/123456789/29221
dc.identifier.urihttps://doi.org/10.18523/2617-3808.2023.6.57-61
dc.language.isoukuk_UA
dc.relation.sourceНаукові записки НаУКМА. Комп'ютерні науки. Том 6uk_UA
dc.statusfirst publisheduk_UA
dc.subjectінверсія контролюuk_UA
dc.subjectін’єкція залежностейuk_UA
dc.subjectкомпонент-орієнтована розробкаuk_UA
dc.subject.NET Coreuk_UA
dc.subject.NET8uk_UA
dc.subjectстаттяuk_UA
dc.subjectinversion of controlen_US
dc.subjectdependency injectionen_US
dc.subjectcomponent based developmenten_US
dc.subjectdeclarative IoC configurationen_US
dc.subject.net coreen_US
dc.subject.NET8en_US
dc.titleДекларативне конфігурування інверсії контролю в сучасних .NET8 застосункахuk_UA
dc.title.alternativeDeclarative inversion of control configuration in modern .NET8 applicationsen_US
dc.typeArticleuk_UA
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Fedorchenko_Deklaratyvne_konfihuruvannia_inversii_kontroliu_v_suchasnykh_NET8_zastosunkakh.pdf
Size:
641.07 KB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.71 KB
Format:
Item-specific license agreed upon to submission
Description: