Refactoring in a large code base
Marko Rauhamaa
marko at pacujo.net
Fri Jan 22 06:54:05 EST 2016
Chris Angelico <rosuav at gmail.com>:
> On Fri, Jan 22, 2016 at 9:19 PM, Marko Rauhamaa <marko at pacujo.net> wrote:
> So what do you do with a huge program?
Modularize. Treat each module as a separate product with its own release
cycle, documentation, apis, ownership etc.
What is a reasonable size of a module? It is something you would
consider replacing with a new implementation with a moderate effort
(say, in a single quarter).
> CPython is a large and complex program. How do you propose doing it
> "right"?
I don't know CPython specifically to give solid recommendations, but I
would imagine the core language engine should be in a repository
separate from the standard library, and most standard library modules
should be in their respective repositories and have their individual
internal release cycles.
A CPython release would then weave the package together from the
components that were previously (internally) released.
Marko
More information about the Python-list
mailing list