Alcançando Um Software Maduro
Alcançando Um Software Maduro
Sobre o Livro
Um software maduro é um software que é confiável, seguro, estável, flexível, robusto. Saber quais tecnologias escolher para determinado problema é essencial para alcançar um software maduro. Entretanto, para isso também é necessário conhecer vários conceitos, várias tecnologias, frameworks e etc.
Em resumo: ser um profissional cada vez melhor é o primeiro passo para conseguir o objetivo.
O profissional que está em constante aprendizado conhece soluções/ferramentas que resolvem melhor um problema. Princípios SOLID, Clean Code, TDD, Design Patterns, Frameworks, novos paradigmas e conceitos, entre outras coisas, são coisas que deveriam ser essenciais a todo programador.
Ao longo do ebook, pretendo comentar sobre essas e muitas outras técnicas, apresentar frameworks novos, frameworks que poderiam ser melhor aproveitados, dicas de programação e organização, entre outros. Esse livro não vai focar em tecnologias específicas ou frameworks específicos e sim no conceito do assunto, porém, quando necessário, os exemplos serão feitos em Java, mas a idéia é te dar tudo o que precisa para entender como alcançar um software maduro.
Índice
I. O que é um software maduro?
Introdução
O que é um software maduro?
II. Conceitos Básicos
Controle de Versão
Build
Processo de Build (Java)
Compilação
Geração do JAR
O que é Maven?
Como o Maven funciona?
Apêndice: Maven com IDEs
Testes
Testes Funcionais
Testes não Funcionais
Visão Geral: Testes Funcionais
Unitário
Integração
Sistema
Aceitação
Modelo Ideal
Visão Geral: Testes Não-Funcionais
Carga
Performance
Estresse
O que é TDD?
Benefícios
Ciclo de Desenvolvimento
Apêndice: Cobertura de código
III. Arquitetura de Software
Integração Contínua
Principais Práticas Associadas
Principais Conceitos
Pré-requisitos para ter Integração Contínua
Benefícios
Desvantagens
ALM - Application Lifecycle Management
Por que usar ALM?
Cuidados com ALM
Apêndice: Minha suite de ALM
Banco de Dados
Diferenças SQL e No-SQL
- Divisões
- Foco
- Escalabilidade
Qual usar e quando usar?
Apêndice: NewSQL
IV. Arquitetura de Código
Clean Code - Código Limpo
Qual a importância do Clean Code?
Como escrever um código limpo?
Dicas
Design Patterns
Padrões GoF
Tipos de Design Patterns
Padrões de Criação
Padrões Estruturais
Padrões Comportamentais
Meus Design Patterns Preferidos
Quando usar
Por que usar
Paradigmas de Programação
Programação Orientada a Aspectos (AOP)
Programação Funcional
Programação Reativa
Domain-Driven Design (DDD)
Behavior-Driven Design (BDD)
Padrões Arquiteturais
MVC (Model-View-Controller)
MVVM (Model-View-ViewModel)
MVP (Model-View-Presenter)
MVW (Model-View-Whatever)
Princípios de Programação
SOLID
Single Responsibility
Open-Close
Liskov substitution
Interface Segregation
Dependency Inversion
DRY
KISS
WYSIWYG
YAGNI
V. Integração de Sistemas
Programação para Web
O que é HTTP?
Métodos HTTP
Status Codes
Headers
Autenticação
Cookies
Web Services
SOAP
REST
Segurança
SQL Injection
Cross-Site Request Forgery (CSRF)
Cross-Site Scripting (XSS)
Apêndice: Cloud Computing
Delivery Models
IaaS (Infrastructure as a Service)
PaaS (Platform as a Service)
SaaS (Software as a Service)
Outros
Notes
About the Author
Garantia de 60 Dias de 100% de Satisfação da Leanpub
Em até 60 dias após a compra, você pode obter um reembolso de 100% em qualquer compra da Leanpub com apenas dois cliques.
Tecnicamente, isso é arriscado para nós, já que você terá os arquivos do livro ou curso de qualquer maneira. Mas estamos tão confiantes em nossos produtos e serviços, e em nossos autores e leitores, que oferecemos com satisfação uma garantia de devolução total do dinheiro para tudo o que vendemos.
Você só pode descobrir o quanto algo é bom experimentando, e por causa da nossa garantia de 100% de devolução do dinheiro, literalmente não há risco em tentar!
Então, não há motivo para não clicar no botão Adicionar ao Carrinho, certo?
Ver termos completos...
Ganhe $8 em uma compra de $10, e $16 em uma compra de $20
Pagamos 80% de royalties em compras de $7,99 ou mais, e 80% de royalties menos uma taxa fixa de 50 centavos em compras entre $0,99 e $7,98. Você ganha $8 em uma venda de $10, e $16 em uma venda de $20. Então, se vendermos 5000 cópias não reembolsadas do seu livro por $20, você ganhará $80.000.
(Sim, alguns autores já ganharam muito mais que isso na Leanpub.)
Na verdade, os autores já ganharammais de $14 milhões escrevendo, publicando e vendendo na Leanpub.
Saiba mais sobre como escrever na Leanpub
Atualizações Gratuitas. Livre de DRM.
Ao comprar um livro da Leanpub, você recebe atualizações gratuitas enquanto o autor continuar atualizando o livro! Muitos autores usam o Leanpub para publicar seus livros em desenvolvimento, enquanto ainda estão escrevendo. Todos os leitores recebem atualizações gratuitas, independentemente de quando compraram o livro ou quanto pagaram (incluindo gratuitos).
A maioria dos livros da Leanpub está disponível em PDF (para computadores) e EPUB (para celulares, tablets e Kindle). Os formatos incluídos em um livro são mostrados no canto superior direito desta página.
Por fim, os livros da Leanpub não possuem nenhuma proteção DRM sem sentido, então você pode lê-los facilmente em qualquer dispositivo compatível.
Saiba mais sobre os formatos de ebook da Leanpub e onde lê-los