Por favor, use este identificador para citar o enlazar este ítem:
http://repositorio.ufc.br/handle/riufc/74644
Tipo: | TCC |
Título : | Investigando o impacto dos code smells na manutenibilidade de aplicações JavaScript e TypeScript |
Autor : | Ferreira, Pedro Augusto de Castro |
Tutor: | Bezerra, Carla Ilane Moreira |
Palabras clave en portugués brasileño: | Code smell;JavaScript (Linguagem de programação de computador);TypeScript;Manutenibilidade |
Palabras clave en inglés: | Code smell;JavaScript;TypeScript;Maintainability |
Áreas de Conocimiento - CNPq: | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO |
Fecha de publicación : | 2023 |
Citación : | FERREIRA, Pedro Augusto de Castro. Investigando o impacto dos code smells na manutenibilidade de aplicações JavaScript e TypeScript. 2023. 48 f. Trabalho de Conclusão de Curso (graduação) – Universidade Federal do Ceará, Campus de Quixadá, Curso de Engenharia de Software, Quixadá, 2023. |
Resumen en portugués brasileño: | Em um cenário tecnológico em constante evolução, a manutenibilidade de sistemas de software se tornou um fator crítico para o sucesso a longo prazo de qualquer projeto. Principalmente no contexto de desenvolvimento web, onde linguagens como JavaScript e TypeScript desempenham um papel fundamental na criação dessas aplicações. Neste contexto, os code smells são vistos como ameaça a manutenibilidade e implicam na necessidade de refatoração dos sistemas. Este trabalho avalia a manutenibilidade e o impacto dos code smells em projetos que usam as linguagens de programação JavaScript e TypeScript. Para a realização deste estudo, dez projetos JavaScript e dez projetos TypeScript foram selecionados através da API do Github. Foram coletados e analisados os code smells dos projetos selecionados utilizando a ferramenta Embold e realizada a coleta de métricas de manutenibilidade utilizando a ferramenta Understand. A partir desses dados, foram obtidos os seguintes resultados: (i) a complexidade para detectar code smells é maior em projetos JavaScript; (ii) os code smells Nested Callback, Shotgun Surgery e Message Chain foram detectados; (iii) a base de código e a taxa de comentários dos projetos JavaScript é sempre maior em relação aos projetos TypeScript; (iv) projetos JavaScript são mais complexos em relação aos projetos TypeScript; (v) a densidade de code smells indicou uma pontuação melhor para os projetos JavaScript. Constatou-se que os projetos TypeScript são melhor estruturados e menos complexos em relação aos projetos JavaScript. Apesar disso, concluiu-se que a escolha isolada de utilizar TypeScript não garante bons índices de manutenibilidade e code smells. |
Abstract: | In a constantly evolving technological scenario, the maintainability of software systems has become a critical factor in the long-term success of any project. Mainly in context of web development, where languages like JavaScript and TypeScript play a key role in creating these applications. In this context, code smells are seen as a threat to maintainability and imply the need to refactor the systems. This study evaluates the maintainability and the impact of code smells in projects that use the JavaScript and TypeScript programming languages. For the realization of this study, ten projects JavaScript and ten TypeScript projects were selected via the Github API. They were collected and analyzed the code smells of the selected projects using the Embold tool and the collection of maintainability metrics was carried out using the Understand tool. From these data, the following results were obtained: (i) the complexity to detect code smells it is larger in JavaScript projects; (ii) the Nested Callback, Shotgun Surgery and Message code smells Chain were detected; (iii) the codebase and comment rate of JavaScript projects is always bigger compared to TypeScript projects; (iv) JavaScript projects are more complex in relation to TypeScript projects; (v) code smells density indicated a better score for JavaScript projects. It was found that TypeScript projects are better structured and less complex compared to JavaScript projects. Despite this, it was concluded that the choice isolated from using TypeScript does not guarantee good maintainability rates and code smells. |
URI : | http://repositorio.ufc.br/handle/riufc/74644 |
Lattes del tutor: | http://lattes.cnpq.br/4277471687235814 |
Derechos de acceso: | Acesso Aberto |
Aparece en las colecciones: | ENGENHARIA DE SOFTWARE - QUIXADÁ - TCC |
Ficheros en este ítem:
Fichero | Descripción | Tamaño | Formato | |
---|---|---|---|---|
2023_tcc_padecferreira.pdf | 1,92 MB | Adobe PDF | Visualizar/Abrir |
Los ítems de DSpace están protegidos por copyright, con todos los derechos reservados, a menos que se indique lo contrario.