Posts

  • Criando uma Imagem de Disco Criptografada no macOS

    Recentemente comecei a fazer uso de imagens de disco criptografadas para guardar arquivos sensíveis dos projetos de meus clientes. Esse é um recurso bem simples de usar, e em conjunto com o 1Password vira uma combinação perfeita para guardar e armazenar esse tipo de arquivo.

  • Obtendo o Fingerprint de um Keystore do Android

    Aplicativos Android usam uma chave para assinar seus APK’s afim de identificar os desenvolvedores na hora da publicação. Quem já trabalhou com Android sabe como o gerenciamento dessas chaves pode ser trabalhoso e as vezes é dificil identificar as informações de uma chave em questão bem como quais as chaves usadas em um aplicativo já publicado.

  • Dica de Xamarin.Forms — Personalização rápida por plataforma

    O Xamarin.Forms permite personalizar os componentes de acordo com a plataforma em que a interface esta sendo renderizada. Isso é feito usando a tag <OnPlatform x:TypeArguments="[Tipo]">, onde o atributo x:TypeArguments determina o tipo de dado que estamos personalizando.

  • Parem de dizer que aprender a programar é fácil

    Eu vi esse tweet após o Keynote do WWDC (2016) da Apple e pensei a mesma coisa. Peraí, programar é difícil. Recompensador, com certeza. Totalmente interessante. Mas dizer fácil cria uma expectativa de fracasso e uma vida de auto-dúvidas nas pessoas...
  • XAML Styler para Visual Studio for Mac

    Na semana passada o Xamarin Show publicou um episódio falando sobre o XAML Styler, um plugin para formatação de arquivos XAML que foi ressucitado recentemente. O que ele não cita nesse vídeo, e que por coicidencia eu descobri momentos antes de assist-lo, é que existe uma versão desse plugin para o Visual Studio for Mac. Ele pode ser encontrado na galeria de plugins:

  • Xamarin.Forms - Barra de Navegação Personalizada

    O Xamarin.Forms a partir da versão 3.2.0 introduziu um recurso muito útil, a capacidade de personalizar a barra da navegação com qualquer View. Em vários projetos que atendi era bem comum o cliente querer colocar o logo do seu aplicativo na barra de navegação. Em alguns casos até escondia a barra de navegação e criava uma própria a fim de conseguir personalizar ela do jeito que o cliente desejava.

  • Criando Arquivos .gitignore

    A configuração de um repositório de código para seu projeto para boa convivência com seu time, passa pela criação de um bom arquivo .gitignore. Nesse arquivo configuramos uma lista de exclusões, arquivos que não serão incluidos nem rastreados pelo git dentro do repositório. Mas qual a finalidade, o repositório não é justamente o espaço onde temos uma cópia completa do código fonte para que o projeto possa ser acessado e recompilado em qualquer ambiente?

  • Livro do mês: C# in Depth

    Todo programador tem sua linguagem do coração, aquela que ele mais gosta, mais se identifica ou que mais trabalhou em sua carreira. C# é a minha! Meu primeiro contato com ela foi em idos de 2001, quando a Microsoft lançou o segundo Beta do então Visual Studio.NET. Na época eu programava em Visual Basic e ASP clássico e linguagens e plataformas como o Java passavam longe do meu radar, já que eu sempre tive mais interesse pela stack da Microsoft.

  • Conectando a um emulador Android a partir de uma VM

    Um cenário típico para desenvolvedores Xamarin que usam Mac (meu caso), mas gostam do Visual Studio para Windows, é usar um Mac como máquina de desenvolvimento carregando o Windows com Parallels Desktop. Ao testar um aplicativo Android é preferível usar o emulador nativo no macOS ao invés de tentar rodar ele dentro da VM do Windows, o que costuma ser bem problemático.

  • NSubstitute - Verificando chamada em método async

    Uma das funcionalidades existentes nos frameworks de substituição como o NSubstitute e o Moq é a capacidade de verificar as ações realizadas em um fake gerado por eles, assim conseguimos verificar se um método ou uma propriedade foi chamado, com quais argumentos, entre outras coisas. Isso acontece pois o objeto gerado mantém o registro das operações executadas nele, o que nos possibilita testar se uma parte do nosso código esta chamando um método em uma dependencia.

  • NSubstitute - Simulando retorno de um método async

    Em testes unitários um stub é um tipo de fake usado para simular o código de uma dependência do objeto ou tema que esta sendo testado (subject under test ou sut). Em meus projetos adotei o NSubstitute como ferramenta para criação de fakes. Ele possibilita configurar de maneira bem simples um objeto para que ele tenha retorno específicos as chamadas de seus métodos.

  • Publicar ASP.NET Core no CentOS

    Recentemente precisei publicar um projeto ASP.NET Core em ambiente Linux, especificamente em um CentOS hospedado na Amazon. Foi a primeira vez que coloquei em prova as capacidades multi-plataforma do .NET Core, e tomei algum tempo aprendendo as particularidades para publicação nesse sistema operacional.

  • Livro do mês: The Art of Unit Test

    Unit Testing é um tema antigo, a primeira vez que me recordo ter tido contato com ele foi pelos idos de 2005, quando era programador .NET e buscava me certificar naquela tecnologia. Nessa época ainda era um programador medíocre, mas sempre em busca de aprimorar minhas técnicas e ferramentas acabei chegando ao NUnit, em algum artigo da MSDN que falava sobre os testes unitários.

  • Nova Série: Livro do mês

    Do final do ano passado para cá resgatei uma forma ancestal de estudos: os livros! Brincadeiras a parte, quando comecei a aprender sobre tecnologia ainda criança, no alto dos meus 11 anos, a Internet ainda engatinhava e não havia uma explosão de conteúdos e ferramentas de aprendizado. Eu pedia ao meu pai que comprasse os livros que encontrava nas livrarias, ainda populares na época, e que eram caríssimos.

  • Bem-vindos!

    Olá! Bem-vindos ao meu novo site.

subscribe via RSS