- Cada commit deve conter uma alteração lógica única.
- Não faça diversas alterações lógicas em um único commit como corrigir um bug e implementar uma nova funcionalidade, por exemplo. Neste caso, prefira criar commits separados.
- Não separe uma alteração lógica única em vários commits.
- A implementação de uma funcionalidade e os seus testes devem estar em um mesmo commit, por exemplo.
- Realize o commit o quanto antes e frequentemente.
- Esta prática traz vantagens como:
- É difícil definir o que é assíncrono.
- O termo assíncrono é sobre o que não é, isto é, não ser síncrono.
- Isso é devido a etimologia da palavra. A letra a refere-se a negação ou privação.
- O termo síncrono refere-se a processos que acontecem um após o outro.
- Por que não querer que algo seja síncrono? É para obter concorrência e paralelismo.
- Os termos concorrência e paralelismo referem-se a coisas que acontecem ao mesmo tempo.
Fiz algumas perguntas nas redes sociais e ferramentas de comunicação como Twitter, LinkedIn, Slack, Discord e Telegram sobre como as pessoas costumam documentar a arquitetura de sistemas.
-
Vocês costumam desenhar diagramas para documentar a arquitetura dos sistemas que vocês constroem?
-
O que vocês costumam representar: código, infraestrutura ou ambos?
- Getting Started with Headless Chrome
- The power of Headless Chrome and browser automation (Google I/O '18) (►)
- Headless Chrome and browser automation with Eric Bidelman (►)
- Web Scraping with Puppeteer, NodeJS and Shopify (►)
- Chrome 59: Headless Chrome, Native Notifications on macOS and the Image Capture API (►)
- Chrome Puppeteer talk at JSMontreal (►)
- Lighthouse, Headless Chrome, and Puppeteer (GDD India '17) (►)
- Distributed crawler powered by Headless Chrome (★)
- Arquitetura de Software: A diferença entre Arquitetura e Design - Eduardo Rabelo 📖 ⭐
- Software Architecture - The Difference Between Architecture and Design - Mohamed Aladdin 📖 ⭐
- Knocking down the Ivory Tower - Christopher Laine 📖
- The Ivory Tower Architect - Deep Shah 📖
- Modeling Software Architecture With C4 📖 ⭐
- [Software Architecture: The Most Important Architectural Patterns You Need to Know 📖 ⭐](https://levelup.gitconnected.com/software-architecture-the-important-architectural-patterns-you-need-to-know-a1f5e
- DDD – Introdução a Domain Driven Design - Daniel Cukier 📖 ⭐
- Desmistificando o DDD - Grazi Bonizi 📖 ⭐
- Destilando um domínio com DDD - Grazi Bonizi 📖 ⭐
- DDD Aplicado – Case Qualyteam - Grazi Bonizi 📖
- Complexidade Acidental
- Introdução a Domain-Driven Design - Maicon Pereira
▶️ ⭐ - Big Ball of Mud - Brian Foote and Joseph Yoder 📖 ⭐
- Big Ball of Mud - Felipe de Freitas Batista 📖
- Qual é o problema com a arquitetura das aplicações atuais?
- Um projeto, na maioria das vezes, é começado pequeno, por uma pessoa e sem saber como será a sua evolução.
- Pode acontecer de novas pessoas entrarem no projeto e não conhecerem as regras que guiam a aplicação.
- Um dos princípios de organização é o MVC ou Model View Controller.
- No MVC a regra de negócio fica na Model, os templates na View e a mediação é feita pelo Controller.
- O MVC não é suficiente para manter uma aplicação com código compreensível durante muito tempo.
- A ideia de utilizar MVC veio de frameworks e a maioria das aplicações estão acopladas de alguma maneira a frameworks.
- Um projeto é iniciado normalmente (1) escolhendo um framework, (2) instalando um esqueleto, (3) removendo códigos de demonstração, (
NewerOlder