Will Python Be Good For This Type Of Project?
jfdoyon at methane.ca
Fri Sep 30 05:04:24 CEST 2005
> What I'm trying to determine is 1) if it's relatively easy to write a
> program to work as an application AND an applet (depending on how it's
No. There is no such thing as "Python applets", unless the end user's
browser has third-party plug-ins that enable browsers to do so (A Python
equivalent to the Java Plug-In) ... I think those exist anyways :)
Or, if possible you could make your applet include Jython, and write
everything in Python, and have the client's JRE run the whole thing.
Seems like a big detour if you're already proficient in Java to be
honest. Not to mention a big download, and potential security problems?
> 2) If it'll handle the networking to read what amounts to web
> pages full of setting info and write that back in POST statements without
> problems from the user's point of view and easily from the programmer's
> point of view
Not a problem, Python can do all that quite easily. Look here:
> 3) What coding time and difficulty is like in Python
> compared to, most specifically, Java and Perl,
Well, presumably you'd have a learning curve ... Ignoring that coding
time in Python is pretty much always fastest (I used to love Perl ...
until I found Python). One of my big points when promoting Python is
exectly this: less time coding, less time debugging, more time making
good code that works right the first time, and importantly, much easier
to maintain over time.
> 4) Is it easy for me to
> interface Java and Python classes seamlessly,
I've never used it, but Jython supposedly gives you the ability to do
this quite well. It's a Python interpreter written in Java :)
> and 5) (I realize only I can
> answer this for sure, but opinions and experience of others would be a
> help!) Is Python easy enough and fast enough to code in that it'd be worth
> me taking time to learn it and doing the project Python instead of Java?
For this one project, it's hard to say. Overall I would say that
learning a whole language for writing one GUI app might be excessive. I
would suggest you look over Python as thoroughly as you can, and see if
maybe it's a language you would want to use not only for this project,
but others in the future as well.
Being self-taught myself, I expect you will switch to Python :) Only
masochists or hardcore purists that think statically typed languages are
"better" stick to Java. Well or because it's mandated by their
organisations and so on ...
Do note that in this case you would also need a GUI framework ...
wxPython would be my reocmmendation:
(This is another reason the whole "applet" thing might be problematic).
Python does not have a single GUI framework, but many. The Standard
Library support Tcl/Tk, which isn't very nice. wxPython is very nice
API, and well supported. There are bindings to GTK and QT as well.
Hope this helps!
> Any help, thoughts, comments, and such are appreciated!
> Thank you!
More information about the Python-list