Hi:
I am Masters student in Software Engineering, and am working on my
(minor) thesis. My chosen topic is the use of analogies in teaching
Object Oriented concepts, and more specifically, the provisioning of
analogies within Eclipse to try to help students grasp OO concepts.
I have not been using Eclipse for very long, but have been using it
while learning Java. My (historical) programming background is
procedural, and in my many attempts at learning Java, it finally
struck me that the obstacle I kept bumping up against was my lack of
understanding of the basic OO concepts. In my quest at grasping
these concepts, I found that the use of analogies was of
considerable benefit. Then I had a closer look at Eclipse. As
Eclipse is primarily aimed at the professional development
community, it provides many tools to assist in code completion,
debugging, refactoring, package building and the rest. And for the
novice programmer, it assists in all of these things, but totally
ignores the "elephant in the room", that the understanding of OO
concepts is central to the understand of OO programming. And there
is nothing (that I have found) in Eclipse that addresses the need to
understand these concepts.
On that basis, my thesis statement is "How effectively
does the
provisioning of analogies within the Eclipse IDE promote the
learning of Object
Oriented programming concepts?".
In reviewing the literature, I came across a paper on Penumbra
(Mueller & Hosking), which then led me to the "Eclipse IDE for
Education". As this appears to fit broadly my area of interest, I
thought I would put a posting here and see if there is any
response. My idea is to develop a plugin that would present
analogies (in text form) that cover many of the basic OO
concepts. I am undecided yet as to how to present these. I am
mindful of the reason for the Penumbra perspective (i.e. to
present a simplified perspective to novice programmers), I do not
want to add to students being overwhelmed by the IDE. I think the
least intrusive mechanism would be to add to / modify the "Help"
system, to make these analogies available as needed. Another
would be to present these in a separate view, but then this would
have to be selected as needed. I can't see a way (at the moment)
to make these context sensitive (based on code in the editor), as
OO concepts are not always obvious from the code (with the
possible exception of the "new" keyword).
As I said, I am relatively new to Eclipse, and have not yet
developed any plug-ins. I would appreciate any feedback that
anyone here might be willing too offer (don't be afraid to tell me
off for a dumb idea.. ).
Many thanks,
Rory
|