[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Import order question

On Tue, 18 Feb 2014 13:44:47 -0800, Rick Johnson wrote:

> Are you telling me you're willing to search through a single file
> containing 3,734 lines of code (yes, Tkinter) looking for a method named
> "destroy" of a class named "OptionMenu" (of which three other classes
> contain a method of the same exact name!), when all you needed to do was
> open one single module named "tk_optionmenu.py" and do a single search
> for "def destroy"?

How do you know that the module tk_optionmenu.py contains the class 
OptionMenu? Perhaps it contains the function optionmenu. Or the class 

For a mere 4000 lines of code, yes, I'd rather have it all in the one 
file, presuming that they are all related pieces of code. Much, much, 
much easier to search, edit and maintain; avoids circular imports and 
other dependency problems.

If there are parts of that module that stand alone, then arguably they 
ought to be extracted out into a separate module. But other than that, 
4000 lines of code isn't so big that we should be splitting the file 
apart merely for the size.

> But even if this were not an API, breaking large chunks of code up and
> spreading them across individual files is the key to managing code
> bases.

You left out the word "badly".