• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Master's Dissertation
DOI
https://doi.org/10.11606/D.100.2019.tde-09122019-211053
Document
Author
Full name
Herik Lima de Castro
E-mail
Institute/School/College
Knowledge Area
Date of Defense
Published
São Paulo, 2019
Supervisor
Committee
Eler, Marcelo Medeiros (President)
Bianchini, Calebe de Paula
Cordeiro, Daniel de Angelis
Francesquini, Emilio de Camargo
Title in Portuguese
Um web framework para C++: projeto, implementação e avaliação
Keywords in Portuguese
web framework
Avaliação
Bibliotecas para desenvolvimento web
C++ Web Framework
Consumo de memória
Desempenho
Manutenibilidade
Tempo de resposta
Abstract in Portuguese
As aplicações web são, tipicamente, programas do tipo cliente-servidor em que os clientes consomem serviços fornecidos por um servidor web. As aplicações web podem ser tão simples quanto sites que exibem conteúdos estáticos e dinâmicos, quanto aplicações que envolvem o uso de banco de dados, interação com outros sistemas de informação e o processamento de algoritmos complexos e grandes volumes de dados. Em geral, para desenvolver aplicações mais complexas, até mesmo desenvolvedores mais experientes enfrentam vários desafios: configuração complexa e difícil aprendizagem, pois precisam utilizar diferentes linguagens de programação, bibliotecas, frameworks, arquivos de configuração e código específico para tornar múltiplas camadas interoperáveis; baixa manutenibilidade, em razão da complexa configuração, conflitos entre bibliotecas e frameworks e do entrelaçamento entre código de negócio, de controle e de apresentação permitido em diversas soluções; alto consumo de recursos computacionais, em razão do custo de processamento e comunicação introduzido pelo grande número de componentes de uma arquitetura web; e baixo desempenho, em razão da alta dependência de linguagens interpretadas e da comunicação entre diversos módulos, bibliotecas e frameworks. Neste contexto, o objetivo principal deste projeto de pesquisa é propor e avaliar uma solução para o desenvolvimento web que mitigue os principais problemas relacionados ao cenário atual e mencionados anteriormente. A solução foi apresentada na forma de um novo web framework chamado CWF (C++ Web Framework), que apoia o desenvolvimento de aplicações escritas na linguagem C++. As decisões de projeto do web framework proposto tiveram como objetivo alcançar alto desempenho por utilizar uma linguagem compilada; baixo consumo de recursos computacionais (memória e processamento); mecanismos simples de configuração; separação da camada de apresentação (HTML, por exemplo) da camada de negócios (código back-end); e ser multiplataforma. O web framework foi avaliado quanto à sua facilidade de instalação, configuração e uso por meio de experimentos com usuários, e também foram realizados testes de desempenho e consumo de recursos computacionais. Os resultados dão indícios de que o CWF é fácil de instalar, configurar, usar e apresenta bom desempenho no que diz respeito ao tempo de resposta e consumo de recursos como memória RAM e processador. Além disso, ele já tem sido utilizado no desenvolvimento de aplicações reais, tanto no Brasil, quanto no exterior
Title in English
A C++ web framework: project, implementation and evaluation
Keywords in English
web framework
C++ Web Framework
Evaluation
Libraries for web development
Maintenance
Memory consumption
Performance
Response time
Abstract in English
Web applications are, typically, client-server programs where clients consume services provided by a web server. Web applications can be as simple as portals that display static and dynamic content as applications involving database use, interaction with other information systems, and the processing of complex algorithms and large data volumes. In general, to develop more complex applications, even more experienced developers face a number of challenges: complex configuration and difficult to learn as they need to use different programming languages, libraries, frameworks, configuration files and specific code to make multiple layers interoperable; low maintainability, due to the complex configuration, conflicts between libraries and frameworks and the intertwining of business, control and presentation code allowed in various solutions; high computational resource consumption due to processing and communication cost introduced by the large number of components of a webtext architecture; and poor performance, due to the high dependence on interpreted languages and the communication between several modules, libraries and frameworks. In this context, the main objective of this research project is to propose and evaluate a solution for web development that mitigates the main issues related to the current scenario mentioned above. The solution was presented in the form of a new web framework called CWF, which supports the development of applications written in the C++ language. The design decisions of the proposed web framework were to achieve high performance by using a compiled language; low consumption of computational resources (memory and processing); simple configuration mechanisms; separation of the presentation layer (HTML, for example) from the business layer (backend code); and being cross-platform. The web framework was evaluated for its ease of installation, configuration and use through user experiments, as well as performance tests and computational resource consumption. The results give evidence that CWF is easy to install, configure, use and performs well with response time and resource consumption such as RAM and processor. In addition, it has already been used in the development of real applications, both in Brazil and abroad
 
WARNING - Viewing this document is conditioned on your acceptance of the following terms of use:
This document is only for private use for research and teaching activities. Reproduction for commercial use is forbidden. This rights cover the whole data about this document as well as its contents. Any uses or copies of this document in whole or in part must include the author's name.
CWF.pdf (1.26 Mbytes)
Publishing Date
2019-12-17
 
WARNING: Learn what derived works are clicking here.
All rights of the thesis/dissertation are from the authors
CeTI-SC/STI
Digital Library of Theses and Dissertations of USP. Copyright © 2001-2020. All rights reserved.