Ein einfacher Taschenrechner

Ich habe vor einigen Wochen an einer Schulung zum Thema „Software-Entwicklung für Wissenschaftler“ in meinem Fach teilgenommen. Die Idee kam nicht von mir sondern von Winfried. Er hatte die Ankündigung der Veranstaltung gesehen und meinte, ich sollte mich sofort einschreiben und Programm #1 vorstellen. Seit einiger Zeit ist er der Meinung, ich sollte aktiv Werbung machen und an Workshops teilnehmen. Eine gute Idee, aber wie es bei Winfried häufig der Fall ist, hat er sich bei dieser Schulung nur einige Stichwörter gemerkt und nicht wirklich dafür interessiert, worum es eigentlich ging.

Ich habe mich laut seiner Anweisung angemeldet und angekündigt, dass ich gerne ein Tutorial über Programm #1 anbieten würde. Die Antwort war „gerne, aber es geht vor allem darum, über Software-Entwicklung zu erzählen, nicht um einzelne Programme vorzustellen“. Tja. Dann zu sagen, „ach nee, mache ich doch nicht“ wäre nicht gut angekommen. Eigentlich habe ich Physik studiert. Programmieren war im Studium Nebensache, und immer für bestimmte Projekte benutzt (Monte-Carlo-Simulation eines Spin-Systemes, zum Beispiel). Ich dachte eher, ich habe mehr zu lernen, als ich lehren kann. Aber gut. Ich sollte über etwas erzählen, das ich gar nicht wusste, bevor ich mit meinem Projekt angefangen habe. Die Auswahl war groß, da ich Python erst kennen gelernt habe, als ich die Stelle angenommen habe.

Ich habe mich für den Entwurf von graphischen Nutzeroberflächen mit Python und Qt4 entschieden, am Beispiel von Programm #1. So etwas habe ich noch nie vorgetragen. Es hat mir viel Stress vorbereitet, und viele Stunden zu Hause gekostet, um Videos auf YouTube darüber zu sehen und selber endlich mal zu begreifen, wie PyQt4 funktioniert. Ich habe bis jetzt im Programm immer Änderungen gemacht, und da mein Vorgänger die ganze Arbeit mit der Oberfläche geleistet hatte, habe ich nicht viel Gelegenheit gehabt, mich mit dem Thema auseinander zu setzen (und es gibt ja Qt Designer). Ich habe dann ein sehr einfaches Tutorial vorbereitet, vom leeren Fenster bis zur Verlinkung von Signalen und Aktionen. Ich dachte schon, es wäre zu trivial für die anderen Teilnehmer. Eigentlich ist es zu einem der meist gefragten Tutorials geworden. Ich war überrascht. Meine Teilnehmer waren begeistert und haben tatsächlich etwas gelernt. Ich auch.

Zum Schluss habe ich als weiterführende Übung das Basteln von einem einfachen Taschenrechner vorgeschlagen, ohne Lösung. Hier ist mein Vorschlag, leider als Bild, weil man Code hier sehr schlecht indentieren kann. Er ist nicht perfekt, vor allem ist das Benutzen von eval() sicherheitstechnisch nicht empfohlen und führt zu ungenauen Ergebnissen, wie es unten benutzt wird, aber es ging darum, zu zeigen, wie man mit Signalen arbeitet.

calculator_code

Advertisements

Ein Gedanke zu “Ein einfacher Taschenrechner

Teile deine Meinung mit!

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s