German master thesis 2007, UAS Technikum Wien (Vienna, Austria)
- Amazon: Python und Zope als Unterrichtswerkzeuge
- free PDF: Python und Zope als Unterrichtswerkzeuge (PDF)
- Thesis project: http://www.stadtgespräche.com/
- Thesis project github: https://github.com/return1/stadtgespraeche/
For beginners the learning of a programming language proves to be quite difficult. This is due to the fact that today’s educational system focuses primarily on languages related to industry. Students want to get jobs in the industry. Therefore they demand to be sufficiently trained in these technologies. The industry again wants to satisfy its need. But programming languages are not technologies by themselves, though, they are tools for technologies. However, programming languages for educational purposes must be such tools which help students gain fundamental understanding of a topic without the need for expert knowledge in a programming language itself.
This paper introduces Python as one example for such a tool. It points out that, unlike languages such C, C++ or Java widely used today, Python is highly suitable for beginners. Due to the easy access it is possible to teach relevant concepts of computer science and software development earlier in the learning process. A further substantial advantage is relief of the instructor´s. The language is compactly and simply held without hinderung the developer. Python is a generally a well respected language and finds use in the industry.
For advanced concepts of software development, teaching can be directed to more complex languages, whereby the students strongly profit from their experience with Python. If knowledge of other languages is not required, it is also possible to stay with Python, which performs well in this situation.
Thus this paper shows how the component-framework Zope could be of use in this field. The following topics, such as component orientation, reuse, databases, experiencing a software development process and tests- and documenting of software are discussed. Also Zope, which is based on Python, has the advantage of easy access, thus creating the possibility of fast successes in learning. This paper shows how the complete need of a software developer is covered by teaching with Python.
Für Anfänger ist das Erlernen einer Programmiersprache schwierig. Das liegt daran, dass im heutigen Unterricht bevorzugt mit Sprachen aus der Industrie gelehrt wird. Studenten wollen in der Industrie Jobs bekommen, und legen deshalb Wert darauf, dass gefragte Technologien Bestandteil ihrer Ausbildung sind. Die Industrie wiederum will ihren Bedarf befriedigen. Dabei wird übersehen, dass Programmiersprachen keine Technologien selbst, sondern Werkzeuge für Technologien sind. Im Unterricht muss eine Programmiersprache ein Werkzeug sein, mit dessen Hilfe es möglich ist, die fundamentalen Ideen eines Unterrichtsgegenstandes zu vermitteln, ohne in einen Unterricht über die Programmiersprache selbst abzudriften.
Die vorliegende Arbeit stellt Python als ein solches Werkzeug vor. Sie zeigt auf, dass Python, im Gegensatz zu heute häufig im Unterricht zum Einsatz kommenden Sprachen (wie C, C++ oder Java), gut für Anfänger geeignet ist. Aufgrund des einfachen Zugangs können mit Python viel früher relevante Konzepte der Informatik und Softwareentwicklung diskutiert werden. Ein weiterer wesentlicher Vorteil ist, dass auch die Arbeit der Unterrichtenden erleichtert wird. Die Sprache ist kompakt und simpel gehalten und versucht sich dem Entwickler nicht in den Weg zu stellen. Gleichzeitig ist sie eine allgemein anerkannte Sprache und findet Verwendung in der Industrie.
Für fortgeschrittene Konzepte der Softwareentwicklung kann auf komplexere Sprachen umgestiegen werden, wobei die Studenten dabei von ihren Erfahrungen mit Python stark profitieren. Der Unterricht kann aber durchaus weiter auf Python aufbauen. So zeigt diese Arbeit, wie das Komponentenframework Zope hierbei Verwendung finden könnte. Dabei werden Themen wie Komponentenorientierung, Reuse, Datenbanken, das Erleben eines Softwareentwicklungsprozesses und Testen und Dokumentieren von Software erläutert. Auch Zope, das auf Python basiert, hat den Vorteil, dass im Vergleich zu anderen Applikationsframeworks ein einfacherer Zugang schnelle Lernerfolge ermöglicht.
Vorliegende Arbeit zeigt, wie mit Python der komplette Bedarf eines auszubildenden Softwareentwicklers abgedeckt wird. Durch die Schnelllebigkeit der Technik wird es immer wichtiger, die grundlegenden Konzepte einer Wissenschaft zu beherrschen, anstatt das Erlernen eines Werkzeugs, das in der Industrie aktuell ist.
reuse, but cite correctly!
This work is licensed under a Creative Commons Attribution 3.0 Austria License.