Os Engenheiros de Suporte Microsoft em Modern Apps têm a oportunidade de trabalhar com sistemas críticos nas maiores companhias do mundo dos mais diversos segmentos. Ao longo dos anos, estes profissionais qualificaram-se no desenvolvimento e suporte baseando-se nas recomendações dos produtos e em boas práticas vivenciadas nas experiências de campo. Trabalhando lado a lado com os clientes, compartilhando conhecimento com milhares de times de desenvolvimento e auxiliando cada pessoa e cada organização a atingir todo o seu potencial.
Com foco em Dev Ops, .NET Framework, IIS (Internet Information Services) e Microsoft Azure, desenvolvedores e arquitetos estarão aptos a aperfeiçoar a qualidade e disponibilidade de seu software, aumentar seu nível de maturidade em desenvolvimento, economizar tempo e reduzir custos.
قائمة المحتويات
1 Conceitos introdutórios
1.1 Tópicos base para software e sistemas operacionais
1.2 O motivo por trás da causa: buscando a origem da causa raiz
1.3 Garbage Collector
1.4 Suportando o IIS e entendendo o seu funcionamento
1.5 Conclusão
2 Falhas e problemas recorrentes da produção de software
2.1 O que acontece se eu não usar o método Dispose?
2.2 Padrão Dispose
2.3 O porquê de utilizar threads
2.4 Quando devo sobrescrever o método Finalize
2.5 Exception Shielding
2.6 Propagação de exceções
2.7 Busca em memória
2.8 Modelo para Serviços Windows
2.9 Utilizando Server Name Indications
2.10 Conclusão
3 Planejamento e gestão de demandas
3.1 Problemas na gestão de requisitos e suas principais causas
3.2 A fábrica está atrasando todas as entregas, o que posso fazer para melhorar isso?
3.3 Planejamento de projeto guiado a feedback
3.4 Como gerenciar a entrega de software por fábricas de software utilizando o TFS Git?
3.5 Conclusão
4 Padrões de desenvolvimento
4.1 Por que criar exceções customizadas
4.2 Como tratar as exceções
4.3 Validação de parâmetros
4.4 Não exponha listas em seu modelo de dados
4.5 Passagem de parâmetros<
4.6 Qual a melhor estratégia de branch para o meu sistema?
4.7 Qualidade de código
4.8 Por que investir em qualidade do código?
4.9 Conclusão<
5 Gestão e monitoramento de releases
5.1 Build e release
5.2 Rastreabilidade de código-fonte
5.3 Como extrair o máximo do Lab Management para garantir a qualidade do seu software
5.4 Conclusão
6 Boas práticas
6.1 Invista em revisão de código
6.2 Evite a codificação de métodos complexos
6.3 Como devo me preparar para um teste de carga?
6.4 Como simular a carga necessária para minha aplicação?
6.5 Profiling de aplicações .NET
6.6 Cuidados ao definir contratos de serviços
6.7 Bundling e minification
6.8 Lutando contra alterações inadvertidas no planejamento
6.9 Aumentando a disponibilidade e o desempenho de websites por meio de seus application pools
6.10 Como o Web Deploy pode ser útil?
6.11 Melhores práticas ao escrever expressões regulares
6.12 Conclusão
7 Bibliografia
8 Sobre os autores
عن المؤلف
Adilson Coutrin possui bacharelado em Ciência da Computação e MBA em Cloud Computing pela FIAP, além de certificações em Cloud Computing e suporte. Possui 13 anos de experiência em gerenciamento de infraestrutura baseadas em tecnologias Microsoft. Adilson aproveita seu tempo livre com sua esposa assistindo séries, vendo filmes e lendo. Além disso, gosta de acompanhar seu time, o São Paulo F.C.
Alexandre Campos iniciou essa jornada em ALM em 2006, ao iniciar o processo de adoção de XP em uma pequena equipe de 12 programadores. Foi quando começou a utilizar técnicas como Integração Contínua e Teste Unitário. A partir de 2007, passou a adotar o TFS, então na versão 2005, como a ferramenta preferida para suportar o ALM. Em 2009, passou a atuar como Scrum Master e em projetos de Coaching e Implementação de Scrum. Em 2013, aceitou a oferta para atuar como Premier Field Engineer na Microsoft, onde ajuda os clientes Premier a entregar mais valor de negócio na forma de software. Nas horas vagas, Alexandre brinca de Kanban para seu filho Thiago de 3 anos, e joga jogos de tabuleiro nas madrugadas.
Alexandre Teoi é formado em Engenharia de Computação pelo Instituto Tecnológico de Aeronáutica, e trabalha com desenvolvimento de software há mais de 20 anos. Nesse período, teve a oportunidade de trabalhar com várias linguagens (C, C++, C#), criando software para rodar nos mais diversos sistemas operacionais (MS-DOS, Windows, Unix, Windows NT). Atualmente, trabalha como Premier Field Engineer especializado em Modern Apps na Microsoft. Nas horas livres, gosta de conhecer novos restaurantes com a esposa e dois filhos, e jogar Street Fighter.
Bruno Lins de Oliveira atua com desenvolvimento e suporte ao desenvolvimento de software, em diferentes ramos, há mais de 10 anos. Possui diversas certificações Microsoft voltadas para desenvolvimento. Bruno aproveita seu tempo livre com sua família e assistindo séries de TV.
Christiano Donke é especialista em arquitetura e construção de software. Começou a desenvolver aos 12 anos, e há 10 anos atua profissionalmente na área, sempre focado e baseado em tecnologias Microsoft. Em seu tempo livre, Christiano aproveita o tempo com sua esposa Fernanda, saindo com amigos, fazendo algo em família, ou desenvolvendo algo para estudar.
Demetrio Rafael Neri Costa é um profissional certificado com mais de 10 anos de experiência no desenvolvimento e suporte de soluções. Gosta muito de cinema, bons livros, e passar o tempo com os amigos e familiares.
Felipe Fujiy Pessoto possui bacharelado em Ciência da Computação, atua com desenvolvimento de software há mais de 10 anos, em sua maioria com tecnologias Microsoft, possuindo diversas certificações. Participa de comunidades online, contribuindo em projetos Open Source, fóruns, artigos em blog e revistas.
Fernando Filiputti possui bacharelado em Ciência da Computação. Possui 12 anos de experiência em desenvolvimento de soluções baseadas em tecnologia Microsoft, e atualmente tem ajudado os clientes na adoção das melhores práticas de Application Lifecycle Management e Dev Ops, usando Team Foundation Server e Visual Studio Team Services. Fernando aproveita seu tempo livre com sua esposa Tania e seu filho João Pedro, ouvindo Pink Floyd e acompanhando o Palmeiras.
Fernando Henrique Inocêncio Borba Ferreira possui bacharelado e mestrado em Sistemas de Informação. Atuando com desenvolvimento de software há mais de 10 anos, ele também foi Microsoft MVP em Data Platform Development e Visual C#. Já trabalhou em expedições cientificas na floresta Amazônica e foi campeão de competições de desenvolvimento, como o Microsoft Imagine Cup. Fernando usa seu tempo livre lendo, tocando bateria e trabalhando em pesquisas acadêmicas.
Henrique Rezende da Silva possui bacharelado em Computer Systems Engineering pela City University de Londres. Atua com foco em IIS desde 2007.