Profile

Renato dos Santos Oliveira @renatooliveira


About Me

-

Proposals

Django Views: Boas práticas

Django estabelece uma arquitetura suficientemente adequada, com cada parte do sistema (views, models, templates, forms) exercendo uma função específica. No entanto, é fácil se render à tentação de incluir nas views regras de negócio do sistema. Focando no princípio DRY (Don’t Repeat Yourself) views infladas podem acarretar em repetição de blocos de código por todo o projeto. Um cálculo, uma queryset mais elaborada ou um checkout em um sistema de pagamento podem multiplicar os focos de bug no seu projeto. Nesta palestra pretendo abordar boas práticas, não só de Django Views, como também de Orientação a Objeto.

 

Django Views: Boas práticas

Django estabelece uma arquitetura suficientemente adequada, com cada parte do sistema (views, models, templates, forms) exercendo uma função específica. No entanto, é fácil se render à tentação de incluir nas views regras de negócio do sistema. Focando no princípio DRY (Don’t Repeat Yourself) views infladas podem acarretar em repetição de blocos de código por todo o projeto. Um cálculo, uma queryset mais elaborada ou um checkout em um sistema de pagamento podem multiplicar os focos de bug no seu projeto. Nesta palestra pretendo abordar boas práticas, não só de Django Views, como também de Orientação a Objeto.

Django Views: Boas Práticas

Django estabelece uma arquitetura suficientemente adequada, com cada parte do sistema (views, models, templates, forms) exercendo uma função específica. No entanto, é fácil se render à tentação de incluir nas views regras de negócio do sistema. Focando no princípio DRY (Don’t Repeat Yourself) views infladas podem acarretar em repetição de blocos de código por todo o projeto. Um cálculo, uma queryset mais elaborada ou um checkout em um sistema de pagamento podem multiplicar os focos de bug no seu projeto. Nesta palestra pretendo abordar boas práticas, não só de Django Views, como também de Orientação a Objeto.

Test Driven Design

 

Este tutorial será apresentado por Renato Oliveira e Bernardo Fontes

 

Neste tutorial iremos mostrar como combinar Test-driven Development e estratégias de mocking visando um design de código orientado a objetos em aplicações Django


 

Descrição

 

Muitas das discussões atuais no que tange TDD tem foco em testes por si só. Nós pensamos que combinar TDD com outras responsabilidades podemos evoluir de um processo para ajudar o desenvolvedor a criar código com testes para uma ferramenta poderosa para emergir design de código.

 

Neste tutorial vamos implementar uma aplicação de E-commerce o mais próximo da realidade o possível. Evoluiremos a aplicação passo a passo e antes de cada parte iremos discutir juntos e cobrir tópicos importantes sore testes, mocks e design de cógido.

 

Os principais tópicos que iremos cobrir

 

- Os benefícios e limitações da arquitetura MVC

- Programação orientada a objetos além das buzzwords

- Potencializando os testes com um bom uso de mocks

 

Duração: 4hrs

 

Testes Pythonicos com Py.test

Py.test é um framework maduro e completo de testes em Python. Diferente do Unittest, que é um projeto baseado no JUnit, o Py.test foi um projeto pensado para Python. Criado em 2004 por Holger Krekel, é usado por grandes projetos e empresas como PyPy, Sentry e Mozilla. Nesta palestra apresento uma introdução ao framework, runner, tests discovery, markers, fixtures e compara-lo ao Unittest.

[WEB] Sua API é uma UI

User interface é "o espaço onde a interação entre humanos e máquinas ocorre. O objetivo desta interação é a operação e controle efetivos da máquina no lado do usuário e o feedback da máquina, que auxilia o operador na tomada de decisões operacionais."

Ter a ideia clara de quem é seu usuário e prover uma boa experiência para ele já é bastante trabalhado em interfaces gráficas. Técnicas e processos são aplicados para criar uma fomar simples e intuitiva de usar o produto/serviço. Mas quando a interface de interação é o código, como melhorar a experiência?


Nessa palestra pretendo falar um pouco de usabilidade sob a visão de um desenvolvedor e mostrar técnicas e protocolos para melhorar APIs web.