jramiresbrito / trabalho_paa

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Trabalho prático de Fundamentos de Projeto e Análise de Algoritmos

O objetivo deste trabalho é montar uma carteira de investimentos utilizando diferentes algoritmos. Três algoritmos de seleção de ativo foram desenvolvidos e podem ser verificados na classe {Asset}.

Dependências

  • Ruby 2.7.4

Documentação

A documentação do projeto pode ser acessada de duas formas:

  • Servindo a documentação presente em /doc

    • Servido com Ruby:
      ruby -run -e httpd . -p 8000
    
    • Pode-se utilizar extensões do VsCode conhecidas como Live Server
    • Existem diversas outras formas de servir os arquivos
  • Gerando e Servindo a documentação com a gema Yard

    • Com a gema devidamente instalada, execute:
        yard server -r -p 8808
      

Estrutura do projeto

O projeto foi desenvolvido com base no Padrão MVC, com a inclusão de uma classe {Router} para melhor organização.

Utilizando o projeto

Para utilizar o projeto basta executar entrypoint.rb, fornecendo o arquivo CSV contendo os dados como parâmetro. Ex:

ruby entrypoint.rb /home/joao/code/PUC/asset_porfolio/data/data.csv

Caso um arquivo CSV não seja fornecido, o projeto utilizará o arquivo data.csv presente na pasta data. Como é fácil perceber, os usuários deste projeto também podem, convenientemente ,adicionar o arquivo na basta data ao invés de passá-lo como parâmetro. No entanto, caso escolha por colocar o arquivo na pasta, é necessário que o nome seja data.csv, ou alterar o arquivo entrypoint.rb com o nome desejado.

Com o projeto iniciado, basta selecionar a opção desejada no menu da aplicação.

About


Languages

Language:Ruby 100.0%