C# 6.0 TIPS–Exception Filters

Esse é um post simples para explorar um ótimo recurso do C# 6.0: Exception Filters. Beleza, todo mundo que programa com C# já teve a necessidade trabalhar com o Exceptions. Meio que não há como fugir disso. Lógico que com tanto uso, alguma necessidades específicas aparecem, e para poder tratar melhor nossas exceção acabamos por utilizar estruturas condicionais, o que muitas vezes torna o código mais inteligível.

Com o Exception Filter, é possível aplicar um filtro direto na exceção. É claro que antes você já podia “tratar” isso dentro do bloco try/catch, porém teria de se executar o catch e em seguida filtrar a condição. Com este novo recurso podemos realizar a condição e aplicar o tratamento específico. Observe o código abaixo:

CODE

Agora, um bloco o catch só será executado quando o filtro for verdadeiro.

IMAGE

O código fonte pode ser baixado aqui!!!

Até a próxima e bons estudos pessoal :)

WCF Tips–Bounded Generics, Serialization e o Data Contract

contract_genericEssa é uma dica que eu acho importante compartilhar. Ultimamente por conta de uma necessidade acabei topando com algumas reclamações em relação ao uso de Generics em contatos de dados no WCF, o que me motivou a escrever este post abordando o uso e também o motivo desta implementação no Windows Communication Foundation.

É comum que um desenvolvedor .NET trabalhar com generics. Sendo assim, ao iniciar no WCF também será comum que ele mantenha a mesma mentalidade, criado novos tipos e métodos genéricos. O problema disso é que WCF não suporta a exposição de tipos genéricos!

A primeira informação crucial aqui é que isso não é culpa ou limitação do WCF :D

Continuar lendo

Enterprise Integration–Uma introdução aos Sistemas distribuídos e o Microsoft Integration

Em Enterprise Integration, consideramos sistemas distribuídos uma aplicação que está disponível em múltiplos nós. Na visão do Microsoft Integration, chamamos isto de Connected System (Sistemas Conectados). Hoje a visão de Integração da Microsoft é proporcionar conectividade corporativa de qualquer lugar, para qualquer dispositivo.

 

EICAPA

Neste post vamos olhar a visão da Microsoft sobre sistemas distribuídos e tecnologias de integração do início aos dias atuais.

Continuar lendo

Application Insights–Da teoria a prática

O Application Insights é um serviço de nuvem (SaaS) distribuído como parte do Visual Studio Online e integrado ao Portal do Microsot Azure DevOps. Com ele e possível garantir que a aplicação ou serviço estão realmente rodando, além de identificar problemas de desempenho e se obter uma monitoração eficiente.

Basicamente, o Application Insigths tenta responder as seguintes perguntas: Sua aplicação está no ar neste momento? Está funcionando? Será que está com algum erro? E o desempenho?

CAPA

Neste post, além de uma introdução ao Application Insights, vou criar uma aplicação WEB utilizando os recurso de telemetria, testando e visualizando os resultados no portal do Microsoft Azure DevOps.

Continuar lendo

Microsoft Azure BizTalk Services–Configurando o ambiente de desenvolvimento

Esta é a continuação do artigo Microsoft Azure BizTalk Services–Criando seu primeiro serviço BizTalk. O que vimos anteriormente foi a criação do serviço, cobrindo os números 1 e 2 da agenda. Nesta parte vou concluir com as configurações do  ambiente de desenvolvimento completando o passo 3.

CAPA02

Agenda

  1. Pré-requisitos
    1. Subscription ativa no Azure
    2. Dependências no Azure
    3. Dependências On-premisse
  2. Provisionando o serviço
    1. Criando o Banco de Dados
    2. Criando uma Conta de Armazenamento   
    3. Criando o MABS (Microsoft Azure BizTalk Services)
    4. Obtendo o Controle de Acesso
    5. Configurando o Azure BizTalk Services Portal
  3. Configurando o ambiente de desenvolvimento
    1. Instalando o certificado
    2. Criando um certificado para o BizTalk Adapter Service
    3. Instalando o Azure SDK BizTalk Services
    4. Instalando o BizTalk Adapter Service (BAS)
  4. Configurando o BizTalk Adapter Service
  5. Considerações
  6. Referências

Continuar lendo

Microsoft Azure BizTalk Services–Criando seu primeiro serviço BizTalk

Este artigo é dedicado a inicialização ao Microsoft Azure Biztalk Services. A ideia é criar um serviço do Biztalk PaaS, instalar o SDK na máquina de desenvolvimento e criar um projeto utilizando o Visual Studio.

CAPA01

A primeira motivação para a criação deste artigo foi a quantidade de erros que tive de solucionar em conjunto com a falta de material atual sobre o assunto (e em português nem se fala). Neste artigo minha intenção é fornecer um guia completo para se iniciar no Azure BizTalk Services abrangendo tanto a criação do serviço no Portal do Azure, quanto a configuração e instalação do SDK para o desenvolvimento.

“Vale notar que estamos falando do Azure BizTalk Services que é uma solução PaaS.”

Se você não estiver familiarizado com o conceito de PaaS, sugiro a leitura do seguinte artigo: Modelos de Serviço na Nuvem: IaaS, PaaS e Saas.

Também vou dividir este post em duas partes: A criação do serviço e a instalação do SDK.

Continuar lendo

Mensageria e os Protocolos–Choose your poison

Uma das questões mais interessantes da mensageria são os protocolos. Na arquitetura de software é fundamental entender a diferença entre os protocolos de mensagens e qual deve ser utilizado em cada tipo de aplicação.

capa

Hoje com a multiplicidade de sistemas e plataformas, os arquitetos de software tem optado pela utilização do famoso Message Broker (que vou abordar em um próximo post). Porém escolher um middleware de mensagens também implica em entender as diferenças sutis entre os protocolos de transporte, o que pode ser uma tarefa difícil.

Neste post vou apresentar os principais e mais utilizados protocolos de mensagem da atualidade.

Continuar lendo