Resultados da pesquisa

Catálogo de Publicações - Todos

  • A mostrar 1 - 7 resultados de 7
Filtros
  1. 1

    Metaprogramação extensível para a linguagem XAJ (eXtensible AspectJ)

    Publicação
    por Pinheiro, Felipe da Silva
    Origem: Oasisbr
    Coordenação de Aperfeiçoamento de Pessoal de Nível Superior
    2015 dissertação de mestrado Brasil acesso aberto
  2. 2

    Replicação orientada a metaprogramação

    Publicação
    por Ugliara, Fellipe Augusto
    Origem: Oasisbr
    Não recebi financiamento
    2018 dissertação de mestrado Brasil acesso aberto
  3. 3

    Codegs: um tipo especial de metaobjetos em Cyan

    Publicação
    por Souza, André Cassulino Araújo
    Origem: Oasisbr
    Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP)
    2018 dissertação de mestrado Brasil acesso aberto
  4. 4

    Uma abordagem para desenvolvimento de linhas de produtos de software orientada a características e dirigida por modelos

    Publicação
    por Pereira, Rodrigo Reis
    Origem: Oasisbr
    Fundação de Amparo a Pesquisa do Estado de Minas Gerais
    2016 dissertação de mestrado Brasil acesso aberto
  5. 5

    Um processo dirigido a modelos para geração de código

    Publicação
    por Papotti, Paulo Eduardo
    Origem: Oasisbr
    Universidade Federal de Sao Carlos
    2016 dissertação de mestrado Brasil acesso aberto
  6. 6

    From an Ontology for Programming to a Type-Safe Template Language

    Publicação
    por Parreira, Joana Baptista
    The demand to develop more applications in a faster way has been increasing over the years. Even non-experienced developers are jumping into the market thanks to low-code platforms such as OutSystems. The main goal of the GOLEM project is the development of the next generation of lowcode software development, aiming to automate programming and make the OutSystems platform easier to use. This work is integrated into the GOLEM project and focuses 1) on designing an ontology that will be used to capture concepts from a user dialogue; 2) on formalizing a template language; and 3) producing a reference implementation for OSTRICH. The ontology conceptsmust be representative enough to allow the generation of an application. A domain-specific language (DSL) produced in the scope of the GOLEM project will analyse the captured concepts, generating a set of operations that incrementally build and modify the target application. Because some of those application components are common patterns, they can be preassembled into templates to be later re-used. OSTRICH, a type-safe template language for the OutSystems platform, allows for the definition and instantiation of type-safe templates while ensuring a clear separation between compile-time and runtime computations. We formalize this two-stage language, defining its syntax, type system and operational semantics. We also produce a reference implementation and introduce new features: parametric polymorphism and a simplified form of type dependency. Such features enable instantiating the top ten most-commonly used OutSystems templates, which are more than half of all template instantiations in the platform. These templates ease and fasten the development process, reducing the knowledge required to build OutSystems’ applications.
    2022 dissertação de mestrado Portugal acesso aberto
  7. 7

    Going beyond templates

    Publicação
    por Seco, João Costa
    Outros Autores: Lourenço, Hugo; Parreira, Joana; Ferreira, Carla
    Low-code frameworks strive to simplify and speed up application development. An essential mechanism to achieve these goals is to have native support for the safe reuse and usage of parameterized coarse-grain components, providing developers with strong guardrails and a rich software-building experience. OSTRICH —a rich template language for the OutSystems platform—was designed to simplify the use and creation of such components. Thus, the application developer can quickly reuse and assemble sophisticated and thoroughly tested application blocks. However, without a built-in composition and evolution mechanism, OSTRICH templates are still hard to create and maintain. This sometimes requires the repetition of code across different templates and creates a conflict between the customizations of the instantiated application models, and the update and reapplication of a template definition. This paper presents a principled mechanism for using abstraction in the creation of templates and simultaneously supporting the evolution of OSTRICH templates in applications after use. First, we introduce a template composition mechanism, its typing discipline, and its instantiation algorithm for model-driven low-code development environments. We start by extending OSTRICH to support nested templates and allow the instantiation (hatching) of templates in the definition of other templates. Nesting promotes a significant increase in code reuse potential, leading to a safer evolution of applications. We then introduce the support for customizable template instances, which allows one to evolve templates’ code and then update a template instance without losing customizations performed in the generated code. The present definition seamlessly extends the existing OutSystems metamodel with template constructs expressed by model annotations that maintain backward compatibility with the existing language toolchain. We present the metamodel, a set of annotations to support the extensions, and the corresponding validation and instantiation algorithms. In particular, we introduce a type-based validation procedure for abstractions that ensures that using templates always produces valid models. This work also extends prior developments on Nested OSTRICH with the support for safe customizations of instantiated code. We validate Nested OSTRICH using the OSTRICH benchmark by identifying the degree of reusability that can be reached in the existing sample of real templates and template uses. Our prototype is an extension of the OutSystems IDE that allows the annotation of models and their use to produce new models. We also analyze which existing OutSystems sample screen templates can be improved by using and sharing nested templates.
    2024 artigo Portugal acesso aberto