mar 29
Eclipse
The IDE that we're going to look at is called Eclipse;
a language and platform independent IDE that
has oodles of plugins for different languages and
other features.
So your first task is to install it, then the Pydev plugin,
and finally set them both so that they know where your python executable is.
I'll show a demo in class.
Jython
We've talked about writing a GUI app in python.
Well, to do so you need a window library system,
which python doesn't have by default. There are
a number of choices, and in case the real catch
is that that window system also needs to be installed
to run. That makes it hard to distribute the app.
There's also been some interest in Java expressed.
So, I'm thinking we'll kill two birds with one stone,
so to speak: Jython is an implementation of python
on top of the Java virtual machine, which means
that it can use any of Java's libraries - and Java
has lots and lots of windows and buttons and menus.
Plus it's installed mostly everywhere.
I'll talk a bit about what "Python on top of JavaVM"
means, as well as a bit about compiling, linking,
an interpreted languages, to get us all on the same page.
The upshot is that you'll need to install another
version of python, and with it, a *.py file
will compile to *.jar file and can be run with the "java"
command like any other java file.
The downside is that we'll need to learn some of the java
library to use all this; however, we'd need to learn
a window library of some sort to do any sort of GUI programming.
As usual, we'll mostly look at examples and modify them to our purposes,
diving into the docs once we see what's going on.
Putting it all together
This isn't my usual playground, either, so let's just
say that it'll be an exploration for all of us, eh?
I'm thinking that maybe a sliding block 8-puzzle is a reasonable
project, with more sharing of code; perhaps even a single
code repository for the class. Then once the GUI is going
(letting a user manipulate the puzzle manually),
some of us could perhaps look at algorithms to solve the puzzle.
So your tasks are
- Install Eclipse, and start reading its docs.
- Install Jython, and start reading its docs.
- Start reading about Java's AWT (and Jython's pawt) window library.
Links
main sites / install downloads
- http://www.eclipse.org/ - Eclipse IDE
- http://pydev.org/ - Pydev plugin for Eclipse, allowing Python work
- http://jython.org/ - An implementation of the python language in the Java virtual machine platform, allowing the use of java libraries (including windows, buttons, etc) from within Python.
Tutorials and docs