Presentation: Code Organization Guidelines for Large Code Bases
- Packaging and package interdependencies
- Layering and module decomposition
- Evolving a large code base
Watch Code Organization Guidelines for Large Codebases (1hour 28 min)
- The evolution of a large code base is a tricky challenge...in particular if backwards compatibility is an issue and architectural quality remains a goal!Much of the presentation was spent explaining how to minimize dependencies between modules (especially cyclic dependencies) and how Juergen manages Spring's codebase to tight standards of quality. Juergen also demonstrates how he uses JDepend and SonarJ on Spring's codebase, and near the end for fun does a package dependency comparison between Spring and Hibernate.
- Central issue: package interdependencies
- Avoid circular references between packages, at (nearly) any cost!
- Consider the use of tools for ongoing validation of your architecture
- e.g. JDepend, SonarJ
Update: The slides can be downloaded here.
Are the slides available?
Had a quick surf and could not seem to find the slides to download.
Anyone know if they are available anywhere?
Can I download the slides?
Are the slides available for download?
Re: Are the slides available?
Andrea Del Bene
I mean, SpringOne speakers, Interface21 guys in particular, use to do so.
My two cents.
Andrea "Italian Spring lover :-)"
Good summary of this presentation
Slide available now
Andrea Del Bene
Login is required.
Here are the slides
Large Code Bases in the .NET sphere
Control component dependencies to gain clear architecture
Shane Hastie on Distributed Agile Teams, Product Ownership and the Agile Manifesto Translation Program
Shane Hastie Apr 17, 2015