FOSA丨09丨架构风格基础

本篇通过回答《Fundamentals of Software Architecture》第九章的课后思考题,深入探讨分布式计算的八大谬论及其对架构设计的影响、分布式架构相比单体架构面临的独特挑战、邮票耦合问题的本质与危害,以及解决邮票耦合的有效策略与最佳实践,帮助理解分布式系统设计的核心原则和常见陷阱,提升架构师在分布式环境下的决策能力和风险识别意识。

架构设计

FOSA丨08丨组件思维

本篇通过回答《Fundamentals of Software Architecture》第八章的课后思考题,深入探讨软件组件的核心概念与实现方式、技术导向与领域导向分区策略的差异、实体陷阱问题的本质及解决方案,以及Actor/Actions模式、工作流分析和事件风暴等组件识别技术的适用场景与局限性,帮助理解如何运用领域驱动的思维方式来设计组件边界,提升系统的内聚性、松耦合特性和业务适应能力。

架构设计

Rust 入门丨02 闭包

本文通过"承诺"的视角深入解析 Rust 闭包中 Fn、FnMut、FnOnce 三个 trait 的包含关系,帮助读者理解闭包设计的本质。

rust

FOSA丨07丨架构特性范围

本篇通过回答《Fundamentals of Software Architecture》第七章的课后思考题,深入探讨架构量子的概念与定义、架构特性的作用范围以及量子边界的识别方法,分析系统组件间的同步依赖关系对架构分解的影响,帮助理解如何基于功能内聚性和部署依赖性来合理划分架构边界,优化系统的可部署性、可测试性和可维护性。

架构设计

课程笔记丨《手把手带你写一个 Web 框架》

极客时间《手把手带你写一个 Web 框架》课程笔记。

课程笔记

FOSA丨06丨评估和管理架构特性

本篇通过回答《Fundamentals of Software Architecture》第六章的课后思考题,深入探讨如何衡量和管理架构特性,分析圈复杂度等结构性指标的重要性、架构适应度函数的定义与应用,以及运维性、结构性、流程性指标的评估方法,帮助理解如何建立有效的架构治理机制来持续监控和优化系统架构。

架构设计

FOSA丨05丨识别架构特征

本篇通过回答《Fundamentals of Software Architecture》第五章的课后思考题,深入探讨如何识别架构特征,分析限制架构特性数量的重要性、架构特性的来源、业务驱动与架构特性的关系,以及可伸缩性与弹性等关键特性的区别,帮助理解如何从业务需求中提取和选择合适的架构特性。

架构设计

FOSA丨04丨架构特性定义

本篇通过回答《Fundamentals of Software Architecture》第四章的课后思考题,深入探讨架构特性(Architecture Characteristics)的定义与分类,分析架构特性的三个判定标准、隐性与显性特性的区别,以及操作型、结构型、交叉型特性的具体表现形式,帮助理解如何识别和选择适合系统需求的架构特性。

架构设计

RAG 全栈技术

RAG 全栈技术

AI

FOSA丨03丨模块化

本篇通过回答《Fundamentals of Software Architecture》第三章的课后思考题,深入探讨模块化设计的核心概念——连接性(connascence),分析静态与动态连接性的区别、不同连接性形式的强弱程度,以及如何在代码库中合理选择连接性类型,帮助理解高内聚低耦合的实现原理和最佳实践。

架构设计
1237