Por que participar?

    Software Craftsmanship é o cerne deste curso. Ao longo desta série de treinamento, sua equipe aprenderá sobre a mentalidade de Software Craftsmanship e como aplicá-la em sua organização.

    Escrever Código Limpo é difícil. Limpando o código existente, ainda mais. Sua equipe deve comparecer se você precisar deles para:

    • Escreva um código limpo que seja fácil de entender, manter e adaptar
      Torne-se mais proficiente em Test-Driven Development (TDD): usando testes para projetar e construir
    • Através de exercícios práticos, aprenda a diferença entre os dois estilos mais importantes de TDD: Escola de Chicago (classicista) e Escola de Londres (outside-in).
    • Aprenda a definir limites e responsabilidades de teste.
    • Como definimos uma unidade?
      Qual é a diferença entre o limite de teste e a responsabilidade de teste?
    • Onde usar mocks? Onde não usar mocks?
    • Aprenda a escrever testes que expressam o comportamento do negócio, não a implementação técnica.
    • Aprenda a testar e refatorar o código legado
    • Como lidar com dependências hard-wired
    • Como localizar testes evitando uma grande refatoração do código
    • Refatore o código para expressar regras de negócios

    Código limpo requer um bom design. Sua equipe aprenderá como:

    • Desenhar código que expressa requisitos de negócios.
    • Entender os princípios de design que levam ao código limpo
    • Prestar atenção a cada pequeno detalhe no nível do código, como nomes, responsabilidades de classes e métodos, tipos,
    • Observar atentamente os princípios-chave do design, como acoplamento e coesão, e como eles são aplicados no nível do código.
    • Evitar o excesso de engenharia e grandes reescritas, evoluindo incrementalmente o design do software por meio de testes
    Software Craftsmanship é uma mentalidade que se concentra no profissionalismo e na qualidade. Código Limpo e Desenvolvimento Orientado a Testes fazem parte dessa mentalidade e estão no centro deste curso. Mais do que aprender as técnicas, o curso também aborda a postura esperada de desenvolvedores de software profissionais.
    Público

    Este curso é projetado para equipes de desenvolvimento de software que são:

    • Fluentes com pelo menos uma linguagem orientada a objetos, como Java, C# ou C++
    • Capazes de entender Java ou C #
    • Capazes de escrever e executar testes de unidade usando um framework, como JUnit, NUnit, etc.
    • Têm uma compreensão básica de objetos fictícios

    Nota: este não é um curso para pessoas que estão aprendendo a codificar. Desenvolvedores com alguns anos no setor se beneficiarão mais com este curso do que pessoas com experiência limitada no setor. Além disso, este não é um treinamento básico de TDD. Este curso é totalmente prático e rápido. Embora o curso possa ser frequentado e seguido por desenvolvedores sem experiência em TDD, as pessoas com experiência em TDD se beneficiarão mais dele.

    Conteúdo do curso

    Princípios de:

    • Desenvolvimento Orientado a Testes (TDD)
    • Design Orientado a Objetos (OOD)
    • Design Orientado ao Domínio (DDD)

    Conteúdo:

    • Introdução avançada ao ciclo de vida do TDD
    • Escola de Chicago (classicista) de TDD
    • Escola de Londres (de fora para dentro) de TDD
    • Expressar comportamento de negócios por meio de testes, não de implementação
    • Princípios de Código Limpo e bom design
    • Usando testes de unidade como uma ferramenta para conduzir um bom design
    • Mocking como uma ferramenta de design
    • Código expressivo que descreve as regras de negócios
    • Testar e refatorar código legado
    Pré-requisitos

    O é um curso de treinamento prático. As equipes de desenvolvimento de software precisarão escrever muito código.

    Obrigatório:

    • Trazer seu próprio laptop
    • Ser capaz de criar projetos, construir código-fonte e executar casos de teste em seu ambiente de desenvolvimento
    • Ter um ambiente de desenvolvimento que consiste no seguinte:
      • Linguagem Orientada a Objetos
      • Uma framework de teste de unidade
      • Uma biblioteca de mocking
    • Um sistema de controle de versão distribuído, como o Github, é preferível
    INSTRUTOR DO CURSO Sandro Mancuso

    Software craftsman, autor, co-fundador da Codurance e fundador da London Software Craftsmanship Community (LSCC).  Sandro programa desde muito jovem, mas só iniciou sua carreira profissional em 1996. Trabalhou para startups, software houses, empresas de produtos, consultorias internacionais e bancos de investimento.

    Durante sua carreira, Sandro teve a oportunidade de trabalhar em uma variedade de projetos, abrangendo diferentes idiomas, tecnologias e indústrias. Sandro tem muita experiência em trazer a ideologia do Software Craftsmanship e as práticas de Extreme Programming para organizações de todos os tamanhos. Sandro é reconhecido internacionalmente por seu trabalho na evolução e disseminação do Software Craftsmanship. Sua aspiração profissional é elevar o nível da indústria de software, ajudando os desenvolvedores a se tornarem melhores em seu ofício.

    Você está em boa companhia

    Asos Aspect Capital Flextrade M&G Investments Moonpig Societe Generale Roche Vistaprint Schibsted Siemens lastminute.com

    Vamos discutir suas necessidades de treinamento

    Estamos ansiosos para saber mais sobre o seu negócio. Descubra como os cursos de treinamento da Codurance podem capacitar suas equipes de tecnologia.