Palestra apresentada na Python Nordeste de 2015 em Natal, Rio Grande do Norte. A palestra fala sobre a estratégia de desenvolver projetos com orientação a objetos sendo estruturados a partir dos testes utilizando a estratégia de mocking.
Mocks x Stubs: O documento descreve uma palestra sobre testes de software que compara e contrasta mocks e stubs, abordando os principais pontos de cada um e como eles podem ser usados nos testes.
This document defines and describes various types of test doubles (dummy objects, fakes, stubs, mocks, spies) that are used for testing purposes. It provides examples of how to create mocks using Mockito, stub behaviors for mocks, verify interactions with mocks, and some limitations of mocking with Mockito.
Aqui são apresentados as técnicas de Mock objects. Simples e prático.
/**Depois que entrei no mundo Java, começei a procurar por conteúdo na internet para estudar, então me deparei com um ótimo site, http://www.argonavis.com.br, de um grande cara chamado Helder Rocha, que disponibiliza este mesmo conteúdo em seu site também. Obrigado pela ajuda a comunidade.*/
This document discusses testing with mock objects and provides guidance on their use. It notes that mocks are used to test in isolation by removing dependencies, and that mocks simulate object interaction while stubs simulate object state. Examples are given of scenarios where mocks are useful, such as distributed development and non-deterministic outcomes. The document recommends using mocks for developer tests but not acceptance tests, and lists some useful mocking patterns and resources for learning more.
The document compares Mochito, a rum cocktail, and Mockito, a Java mocking framework. It provides recipes for Mochito and discusses unit testing, mock objects, and how to use Mockito for writing tests. Mockito allows writing simple, fast, and independent unit tests by simulating complex object behavior with mock objects. It has a clean API without strings or anonymous classes for painless refactoring.
Este documento discute o desenvolvimento de protótipos mínimos viáveis (MVPs) usando a linguagem de programação Python. Ele fornece exemplos de código Python simples e explica como Python pode ser usado para construir rapidamente MVPs de baixo custo para validar ideias de negócios.
Desenvolvimento Incremental com Test Driven DevelopmentLeonardo de Aguiar
A apresentação introduz o Test Driven Development (TDD) e seus princípios. Discute os benefícios do TDD, como aumentar a qualidade do software e simplificar o processo de desenvolvimento de forma incremental através de testes. Também aborda paradigmas e falácias comuns sobre TDD.
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Adolfo Neto
O documento discute a eficácia dos Coding Dojos para ensinar Test Driven Development (TDD). Embora os Coding Dojos sejam atividades informais para treinar práticas ágeis como TDD, programação pareada e retrospectivas, ainda há poucas evidências científicas de que eles facilitem a aprendizagem de TDD. Mais pesquisas, como experimentos, são necessárias para avaliar a eficácia dos Coding Dojos no ensino de TDD.
Mocks x Stubs: O documento descreve uma palestra sobre testes de software que compara e contrasta mocks e stubs, abordando os principais pontos de cada um e como eles podem ser usados nos testes.
This document defines and describes various types of test doubles (dummy objects, fakes, stubs, mocks, spies) that are used for testing purposes. It provides examples of how to create mocks using Mockito, stub behaviors for mocks, verify interactions with mocks, and some limitations of mocking with Mockito.
Aqui são apresentados as técnicas de Mock objects. Simples e prático.
/**Depois que entrei no mundo Java, começei a procurar por conteúdo na internet para estudar, então me deparei com um ótimo site, http://www.argonavis.com.br, de um grande cara chamado Helder Rocha, que disponibiliza este mesmo conteúdo em seu site também. Obrigado pela ajuda a comunidade.*/
This document discusses testing with mock objects and provides guidance on their use. It notes that mocks are used to test in isolation by removing dependencies, and that mocks simulate object interaction while stubs simulate object state. Examples are given of scenarios where mocks are useful, such as distributed development and non-deterministic outcomes. The document recommends using mocks for developer tests but not acceptance tests, and lists some useful mocking patterns and resources for learning more.
The document compares Mochito, a rum cocktail, and Mockito, a Java mocking framework. It provides recipes for Mochito and discusses unit testing, mock objects, and how to use Mockito for writing tests. Mockito allows writing simple, fast, and independent unit tests by simulating complex object behavior with mock objects. It has a clean API without strings or anonymous classes for painless refactoring.
Este documento discute o desenvolvimento de protótipos mínimos viáveis (MVPs) usando a linguagem de programação Python. Ele fornece exemplos de código Python simples e explica como Python pode ser usado para construir rapidamente MVPs de baixo custo para validar ideias de negócios.
Desenvolvimento Incremental com Test Driven DevelopmentLeonardo de Aguiar
A apresentação introduz o Test Driven Development (TDD) e seus princípios. Discute os benefícios do TDD, como aumentar a qualidade do software e simplificar o processo de desenvolvimento de forma incremental através de testes. Também aborda paradigmas e falácias comuns sobre TDD.
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Adolfo Neto
O documento discute a eficácia dos Coding Dojos para ensinar Test Driven Development (TDD). Embora os Coding Dojos sejam atividades informais para treinar práticas ágeis como TDD, programação pareada e retrospectivas, ainda há poucas evidências científicas de que eles facilitem a aprendizagem de TDD. Mais pesquisas, como experimentos, são necessárias para avaliar a eficácia dos Coding Dojos no ensino de TDD.
Melhorando Testes No Django Com O Model MommyBernardo Fontes
O documento apresenta o Model Mommy, uma biblioteca para Django que facilita a criação de instâncias de modelos para testes de forma rápida e baseada em valores aleatórios ou definidos. Discute como o Model Mommy oferece uma API para criar objetos com relacionamentos complexos de forma simples, evitando repetição de código, e suporta campos customizados e sequências únicas.
Crawleando a web feito gente grande com o scrapyBernardo Fontes
A apresentação introduz o framework Scrapy para construir web crawlers em Python. Ela discute os principais componentes do Scrapy, incluindo Item para modelar dados, Request para fazer requisições, Spider para executar o crawler, e HtmlXPathSelector para selecionar partes da página. A apresentação também menciona outros recursos úteis do Scrapy como Item Pipeline, Scrapy Shell, Feed Exports e integração com Django.
Aprenda a programar direito: pergunte-me como iiBernardo Fontes
O documento discute a filosofia e funcionamento de um "Dojo" de programação, enfatizando um ambiente colaborativo, não competitivo e inclusivo, onde os participantes podem aprender novas tecnologias juntos de forma segura e divertida.
Django: um framework web para perfeccionistas com prazoBernardo Fontes
O documento apresenta o framework web Django, descrevendo suas principais características como: ser baseado em Python, ter arquitetura MVT, facilitar o desenvolvimento ágil através de recursos como DRY e orientação a objetos, e incluir ferramentas como formulários, autenticação e administração. O autor também fornece instruções inicias de como começar a usar o Django.
Testando Aplicações Django: Quando, Como e Onde?Bernardo Fontes
Este documento fornece dicas sobre como testar aplicações Django de forma efetiva. Ele discute a importância de testes e como testar as principais partes de uma aplicação Django, incluindo views, forms e models. Além disso, fornece exemplos de código de teste e sugere ferramentas como o TestClient do Django e o model_mommy para ajudar a escrever bons testes automatizados.
This presentation is about a group of software developers in Rio de Janeiro that wants to learn more and more about programming. The group is called ForkinRio!
A linguagem C# aproveita conceitos de muitas outras linguagens,
mas especialmente de C++ e Java. Sua sintaxe é relativamente fácil, o que
diminui o tempo de aprendizado. Todos os programas desenvolvidos devem
ser compilados, gerando um arquivo com a extensão DLL ou EXE. Isso torna a
execução dos programas mais rápida se comparados com as linguagens de
script (VBScript , JavaScript) que atualmente utilizamos na internet
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Melhorando Testes No Django Com O Model MommyBernardo Fontes
O documento apresenta o Model Mommy, uma biblioteca para Django que facilita a criação de instâncias de modelos para testes de forma rápida e baseada em valores aleatórios ou definidos. Discute como o Model Mommy oferece uma API para criar objetos com relacionamentos complexos de forma simples, evitando repetição de código, e suporta campos customizados e sequências únicas.
Crawleando a web feito gente grande com o scrapyBernardo Fontes
A apresentação introduz o framework Scrapy para construir web crawlers em Python. Ela discute os principais componentes do Scrapy, incluindo Item para modelar dados, Request para fazer requisições, Spider para executar o crawler, e HtmlXPathSelector para selecionar partes da página. A apresentação também menciona outros recursos úteis do Scrapy como Item Pipeline, Scrapy Shell, Feed Exports e integração com Django.
Aprenda a programar direito: pergunte-me como iiBernardo Fontes
O documento discute a filosofia e funcionamento de um "Dojo" de programação, enfatizando um ambiente colaborativo, não competitivo e inclusivo, onde os participantes podem aprender novas tecnologias juntos de forma segura e divertida.
Django: um framework web para perfeccionistas com prazoBernardo Fontes
O documento apresenta o framework web Django, descrevendo suas principais características como: ser baseado em Python, ter arquitetura MVT, facilitar o desenvolvimento ágil através de recursos como DRY e orientação a objetos, e incluir ferramentas como formulários, autenticação e administração. O autor também fornece instruções inicias de como começar a usar o Django.
Testando Aplicações Django: Quando, Como e Onde?Bernardo Fontes
Este documento fornece dicas sobre como testar aplicações Django de forma efetiva. Ele discute a importância de testes e como testar as principais partes de uma aplicação Django, incluindo views, forms e models. Além disso, fornece exemplos de código de teste e sugere ferramentas como o TestClient do Django e o model_mommy para ajudar a escrever bons testes automatizados.
This presentation is about a group of software developers in Rio de Janeiro that wants to learn more and more about programming. The group is called ForkinRio!
A linguagem C# aproveita conceitos de muitas outras linguagens,
mas especialmente de C++ e Java. Sua sintaxe é relativamente fácil, o que
diminui o tempo de aprendizado. Todos os programas desenvolvidos devem
ser compilados, gerando um arquivo com a extensão DLL ou EXE. Isso torna a
execução dos programas mais rápida se comparados com as linguagens de
script (VBScript , JavaScript) que atualmente utilizamos na internet
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo