Coder Social home page Coder Social logo

projeto-ting's Introduction

Boas-vindas ao repositório do Projeto TING (Trybe Is Not Google)!

Contextualizando

O projeto é um sistema de gerenciamento de "banco de dados". Porém, ele faz acessos a arquivos de .txt, e gerencia os mesmos. Para isso, ele conta com um algoritmo de fila FIFO (First in First Out), algoritmo de fila de prioridades, e gerenciamento de arquivos.

Instalação

Instalação do projeto

  git clone [email protected]:vicsantus/Projeto-TING.git
  cd Projeto-TING
  python3 -m venv .venv && source .venv/bin/activate
  python3 -m pip install -r dev-requirements.txt

Para fazer o teste utilize a seguinte instrução dentro do ambiente .venv

  python3 -m pytest -s -vv

Funcionalidades

Dentro da pasta ting_file_management existe:

  • O arquivo queue.py é uma classe de gerenciamento de fila FIFO.

  • O arquivo priority_queue.py é uma classe de gerenciamento de fila com prioridades, tendo alguns arquivos mais prioridades que outros.

  • O arquivo file_process.py contém 3 funções:

process - é a função que adiciona dentro da fila, o arquivo de texto processado por ela;

remove - é a função que remove dentro da fila o primeiro elemento;

file_metadata - é a função que mostra um elemento expecifico da fila com um index expecifico.

  • O arquivo file_management.py é uma função que importa o .txt transformando as linhas do arquivo em uma lista de strings.

  • O arquivo abstract_queue.py é uma classe abstrata de Queue.

Dentro da pasta ting_word_searches existe:

  • O arquivo word_search.py que tem duas funções:

exists_word - Faz uma pesquisa na queue e retorna em quantas linhas aconteceram ocorrências de qualquer palavra passada no parâmetro da função;

search_by_word - Faz uma pesquisa na queue e retorna em quantas linhas, e também quais linhas aconteceram ocorrências de qualquer palavra passada no parâmetro da função;

Dentro da pasta tests em priority_queue existe:

  • O arquivo test_priority_queue.py realiza testes da função priority_queue.

Stack utilizada

Back-end: Python, Algoritmos, FIFO, FILO, Computer Science, PyTest

projeto-ting's People

Contributors

vicsantus avatar trybe-tech-ops avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.