Ir para conteúdo
Fórum Script Brasil
  • 0

[Desenvolvimento] Novo compactador


Marcelo Utikawa da Fonseca

Pergunta

Olá a todos!

Já faz um bom tempo que eu tenho uma idéia de um compactador diferente mas nunca tive tempo / motivação para desenvolver. Agora resolvi postar aqui para compartilhar a idéia e quem sabe alguém resolver ajudar ou ao menos incentivar o desenvolvimento...

Eu já vi por cima alguns algoritmos de compactação/descompatação e acredito que há uma forma melhor de se trabalhar. Pelo que eu já vi o normal é, a partir dos dados do arquivo, se identificarem os padrões dos dados, montar as tabelas e criar referências a estes padrões internamente. Assim o arquivo final inclui essa sequência de padrões (ou ao menos a forma de criá-los com os dados) além do restante dos dados.

O que eu imagino é o seguinte: ao invés de o arquivo carregar os dados e estruturas de compactação, poderíamos ter os dados fora do arquivo. Os padrões fariam parte do programa em si. O arquivo compactado, dessa forma, não conteria os dados originais. Ele seria, em uma forma bem simples de se descrever, uma "receita" indicando como montar o arquivo final a partir dos padrões existentes no compactador.

Ou seja: ao invés de o compactador possuir apenas o programa em si, passaria a ter diversas sequências de dados. Isso tornaria o programa bem maior, algo como 100 MB, por exemplo. Mas nos tempos atuais, com boas conexões de internet, acho que não seria um problema.

Além disso, de acordo com o uso, poderiam ser desenvolvidas novas sequências de dados. A atualização poderia ser pela internet, como ocorre com os antivírus, por exemplo. Assim existiriam os padrões específicos para o arquivo sendo compactado, como uma imagem .jpg, um vídeo em flv, um executável...

E então, o que acham disso?

Sugestões? Críticas? Tudo é bem-vindo! :rolleyes:

Abraços,

Marcelo Utikawa da Fonseca

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0
Se precisar de ajuda, eu posso ajudar em tudo que eu tiver o conhecimento.

Ótimo! Vou usar este tópico para dar detalhes de como está a idéia e querendo ajudar é só falar!

Nunca usei, mas já ouvi falar e não vejo problema. Será feito em C ou C++?

Por mim pode ser qualquer um deles. Não planejei nada ainda, só lancei a idéia para saber as opiniões, se alguém via algum problema que eu não houvesse imaginado.

Vou criar o projeto no github então. Lá poderemos discutir sobre como será feito.

A minha idéia é usar o Eclipse como IDE padrão pois é a em que eu trabalho. A vantagem de todos usarem a mesma IDE é poder compartilhar configurações do projeto, simplificando para que outras pessoas possam trabalhar no código pois o projeto já estaria no github, não apenas o código.

Como das outras vezes, aberto a críticas e sugestões! :)

Link para o comentário
Compartilhar em outros sites

  • 0

Eu preferiria em C++, pois é a linguagem que tenho mais facilidade. No entanto, se necessário, posso me adaptar. Quanto ao Eclipse, irei baixa-lo o mais rápido possível.

Sobre o projeto, tem algum algoritmo de base?

Link para o comentário
Compartilhar em outros sites

  • 0

Não tenho nada... Apenas a idéia! :)

Eu já pensei em como seria o formato do arquivo e algumas outras coisas... Mas tudo precisa ser feitodo zero mesmo!

A única base em si poderia ser algum algoritmo para identificar os padrões nos arquivos.

Eu criei o projeto no github. Procure por utikawa/pba

Abraços,

Marcelo Utikawa da Fonseca

Link para o comentário
Compartilhar em outros sites

  • 0

Aos interessados, criei a página inicial do wiki descrevendo o projeto e as etapas planejadas para o desenvolvimento.

Link para o wiki do projeto: https://github.com/utikawa/pba/wiki

Maneiro!

Meu Skype é PedroCunha se você quiser adicionar.

Mandei MP!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...