[en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11

[pt] Injeção de dependências, uma forma de inversão de controle, é uma forma de estruturar a configuração e composição de componentes de software que traz vários benefícios como um acoplamento reduzido entre componentes. No entanto, um framework genérico de injeção de dependências requer instrospecç...

Full description

Bibliographic Details
Main Author: MAXIMILIEN PHILIPPE M A DE BAYSER
Other Authors: RENATO FONTOURA DE GUSMAO CERQUEIRA
Language:en
Published: MAXWELL 2017
Subjects:
Online Access:https://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@1
https://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@2
http://doi.org/10.17771/PUCRio.acad.28950
id ndltd-puc-rio.br-oai-MAXWELL.puc-rio.br-28950
record_format oai_dc
spelling ndltd-puc-rio.br-oai-MAXWELL.puc-rio.br-289502017-09-15T04:22:53Z[en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11 [pt] COMPOSIÇÃO FLEXIVEL EM C MAIS MAIS 11 MAXIMILIEN PHILIPPE M A DE BAYSER[pt] COMPONENTES DE SOFTWARE[en] SOFTWARE COMPONENTS[pt] MODULOS[en] MODULES[pt] REFLEXAO[en] REFLECTION[pt] SERVICOS[en] SERVICES[pt] SERVICE COMPONENT ARCHITECTURE[pt] INTROSPECCAO[pt] C PLUS PLUS 11[pt] INJECAO DE DEPENDENCIAS[pt] INVERSAO DE CONTROLE[pt] Injeção de dependências, uma forma de inversão de controle, é uma forma de estruturar a configuração e composição de componentes de software que traz vários benefícios como um acoplamento reduzido entre componentes. No entanto, um framework genérico de injeção de dependências requer instrospecção em tempo de execução, o que explica por que injeção de dependências é popular em Java mas praticamente inexistente em C Mais Mais. Neste trabalho apresentamos um sistema de introspecção para C Mais Mais 11 e mostramos como ele pode ser usado para melhorar uma implementação de Service Component Architecture (SCA) para C Mais Mais. Usamos vários novas funcionalidades de C Mais Mais 11 como perfect forwarding, variadic templates e lvalue references para melhorar a usabilidade da API de reflexão e minimizar o overhead de execução.[en] Dependency injection, a form of inversion of control, is a way of structuring the configuration and composition of software components that brings many benefits such as a loose coupling of components. However, a generic dependency injection framework requires runtime type introspection and this is why dependency injection is popular in Java and almost non-existent in C plus plus. In this work we present a introspection system for C plus plus 11 and show how to use it to improve an implementation of the Service Component Architecture (SCA) for C plus plus. It uses several features of C plus plus 11 such as perfect forwarding, variadic templates and lvalue references to improve usability and minimize overhead.MAXWELLRENATO FONTOURA DE GUSMAO CERQUEIRARENATO FONTOURA DE GUSMAO CERQUEIRA2017-02-01TEXTOhttps://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@1https://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@2http://doi.org/10.17771/PUCRio.acad.28950en
collection NDLTD
language en
sources NDLTD
topic [pt] COMPONENTES DE SOFTWARE
[en] SOFTWARE COMPONENTS
[pt] MODULOS
[en] MODULES
[pt] REFLEXAO
[en] REFLECTION
[pt] SERVICOS
[en] SERVICES
[pt] SERVICE COMPONENT ARCHITECTURE
[pt] INTROSPECCAO
[pt] C PLUS PLUS 11
[pt] INJECAO DE DEPENDENCIAS
[pt] INVERSAO DE CONTROLE
spellingShingle [pt] COMPONENTES DE SOFTWARE
[en] SOFTWARE COMPONENTS
[pt] MODULOS
[en] MODULES
[pt] REFLEXAO
[en] REFLECTION
[pt] SERVICOS
[en] SERVICES
[pt] SERVICE COMPONENT ARCHITECTURE
[pt] INTROSPECCAO
[pt] C PLUS PLUS 11
[pt] INJECAO DE DEPENDENCIAS
[pt] INVERSAO DE CONTROLE
MAXIMILIEN PHILIPPE M A DE BAYSER
[en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
description [pt] Injeção de dependências, uma forma de inversão de controle, é uma forma de estruturar a configuração e composição de componentes de software que traz vários benefícios como um acoplamento reduzido entre componentes. No entanto, um framework genérico de injeção de dependências requer instrospecção em tempo de execução, o que explica por que injeção de dependências é popular em Java mas praticamente inexistente em C Mais Mais. Neste trabalho apresentamos um sistema de introspecção para C Mais Mais 11 e mostramos como ele pode ser usado para melhorar uma implementação de Service Component Architecture (SCA) para C Mais Mais. Usamos vários novas funcionalidades de C Mais Mais 11 como perfect forwarding, variadic templates e lvalue references para melhorar a usabilidade da API de reflexão e minimizar o overhead de execução. === [en] Dependency injection, a form of inversion of control, is a way of structuring the configuration and composition of software components that brings many benefits such as a loose coupling of components. However, a generic dependency injection framework requires runtime type introspection and this is why dependency injection is popular in Java and almost non-existent in C plus plus. In this work we present a introspection system for C plus plus 11 and show how to use it to improve an implementation of the Service Component Architecture (SCA) for C plus plus. It uses several features of C plus plus 11 such as perfect forwarding, variadic templates and lvalue references to improve usability and minimize overhead.
author2 RENATO FONTOURA DE GUSMAO CERQUEIRA
author_facet RENATO FONTOURA DE GUSMAO CERQUEIRA
MAXIMILIEN PHILIPPE M A DE BAYSER
author MAXIMILIEN PHILIPPE M A DE BAYSER
author_sort MAXIMILIEN PHILIPPE M A DE BAYSER
title [en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
title_short [en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
title_full [en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
title_fullStr [en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
title_full_unstemmed [en] FLEXIBLE COMPOSITION FOR C PLUS PLUS 11
title_sort [en] flexible composition for c plus plus 11
publisher MAXWELL
publishDate 2017
url https://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@1
https://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=28950@2
http://doi.org/10.17771/PUCRio.acad.28950
work_keys_str_mv AT maximilienphilippemadebayser enflexiblecompositionforcplusplus11
AT maximilienphilippemadebayser ptcomposicaoflexivelemcmaismais11
_version_ 1718534034172149760