Programação

Confira a programação:

Hora Palestra
10:00 Abertura do Evento
Emmanuel Brandão / Felipe Rodrigues
10:20 Entenda porque ASP.NET MVC pode te ajudar a ter uma arquitetura melhor
Victor Cavalcante
11:10 Integração Contínua: Muito Além do Build
Juan Lopes
11:50 Lightning Talk
(Organização: Leandro Daniel)
12:00 Almoço (incluso)
13:40 Projetando Aplicativos para a Escalabilidade – Tirando o melhor da Plataforma Windows Azure
Otavio Coelho
14:30 AOP: Desenvolvimento de aplicações usando aspectos
Fábio Falavinha
15:20 Lightning Talk
(Organização: Leandro Daniel)
15:30 Coffee Break (incluso)
16:00 TDD e sua influência no design
Mauricio Aniche
16:50 Gerenciando dependências com NuPack
Vinicius Quaiato
17:40 Lightning Talk
(Organização: Leandro Daniel)
17:50 OData: REST com qualidade
Elemar Jr.
18:40 Encerramento
(Organização DNAD)

Entenda porque ASP.NET MVC pode te ajudar a ter uma arquitetura melhor

Hoje o ASP.NET MVC já é um sucesso, cada vez mais e mais projetos aderem a este novo framework de desenvolvimento web, venha conhecer como este framework ajuda a construir uma aplicação com uma arquitetura melhor, com desacoplamento e facilitando os testes unitários, também será abordado as novidades da versão 3.0.

Integração Contínua: Muito Além do Build

Muitos pensam que a Integração Contínua resume-se à disponibilização de um servidor que continuamente obtém uma cópia do projeto e realiza sua compilação. O objetivo desta apresentação é mostrar a integração contínua como uma virtude a ser cultivada pelos desenvolvedores, independente de um servidor. Consiste em uma série de práticas que tornam possível integrar o trabalho de diversos membros de um projeto, verificando a integridade do mesmo, de forma a realizar o mínimo esforço possível. As práticas envolvidas na Integração Contínua frequentemente culminam na capacidade de rapidamente transformar código em um produto entregável com maior freqüência, ou seja, o Deployment Contínuo.

Projetando Aplicativos para a Escalabilidade – Tirando o melhor da Plataforma Windows Azure

A nuvem oferece oportunidades únicas que estavam disponíveis antes apenas para as grandes empresas: datacenters geograficamente distribuídos, quantidade massiva de recursos e o provisionamento elástico destes recursos. Como podemos tirar vantagem destas capacidades? Quais são os padrões de design necessários para tirar o melhor destas capacidades da forma mais eficiente? Esta sessão utilizará exemplos concretos de aplicativos que tiveram sucesso e que foram otimizados para estes cenários.

AOP: Desenvolvimento de aplicações usando aspectos

Não é fácil abstrair um modelo de objetos capaz de mapear suas operações através de conceitos como: herança, polimorfismo, condições por contrato, mas mesmo assim a orientação a objetos ajuda a expressar melhor o problema a ser resolvido. Existe apenas um ponto que não pode ser mapeado de uma forma simples e fácil com OO, é a modelagem do comportamento dos objetos.
Para modelar o comportamento de objetos utilizamos sempre um padrão de projeto, como Strategy, Command, Factory, enfim, uma série de alternativas nas quais não se consegue extrair a essência a partir de um modelo mais simples. Neste caso, podemos utilizar um complemento ao paradigma de objetos, que é o paradigma Orientado a Aspectos (AOP).

AOP foca na modularização de uma aplicação em aspectos. Isto é, aspectos ficam observando o ciclo de vida e interações entre os objetos de um sistema via troca de mensagens, até que possam agir. A seguir vamos entender melhor o que é um aspecto.

O uso do paradigma Orientado a Aspecto (AOP) complementa implementações no modelo orientado a objeto facilitando o desenvolvimento das aplicações, separando a implementação de regras de negócio de infra-estrutura. AOP traz mecanismos que interagem e controlam objetos em tempo de execução e compilação, abstraindo qualquer implementação que afetará o uso da aplicação horizontalmente. O corte horizontal na aplicação é feito quando funcionalidades genéricas que interagem diversas vezes no ciclo de vida dos objetos são candidatas a esta abstração por parte de um aspecto.

