讀古今文學網 > 程序員必讀之軟件架構 > 對齊軟件架構和代碼 >

對齊軟件架構和代碼

軟件架構和編碼常常被視為相互排斥的原則,架構和代碼之間相互的映射往往非常少。對軟件架構有效和高效地可視化 有助於在團隊內創造一個良好的共同願景,讓項目進行得更快。從架構到代碼有一個簡單而明確的映射還有進一步的作用,特別是當你開始觀察協同設計和集體代碼所有制。此外,這還有助於把軟件架構堅決地帶回到開發團隊的領域,也就是它最終所屬的地方。但不要忘了,你所用的架構風格需要反映在軟件架構圖中,不管是層、組件、微觀服務或者別的什麼東西。

圍繞組件設計一個軟件系統並不是「唯一正確的方式」,但如果你在構建整體化的軟件系統,並認為它們是由一些更小的組件組成,那就確保你的代碼庫反映出這一點。考慮以組件(而不是層或特性)來組織你的代碼,讓軟件架構和代碼之間的映射更明確。如果解釋你的軟件系統結構很困難,那就改變它。

1 https://www.google.com/search?q=package+by+feature+vs+package+by+layer

2 https://github.com/techtribesje/techtribesje/tree/master/techtribes-core/src/je/techtribes/component/tweet