[deprecated]Apresentação Oragon Architecture

[deprecated]Apresentação Oragon Architecture

[deprecated]

Olá,

como vai você? Bom, espero que nesse dia das mães não esteja enfurnado no computador. Bom, do meu lado a minha fica distante de mais, em muitos os sentidos, portanto, lá vamos nós!

Hoje não vou falar muito, vou compartilhar apenas uma apresentação que fiz sobre algumas features do Oragon Architecture. A maioria já é bem conhecida, mas algumas outras são novinhas. Abaixo temos a apresentação, espero que goste. (mais…)

Contratos são garantias – JSON Schema

Contratos são garantias – JSON Schema

Não faz muito tempo que apanhei horrores em uma discussão no DNA sobre Json Schemas, mas para minha sorte e daqueles que estão ao meu lado nessa empreitada, saiu no dia 10/Abril no blog .NET Web Development and Tools o artigo Intellisense for JSON Schema in the JSON Editor, que ao meu ver é extremamente interessante.

Bom, assim como a galera do grupo, você deve estar se perguntando sobre a necessidade de um Schema para Json. A resposta é muito simples: Integrações.

Qualquer integração possível e imaginável se baseia em contratos, implícitos e/ou explícitos, comportamentais e/ou estruturais.

Mas o que quer dizer isso?

Se no OAuth você tem um fluxo de chamadas de autenticação, obtenção de token e enfim chamada a recursos, esse é um contrato de comportamento, ele define um fluxo. A estrutura de cada chamada é definida por um contrato estrutural, que define qual a estrutura da requisição e da resposta de cada operação, serviço ou recurso. Um contrato implícito é aquele que você imagina ou tem apenas um exemplo daquilo que você precisa usar em contratos estruturais, um contrato explícito tem os schemas utilizados e todo o fluxo, definindo entradas e saídas de cada operação.

Mas qual a vantagem?

Bom, se acordo um contrato com um parceiro para desenvolver uma integração, acordo comportamento e estrutura de requisições e iterações. Com Schemas, a definição de estruturas é muito mais eficiente demonstrando todas as possibilidades.

De fato, tive muitos problemas com integrações REST com Json, problemas locais (no domínio da empresa onde trabalho) e problemas com parceiros externos. O problema era sempre o mesmo. Os parceiros alteravam as assinaturas dos recursos e pronto, a integração parava de funcionar. Isso tudo porque era simples escrever em linguagem não gerenciada suas respostas, marretadas em responses, seja em PHP ou em outras linguagens de scripting. Se tivesse um acordo definido por Json Schemas, poderia facilmente validar a resposta e dizer que não era compatível, no entanto na ausência deste, ouço diversas vezes que “nada foi alterado” do lado do parceiro, o que todas as vezes não era verdade.

Bom, contratos são garantias, no mundo legal e no mundo virtual, lembre-se disso. Respeitá-los é um dever de quem quer que construa uma integração.

Voltando no tópico do Blog citado no início do post, o Intelisense for JSON Schema estará disponível no Update 2 do Visual Studio 2013.

Grande abraço

Coisas úteis que um dev nunca deve deixar de ter

Coisas úteis que um dev nunca deve deixar de ter

Bom, isso aqui anda meio parado. Ando estudando um milhão de coisas simultaneamente: File System Distribuído, Performance em NoSQL, escalabilidade, OWIN, Katana, ASP.NET MVC 5. Está realmente complicado de dar uma passadinha aqui para escrever.

Mas vendo um artigo do Elemar, me lembrei de algumas coisas interessantes que podem ajudar muitos.

Todo dev que se prese tem uma lista de coisas interessantes, quase que cacarecos, que carrega para todo setup de máquina de desenvolvimento que faz. São manias, sim, se você recebe um note novo da empresa e instala 10 itens fundamentais e outros 972 cacarecos, “tamo junto parceiro”, temos vícios!

No final do ano passado saiu um post de um cara que sempre que posso leio seu blog Scott Hanselman, nesse (Scott Hanselman’s 2014 Ultimate Developer and Power Users Tool List for Windows) ele cita diversas ferramentas interessantes para todo dev.

São ótimas dicas!