If not, please give some hints in what OOP features you're interested
in, because I can't see how use-case, class, instance (objects),
package, sequence,( ... other ) diagram would differ in Python from
Java from an OOP perspective?
because i have a problem that python's oo feature is so great, but
maybe when the project become larger, python's no-declaration cannot
mapping the design to practice?
On Sun, 06 Nov 2005 19:06:49 -0800, pcmanlin wrote:
[color=blue]
> As I know java has many UML tools to design for its OO feature, is
> there any tools or good concept for Python project Modeling?[/color]
Just code the bloody thing!
One of Python's strengths is its rapid design/programming/testing
turnaround. And virtually none of Java's mind-gnashing red tape.
aum wrote:[color=blue]
> On Sun, 06 Nov 2005 19:06:49 -0800, pcmanlin wrote:
>[color=green]
> > As I know java has many UML tools to design for its OO feature, is
> > there any tools or good concept for Python project Modeling?[/color]
>
> Just code the bloody thing!
>
> One of Python's strengths is its rapid design/programming/testing
> turnaround. And virtually none of Java's mind-gnashing red tape.
>[/color]
For a project that involves more than a handful of people, I don't
think this approach would work.
bonono@gmail.co m wrote:[color=blue]
> aum wrote:[color=green]
>>On Sun, 06 Nov 2005 19:06:49 -0800, pcmanlin wrote:[color=darkred]
>>>As I know java has many UML tools to design for its OO feature, is
>>>there any tools or good concept for Python project Modeling?[/color]
>>
>>Just code the bloody thing!
>>
>>One of Python's strengths is its rapid design/programming/testing
>>turnaround. And virtually none of Java's mind-gnashing red tape.[/color]
>
> For a project that involves more than a handful of people, I don't
> think this approach would work.[/color]
If by "this approach" you mean "just code [it]", then you're correct.
That's basically the (old) definition of hacking, and it results in
spaghetti and hairballs as soon as you get beyond one programmer or
twenty lines of code.
If you mix in some decent modern techniques, however, such as automated
testing (e.g. Test-Driven Development) and an agile development
methodology, it certainly does work, and very well. And definitely
still without the "mind-gnashing red tape" of Java, UML and their ilk.
pcmanlin wrote:[color=blue]
> because i have a problem that python's oo feature is so great, but
> maybe when the project become larger, python's no-declaration cannot
> mapping the design to practice?
>
> I am not sure about it.[/color]
As far cartoon-ware ( UML ) is concerned note that it is NOT Pythons
non-declarativeness but it's dynamicity that makes it hard to picture
it's design. Classes in Python are cheap, object structures are even
cheaper. That's why UML hardly provides an adequate representation of
Python programs and Pythonistas usually don't care a lot about it.
Kay Schluehr wrote:[color=blue]
> pcmanlin wrote:[color=green]
> > because i have a problem that python's oo feature is so great, but
> > maybe when the project become larger, python's no-declaration cannot
> > mapping the design to practice?
> >
> > I am not sure about it.[/color][/color]
I don't know if there are any tools that convert UML to Python code,
but that doesn't stop you working with UML diagrams if you choose, and
then hand-coding the classes later. Just remember that one of the major
purposes of using UML for big up-front design is to save you from
having to do a lot of refactoring later, but in Python this is rarely a
difficult task.
"Ben Sizer" <kylotan@gmail. com> writes:
[color=blue]
> I don't know if there are any tools that convert UML to Python code,
> but that doesn't stop you working with UML diagrams if you choose, and[/color]
Umbrello helps starting things using as a base UML diagrams. You'll probably
have to draw your diagrams on it, though...
"pcmanlin" <yulin724@gmail .com> wrote in message
news:1131332809 .044523.169900@ o13g2000cwo.goo glegroups.com.. .[color=blue]
> As I know java has many UML tools to design for its OO feature, is
> there any tools or good concept for Python project Modeling?
>[/color]
Check out EnterpriseArchi tect (http://www.sparxsystems.com.au ). They have
a very good UML tool that has a Python plugin. I'd recommend the
Professional Edition - the code reverse-engineering is like magic.
Not open source or free, though. EA Pro is US$199, Academic license is
US$105. But compare to Rational at $US000's, it is a great value for the
money.
-- Paul McGuire
(not associated wth SparxSystems, just a happy customer)
pcmanlin wrote:[color=blue]
> As I know java has many UML tools to design for its OO feature, is
> there any tools or good concept for Python project Modeling?[/color]
My favourite is whiteboard and digital camera. I don't generate
any code from that though... ;) It's the approach suggested in
Scott Ambler's "Agile Modeling", and I think it's just just the
right approach.
Don't forget a good set of automated tests. We use TextTest, but
ymmv. It fits our type of applications.
On 6 Nov 2005 23:17:09 -0800, Kay Schluehr <kay.schluehr@g mx.net> wrote:[color=blue]
> pcmanlin wrote:[color=green]
>> because i have a problem that python's oo feature is so great, but
>> maybe when the project become larger, python's no-declaration cannot
>> mapping the design to practice?
>>
>> I am not sure about it.[/color]
>
> As far cartoon-ware ( UML ) is concerned note that it is NOT Pythons
> non-declarativeness but it's dynamicity[/color]
Yes; I've sometimes wondered what people do about duck typing in UML class
diagrams. I hope they don't adapt their Python code by needlessly
introducing inheritance!
[color=blue]
> that makes it hard to picture
> it's design. Classes in Python are cheap, object structures are even
> cheaper. That's why UML hardly provides an adequate representation of
> Python programs[/color]
Not the part where you spend weeks drawing pointless, infinitely detailed
class diagrams, anyway. There are less detailed levels of those diagrams,
and there are other diagram types. Most people would find some of them as
useful (or useless) with Python as with other languages.
Ben Sizer <kylotan@gmail. com> wrote:[color=blue]
> I don't know if there are any tools that convert UML to Python code,[/color]
dia2code <http://dia2code.source forge.net>
Floriaa
--
Einen Troll zu füttern ist das gleiche als würde man einen Haufen
Hundescheisse sehen, absichtlich reinsteigen und sich dann beschweren.
(Christian Schneider in <2005-10-25T10-04-37@bofh.my-fqdn.de>)
Comment