Benchmark de linguagens compiladas, semicompiladas e interpretadas - Rosa, Rafael Ledoux (2009)
Este trabalho aborda o problema da demanda crescente das empresas exigirem maior agilidade nas soluções em sistemas de informação e da confiabilidade delas, tornando-se necessário aos desenvolvedores computacionais, utilizarem a melhor linguagem de programação para o desenvolvimento pertinente a cada tipo de tarefa a ser realizada. Para isto, foram realizados estudos, análises e comparações através de softwares desenvolvidos nas linguagens C++, Java e Python. As linguagens foram escolhidas, respectivamente, por serem compiladas, semi-compiladas e interpretadas. Foram empregados os algoritmos de ordenação Bubblesort, Mergesort e Quicksort. Para as análises foram utilizadas as métricas tempo de processamento, uso de memória, linhas de código, consumo de CPU e carga de arquivo. Para o tempo de processamento foi aplicada uma metodologia de benchmark. O trabalho foi especificado utilizando os conceitos de Engenharia de Software, programação orientada a objetos e modelagem UML. Os resultados dos experimentos são apresentados através de gráficos, cuja amostragem demonstra o desempenho das implementações dentro do contexto das métricas. As principais contribuições deste trabalho são: a discrepância do melhor desempenho de tempo de processamento utilizando a linguagem Java no algoritmo Mergesort, o comportamento dos programas em Java e em C++ na utilização da memória para o algoritmo Quicksort e a singularidade do uso da otimização do código em C++. Esperasse que esse benchmark possa auxiliar os desenvolvedores de software no processo decisório de linguagens adequadas às suas necessidades como prazos de entregas curtos, eficácia no desenvolvimento do software e menores custos