Why do data structures in Java when there are so many cool collection classes?
To give the students enough understanding to sensibly choose between the different data structures and the several provided implementations of each data structure. Becuase some important and widely used data structures are not available in the collection classes. Where is the java.util.Tree interface, for example ?
The point is to learn data structures. The fact that this has been implemented already is irrelevant. Should we stop teaching how data is stored in files because we have java.io? Should we stop teaching encrypting algorithms because we have JCE?
Originally posted by Howard Kushner:
I must be missing the point...
Why do data structures in Java when there are so many cool collection classes? Just to prove that we can? :roll:
Originally posted by Leslie Chaim:
Should we stop teaching assembly language?
Originally posted by Kathy Sierra:
Our job will be to come up with how to make that fun... I'm of course counting on you guys to have good ideas about that
Originally posted by Thomas Paul:
Teaching data structures which is universal across all languages is not the same as learning a specific language. Although I think learning assembly language gives you a much greater understanding of what goes on inside the machine.
In my mind the abstract concept of a tree, and the operations on it, exist at the same semantic level as List, Set and Map. I can easily imagine a Tree interface such as:
Much like List, Set and Map, really.
the Collections framework is useful for general applications but extremely incomplete when you know precisely what you want.