Is there a "Large Scale Python Software Design" ?

GerritM gmuller at worldonline.nl
Tue Oct 19 19:33:03 CEST 2004


"Jonathan Ellis" <jbellis at gmail.com> schreef in bericht
news:1098195361.960550.257070 at z14g2000cwz.googlegroups.com...
<..snip...>
> Almost four years ago I started working at a company with about 500
> kloc of Java code.  Thanks largely to tool support I was able to get in
> and start fixing bugs my first day (this is without significant prior
> Java experience).  A more-experienced co-worker pointed me in the right
> direction, and the IDE did the rest.  ("Find definition," "Find
> references.")  Grep can do much the same thing, but painfully slowly --
> and inaccurately, when you have a bunch of interfaces implementing the
> same method names.  Even after years in the codebase, I still used
> these heavily; the codebase grew to about 800 kloc during the 3 years I
> worked there.  Developers came and went; even if my memory were good
> enough to remember all the code _I_ ever wrote, I'd still have to
> periodically repeat the familiarization process with code written by
> others.
>
The point you make is that good tooling is important. I worked 12 years ago
in a large Objective-C environment. The same static versus dynamic wars were
raging at that time (Objective-C vs C++). I fully agree that good toold make
quite a difference. Most often very simple tools can do wonders. The dynamic
nature of Objective-C made also dynamic tools feasible, with an amazing
small extension. The run-time instrumentation proved at least as powerful,
as the compile time tools. Nowadays the same code is ported to Java, but
unfortunately the same powerful instrumentation is lost.
<...snip>
> -Jonathan

Contrary to your believe I would jump into larger scale Python development
without hesistation. However, I would introduce a few naming conventions to
support the static tool part.

kind regards, Gerrit
<www.extra.research.philips.com/ natlab/sysarch/>

--
Praktijk voor Psychosociale therapie Lia Charité
<www.liacharite.nl>






More information about the Python-list mailing list