Software Architecture & Engineering
55 notes
Some notes are currently available only in Chinese. English translations are shown when available.
- Software Architecturehistorical
Architecture as system-level decisions about boundaries, dependencies, deployment, data, quality attributes, and evolutionary trade-offs.
- Architecture Patternshistorical
Choosing monolith, layered, event-driven, microservice, read/write split, and domain-oriented patterns from constraints rather than fashion.
- Monolithic Architecturehistorical
A single deployable application and the trade-offs between operational simplicity, modularity, scaling, and organizational boundaries.
- Layered Architecturehistorical
Separating presentation/application/domain/infrastructure responsibilities while controlling dependency direction.
- Read/Write Separation Architecturehistorical
Separating write authority from read replicas/projections and handling replication lag, read-your-writes, routing, and failover.
- Event-Driven Architecturehistorical
Producing and reacting to events with asynchronous coupling, delivery semantics, ordering, idempotency, and observability.
- Domain-Driven Designhistorical
DDD concepts: bounded contexts, ubiquitous language, aggregates, entities, value objects, domain services, and context integration.
- Microservices Architecturehistorical
Independently deployable service boundaries with explicit data ownership and the distributed-systems/operational costs they introduce.
- OpenID Connecthistorical
Identity layer on OAuth with ID tokens, UserInfo, issuer/audience/nonce validation, and authentication sessions.
- JSON Web Token (JWT)historical
Signed token format, claims, validation, expiration, key management, and common security misconceptions.