TDD e sua influência no design

TDD transforma o teste em uma atividade de design, na qual os programadores utilizam os testes para esclarecer as expectativas sobre o que um pedaço de código deve fazer [1]. Apesar desta ser uma definição ser comum entre os desenvolvedores, no dia-a-dia poucos usam o real poder dos testes para guiar o design. Esta palestra mostra exemplos práticos de como o feedback dos testes pode influenciar e guiar o desenvolvedor a um design menos acoplado e mais coeso.

[1] Freeman, S.; Pryce, N., Growing Object-Oriented Software, Guided by Tests. First Edition, Addison-Wesley Professional, 2009

Gerenciando dependências com NuPack

Aplicações possuem dependências, isto é um fato. Como gerenciá-las e distribuí-las de forma simples? Como atualizar de uma versão para outra? Entenda como o NuPack facilita e melhora o trabalho com dependências em nossas aplicações.

OData: REST com qualidade

Apresentação do conceito REST. Diferenças entre serviços REST e RPC. REST como alternativa arquitetural (pontos fortes e fracos). Principais decisões relacionadas com REST. Apresentando OData. OData é REST. Benefícios da adoção de OData.


Lightning Talk

Veja abaixo o que estamos reservando nessa edição do evento:

Por: Leandro Daniel
Titulo: Design emergente através de métricas
Descrição: Saiba como as métricas de software podem ajudá-lo a localizar elementos de design ocultos no seu código, permitindo que eles aflorem em padrões idiomáticos.

Por
: Vinicius Quaiato
Titulo: Stub x Mocks – Entenda definitivamente a diferença
Descrição: Quando trabalhamos com testes de unidade é comum utilizarmos recursos como Mocks e Stubs para auxiliar e viabilziar os testes. No entanto a diferença entre estas duas técnicas é bastante mal compreendida. Entenda agora, de uma vez por todas, a real difereça entre mocks e stubs, e melhore a escrita dos teus unit tests.

Por
: Emmanuel Brandão
Título: MEF, em 5 minutos!
Descrição: Saiba o que é MEF e o que esse framework pode fazer por você na criação de plug-ins para suas aplicações.

Por
: Rodrigo Vidal
Titulo: Functional Programming
Descrição: Como a Programação Funcional pode influenciar no design da sua aplicação, e melhorar sua implementação, utilizando a Linguagem F#.

Por
: Paulo Henrique Martins
Titulo: Criando aplicações para iPhone usando C# com o monotouch
Descrição: Saiba como podemos utilizar o SDK da Apple para iPhone através do C#.

Por
: Sidney Lima Filho
Titulo: Client Undertow: Quando boas práticas não são recomendadas.
Descrição: No desenvolvimento de software muitas vezes nos pegamos interagindo com mais de uma linguagem, para cada finalidade, porém o pensamento do desenvolvedor geralmente não muda e se acostuma a utilizar as mesmas soluções do passado. Neste lightning talk serão expostas as diferenças entre a linguagem C# e Javascript no que tange a linha de raciocínio de desenvolvimento, deixando as mesmas reflexões com relação a outras linguagens.

3 Responses to Programação

  1. [...] Até o momento alguns dos temas são: Integração Contínua: Muito Além do Build Projetando Aplicativos para a Escalabilidade – Tirando o melhor da Plataforma Windows Azure AOP: Desenvolvimento de aplicações usando aspectos TDD e sua influência no design Gerenciando dependências com NuPack OData: REST com qualidade. Confira a grade detalhada aqui: http://dnad.dotnetarchitects.net/dnad/2010/programacao/ [...]

  2. [...] ). Nas palestras vamos abordar integração continua, escalabilidade e TDD entre outros ( veja a programação [...]

  3. [...] Mais detalhes sobre as palestras e palestrantes podem ser vistos aqui. [...]

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>