Diese Frage stellte mir gestern ein Schüler aus der neunten Klasse.
“Die Sprache ist doch total unpraktisch und viel zu natürlich. Mit C++ und Klassendefinitionen könnte ich doch das auch alles machen.”
Aus Sicht des Schülers, der selber in C++ zu Hause programmiert, ein verständlicher Wunsch. Aber wie erkläre ich ihm das? Vielleicht am Besten dadurch, dass er den Vorteil selber erfährt. Wir werden also in naher Zukunft versuchen eine Sportverein-Verwaltung mit Java umzusetzen. Das geht zwar komplett vom eigentlichen Lehrplanbereich SQL und Datenbanken weg, aber den Kernbereich kann ich allemal abdecken. Und alles was sie jetzt schon kennen, macht es ihnen in der 10. Jahrgangsstufe dann leichter. Und vielleicht kann ich dann tatsächlich mal ein richtiges Projekt in der Zehnten angehen.
Vorausgesetzt ich bekomme die Klasse wieder.
Eine spannende Frage hat dein Schüler gestellt. Natürlich ist es schwer, SQL zu beurteilen, wenn man es noch nicht benutzt hat. Er hat bestimmt auch recht mit seiner Aussage, dass man mit C++ die gleichen Dinge machen kann, wie mit SQL. Genauso kann man mit Assembler das gleiche machen wie mit C++ – trotzdem wird er auf die Abstraktionsmechanismen wie Methoden und Klassen nicht verzichten wollen.
Das ist auch der Kampf, den Objekt-Orientierte Datenbanken mit den relationalen Datenbanken ausfechten. Einen eindeutigen Gewinner habe ich bisher auch noch nicht gesehen.
Um genau diese Frage auch für mich einfach mal praktisch zu beantworten, werde ich meinen “Sportverein” mit seinen “Mitgliedern” einfach mal in Java mit Klassen umsetzen.
Vielleicht hilft das ja – dem Schüler und mir.