Tag: desenvolvimento

  • Dica: Limpando seu ambiente Docker

    Este artigo foi publicado em 2016. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Principalmente durante o nosso aprendizado de docker acabamos criando uma verdadeira bagunça de imagens e containers em nossa máquina.

    Resolvi fazer uma faxina hoje e acabei me deparando com estes dois comandos bem úteis para fazer a tarefa.

    Nota: Isto irá pagar todas as imagens e containers da sua máquina. Faça com cuidado para nÃo perder dados importantes.

    docker rm $(docker ps -a -q)
    docker rmi $(docker images -q)
    

    A primeira linha remove todos os containers e a segunda as imagens.

    Até a próxima!

  • [Review]: Professional application Lifecycle Management with Visual Studio 2013

    Este artigo foi publicado em 2016. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Venho hoje compartilhar com voces o que em minha opinião foi a melhor leitura técnica dos últimos anos: Professional ALM with Visual Studio 2013 o qual terminei de ler hoje de manhã.

    Foram cerca de dois meses empenhado em absorver todo o conteúdo deste extenso livro que cobre todas as etapas do ciclo de vida do desenvolvimento de aplicações utilizando-se da plataforma Microsoft entre elas:

    O livro esta dividido em partes que abrangem:

    • Gestão de Projetos;
    • Gestão de Requisitos;
    • Desenvolvimento;
    • Testes e Qualidade;
    • Build e Deploy;
    • Gerenciamento de Laboratórios;

    Todos os recursos Ão tratados com detalhe e muitas informaçõe extras são disponiblizadas através de links que enriquecem ainda mais o conteúdo.

    Todo o código fonte é disponibilizado para download acelerando muito colocar em prática o que é aprendido e são poquíssimos pré-requisitos para ter tudo funcionando.

    Se voce pretende utilizar a plataforma em sua totalidade é uma leitura obrigatória.

    Muitos dos próximos posts serõ compartilhamentos do que aprendi e consegui colocar em prática quase que de imediato.

    E voce, quais boas leituras tem feito recenetemente? Compartilhe com a gente aqui nos comentários.

    Até a próxima!

  • API First: Como aprendemos na prática

    Este artigo foi publicado em 2016. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Hoje trago para discussão assunto que surgiu em uma retrospectiva do projeto que estamos concluindo.

    Por ter sido nosso primeiro grand projeto mobile fizemos o desenvolvimento de frontend e backend de forma paralela permitindo que ambos evoluissem de forma independente seguindo nossas especificações iniciais.

    Isto acelerou o desenvolvimento, mas causou um grande impacto nos testes integrados já que alguns aspectos técnicos da execução das APIs não haviam sido detectados.

    Outra constatação é que a própria interface do aplicativo poderia ter sido muito facilitada se a interação com o backend tivesse se iniciado mais cedo.

    Por isto comprovamos, infelimente da pior forma, que a abordagem de API First é extremamente importanteneste tipo de projeto.

    Para os novos desenvolvimento iremos tentar seguir o seguinte roteiro:

    • Fazer um planejamento inicial da aplicação utiliando o Storyboard;
    • Desenvolver as APIs já contemplando testes unitários e integrados;
    • Desenvolver as interfaces já apontando para os serviços, sejam eles mocks ou implementações finais;
    • Automatizar os testes de interface;

    E voces? Quais workflows tem utilizado no seu desenvolvimento móvel? Compartilhe com a gente aqui no comentários.

    Até a próxima!

  • Da virtualização à conteinerização

    Este artigo foi publicado em 2016. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Não sei se voces sabem mas sou usuário da plataforma Apple e trabalho no meu dia-a-dia com um MacBook Pro.

    Mas para utilizar o Visual Studio tenho de recorrer a uma tecnologia que me facina a tempos: a virtualizaçÃo.

    No Windows utilizei por muito tempo o VMWare e só muitos anos depois, para falar a verdade só para usar o Xamarin Player utilizei o VirtualBox.

    Já no Mac acatando a sugestão do cocatech me rendi ao Parallels que tem me atendido com maestria, apesar dos problemas de acessibilidade.

    Mas nem sempre a criação de máquinas virtuais é rápida o suficiente para realizar determinadas tarefas e por isto comecei a estudar a tecnologia de containers, principalmente o docker.

    Ele utiliza o conceito de particionamento de recursos da máquina, seja ela física ou virtual, para rodar ambientes independentes, o que é ideal para a publicação de aplicações diferentes em um mesmo ambiente, e promove-los como se fossem códigos fonte, é a realmente implementação do DEVOPS.

    No caso tenho utilizado para rodar uma instancia do Sonarqube em minha máquina e analisar a qualidade dos meus projetos.

    O Sonar tem um procedimento de instalação até que simples, mas teria de fazer ou uma máquina virtual ou colocar todo este mbiente no Mac, o que não gosto pois me tira a independencia.

    Este assunto ainda será bem tratado aqui, mas fica a dica para aqueles que querem algo novo para estudar, e aplicar em seu dia-a-dia.

    Até a próxima!

  • 10 coisas que todo desenvolvedor deve saber

    Este artigo foi publicado em 2015. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Neste último hangout do ano reunimos uma galera de respeio para falarmos de coiss essenciais para carreira de qualquer desenvolvedor.

    Conhecimentos sobre infraestrutura, design patterns, ingles e leitura de logs são, em nossa opinião competencias técnicas mínimas para que voce desempenhe bem suas funções.

    Concorda? Descorda? Tem mais a acrescentar? Então inclua aqui nos comentários o seu top 10 e vamos enriquecer esta discussão.

    Como sempre não esqueça de curtir o vídeo, assinar o canal, compartilhar com seus amigos e assistir os outros papos, os quais publicamos quinzenalmente.

    E espere a temporada 2016 que trará ainda mais conteúdo bacana, começando na segunda quinzena de janeiro.

    Abraços

  • Recurso do Visual Studio que facilita o uso de APIs JSON/XML

    Este artigo foi publicado em 2015. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Estou trabalhando em um grande projeto de conversÃo das APIs de acesso ao Sonarqube para acesso via .NET.

    Como são diversos objetos que fazem parte do retorno da API a parte mais trabalhosa é o mapeamento dos retornos em JSON para classes POCO.

    Descobri hoje que é possível facilitar muito este trabalho com um recurso que foi introduzido no Visual Studio 2013.

    Para isto siga os seguintes passos:

    1. Copie o resultado de um chamada, tanto em JSON quanto em XML;
    2. Crie um novo arquivo para receber a classe, ou posicione o cursor no arquivo já existente;
    3. No menu Edit vá até Paste Special e selecione Paste JSON as classes ou Past XML as classes respectivamente;

    Voilá! Voce terá uma classe gerada baseada no conteúdo da área d transferencia pronta para receber os ajustes necessários.

    Abaixo o código convertido da [API de busca de CEP:

    public class Rootobject
     {
     public string bairro { get; set; }
     public string logradouro { get; set; }
     public string cep { get; set; }
     public string uf { get; set; }
     public string localidade { get; set; }
     }
     

    Até a próxima!

  • Uma API pública para busca de endereços pelo CEP

    Este artigo foi publicado em 2015. Ferramentas e versões citadas podem ter mudado desde então; a reflexão permanece.

    Fala galera!

    Em minhas andanças pela Web acabei me deparando com esta API pública de consulta de endereços pelo CEP.

    Não tenho nada haver com a empresa em questão, apenas estou compartilhando a ótima iniciativa por parte deles de disponibilizar algo tão comum e ao mesmo tempo tão útil para nós desenvolvedores.

    O uso é bem simples bastando fazer uma requisição HTTP para o endereço:

    http://cep.correiocontrol.com.br/}seucep}.json
    

    O resultado, obviamente, está no formato JSON e tem a seguinte estrutura:

    {
        "bairro": "Bairro",
        "logradouro": "Logradouro",
        "localidade": "Localidade",
        üf": "UF",
        "cep": "CEP"
    }
    

    Abaixo um exemplo bem simples de como poderiamos aplicar isto em um formulário utilizando JavaScript e jQuery:

    
        $(function () {            
            $("#CEP").on('blur', function () {
                var cep = $(this).val().replace(/\D+/g, "");
                var url = 'http://cep.correiocontrol.com.br/' + cep + '.json';
                $.getJSON(url, function(data) {
                    $("#Logradouro").val(data.logradouro);
                    $("#Bairro").val(data.bairro);
                    $("#Cidade").val(data.localidade);
                    $("#UF").val(data.uf);
                    $("#Numero").focus();
                });
            });
        });
    
    

    O desempenho, pelo menos em meus testes, é bem satisfatório e acho que vale a pena enviar um e-mail para a galera de lá agradecendo e elogiando o trabalho.

    Conhece ou desenvolveu outra API pública? Compartilhe com a gente aqui nos comentários.

    Até a próxima!