   [.net] Two Pass Compiling Grief
  So our .NET code-base has grown & grown and now we are feeling the pain of two-pass compiling.I just made a very simple tweak to a regex statement in a common assembly and hit build and "watched in horror" as nearly the the entire solution rebuilt.I'm curious if other people have reached this point and if they took as steps to do something about it.My first thought was we need to separate the interface from the implementation...('round in circles we go.)Once the project becomes large (I think we have about 100 projects now) do most setup their project such that they have "pure interface" assemblies and then implementation assemblies?Or just accept that the world rebuilds?   
Quote:Original post by Shannon BarberSo our .NET code-base has grown & grown and now we are feeling the pain of two-pass compiling.I just made a very simple tweak to a regex statement in a common assembly and hit build and "watched in horror" as nearly the the entire solution rebuilt.This happens in pretty much any build pattern, it's one of the problems that common centralized code tends to have.Quote:I'm curious if other people have reached this point and if they took as steps to do something about it.My first thought was we need to separate the interface from the implementation...('round in circles we go.)This is one possible solution, interface segregation is the appropriate OO thing to do for helping to evolve your dependencies away from each other.Quote:Once the project becomes large (I think we have about 100 projects now) do most setup their project such that they have "pure interface" assemblies and then implementation assemblies?Or just accept that the world rebuilds?Not necessarily, however having pure interface assemblies DOES have many benefits, such as allowing the separation of service, consumers, and brokers.   