Giter Club home page Giter Club logo

i-2018's Introduction

i-2018's People

Contributors

samuelrcosta avatar

Watchers

 avatar  avatar  avatar

i-2018's Issues

Testes

O código produzido não é acompanhado de testes e, em decorrência destes, muitas mudanças são necessárias. Para os próximos exercícios, por favor, não esqueça dos testes de unidade.

Melhorias

  • (método gravaImagem) Um buffer de 1MB para a entrada, neste caso a Internet, talvez seja muito, dado que estará guardando isso em um arquivo local (muito mais eficiente), ou seja, você provavelmente está esperdiçando memória. Também observe que o método Files.copy realiza operação semelhante, ou seja, substitui o seu método. Também houve toda um esforço técnico para ler o conteúdo JSON. Acredito que a biblioteca que está usando deve ter recurso similar ao Jackson e também ao Gson, no qual obtém-se o JSON de um InputStream (o que eliminaria o esforço citado).
  • No mesmo método citado acima, você não estabeleceu o tamanho para o buffer de saída. Por que o de entrada e não o de saída?
  • Na mesma classe, a URL está hard-wired no código. Melhor seria montá-la a partir do nome do usuário (login).
  • Nomes de packages sempre em letras minúsculas.
  • Melhorar a documentação. Por exemplo, "Esta classe implementa o exercício 6" não é tão adequada quanto, "Classe que persiste imagem do avatar associado a uma conta do Github", certo?
  • Acrescente nota de copyright no início do seu código. Antes do package.
  • Fique atento aos nomes, por exemplo, "gravaClasse" não é classe, também não apenas grava, mas também serializa. Observe que há pouca coesão no método. Em uma outra estratégia você poderia serializar, gerar saída em um ByteArrayOutputStream e então persistir o byte array em um arquivo, ou seja, teríamos pelo menos dois métodos aqui.
  • AS1.Exercicio8.Exercicio8 documenta linhas do código, sem necessidade. O que deveria estar documentado é o formato do índice, parte da documentação da classe. Novamente, lerArquivoBinario apresenta baixíssima coesão.

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.