|[17 earlier articles]|
|Re: Java compiler courses DrDiettrich1@aol.com (Hans-Peter Diettrich) (2007-04-29)|
|Re: Java compiler courses firstname.lastname@example.org (glen herrmannsfeldt) (2007-04-29)|
|Re: Java compiler courses email@example.com (Marco van de Voort) (2007-05-10)|
|Re: Java compiler courses firstname.lastname@example.org (2007-05-11)|
|Re: Java compiler courses email@example.com (Chris Dollin) (2007-05-11)|
|Re: Java compiler courses firstname.lastname@example.org (glen herrmannsfeldt) (2007-05-11)|
|Re: Java compiler courses email@example.com (Eric) (2007-05-15)|
|Date:||15 May 2007 06:06:05 -0700|
|References:||07-04-07407-04-118 07-05-037 07-05-041|
|Posted-Date:||16 May 2007 03:04:19 EDT|
On May 11, 4:01 am, Chris Dollin <chris.dol...@hp.com> wrote:
> > We had them doing walking pointer trees in 5 weeks, while in the
> > paralel Java class they were still struggling with inheritance, and
> > explaining what was needed to make a minimal program.
> Then IMAO someone misfabricated the Java course.
I agree with that, but it can be difficult to design a good Java
course until you've had a lot of experience teaching it. I use memory
diagrams heaviliy to explain inheritance and virtual methods, and
garbage collection. I use a white board because I often get questions
and I change my diagrams in order to answer questions. But the single
most important thing I do is to engage students in discussions almost
every day, and I assign somewhat difficult homework. Instead of giving
them 10 or 20 questions I often give them less than 5 questions, but
they are questions that make them think. And I go over the homework in
class to make sure they "get it". Their grades on the homework tend
towards the low side of the scale (60 as opposed to 80), but I throw
away their lowest scores and I don't weight their homework heavily.
Their midterm and final grades tend to be high because they are
definitely ready by then.
A well-taught C course has some of the same problems. To teach C you
need a lot of memory diagrams to explain pointers and malloc, etc.
Structs that go on the heap are somewhat similar to class instances.
> I can't decide whether I'd start people off with an IDE or stick with
> the command-line. Pros and cons, cons and pros ...
I typically use a very lean IDE that is not much more than a syntax
highlighter and a compile button. I like full-featured IDEs, of
course, but I don't have enough time to teach them. I have to select
my agenda items carefully to give them a good working knowledge of the
language and the platform in only one class. I haven't taught an
advanced class yet, but if I do, I'll teach Eclipse and I'll drill
down more heavily on the Virtual Machine and the low-level platform
Return to the
Search the comp.compilers archives again.