Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:guipy

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:guipy [2022/03/05 12:27] – [Klassen-Modellierer] roehnerde:guipy [2023/03/21 21:50] (aktuell) – [Mac M1/M2] roehner
Zeile 1: Zeile 1:
-GuiPy ist eine Python-IDE für Lehrer und Schüler. Die meisten Python-IDEs unterstützen nur textbasiertes Codieren. GuiPy bietet stattdessen mehrere grafische Tools, die das Lernen und Lehren von Python-Programmierkonzepten unterstützen. Dazu gehören:+=====GuiPy===== 
 + 
 +GuiPy ist eine Python-IDE für die Schule, die auf [[https://en.wikipedia.org/wiki/PyScripter |PyScripter]] 
 +basiert. Die meisten Python-IDEs unterstützen nur textbasiertes Codieren. GuiPy bietet stattdessen mehrere grafische Tools, die das Lernen und Lehren von Python-Programmierkonzepten unterstützen. Dazu gehören:
  
-   * GUI-Designer für Tkinter und TTK 
    * Klassen-Modellierer zum Modellieren von Klassen mit Attributen und Methoden    * Klassen-Modellierer zum Modellieren von Klassen mit Attributen und Methoden
    * UML-Fenster mit Klassen und ihren Beziehungen. Durch Aufrufen des Konstruktors erstellen Sie Objekte. Methoden von Objekten ruften Sie dann interaktiv auf.    * UML-Fenster mit Klassen und ihren Beziehungen. Durch Aufrufen des Konstruktors erstellen Sie Objekte. Methoden von Objekten ruften Sie dann interaktiv auf.
-   * Struktogramm-Editor zum Erstellen von Struktogrammen und Konvertieren in Python-Code.+   * GUI-Designer für Tkinter und TTK 
 +   * Struktogramm-Editor zum Modellieren von Algorithmen und Konvertieren in Python-Code.
    * Sequenzdiagramm-Editor zum Modellieren von Sequenzdiagrammen mit Lebenslinien und Aktivierungen.     * Sequenzdiagramm-Editor zum Modellieren von Sequenzdiagrammen mit Lebenslinien und Aktivierungen. 
  
Zeile 30: Zeile 33:
 Nach dem Testen eines Modells im UML-Fenster kann man es in einem Konsolen- oder GUI-Programm benutzen. Nach dem Testen eines Modells im UML-Fenster kann man es in einem Konsolen- oder GUI-Programm benutzen.
  
-Es ist ziemlich kompliziert eine graphische Benutzungsoberfläche mit Layout-Managern zu gestalten. +Es ist ziemlich kompliziert eine graphische Benutzungsoberfläche mit Layout-Managern zu gestalten. Schülerinnen und Schüler haben damit erhebliche Schwierigkeiten. Viel einfacher ist es mittels Drag&Drop Widgets an die gewünschte Position auf dem Formular zu ziehen. Der in GuiPy verfügbare GUI-Designer benutzt daher keine Layout-Manager sondern absolute Positionierung, womit man ziemlich schnell sein Layout gestalten kann.
-Schülerinnen und Schüler haben damit erhebliche Schwierigkeiten. Viel einfacher ist es mittels Drag&Drop GUI-Komponenten an die gewünschte Position auf dem Formular zu ziehen. Der in GuiPy verfügbare GUI-Designer benutzt daher keine Layout-Manager sondern absolute Positionierung, womit man ziemlich schnell sein Layout gestalten kann, und das ist genau das, was in der Schule gebraucht wird+
  
 {{:de:guidesigner.png}} {{:de:guidesigner.png}}
Zeile 37: Zeile 39:
 Um ein GUI-Programm zu erstellen, klicken Sie auf das Symbol {{:tkinter.png}} der Registerkarte "Programm". Dadurch werden ein Programgerüst in einem Editorfenster und ein GUI-Formular bereitgestellt. Um ein GUI-Programm zu erstellen, klicken Sie auf das Symbol {{:tkinter.png}} der Registerkarte "Programm". Dadurch werden ein Programgerüst in einem Editorfenster und ein GUI-Formular bereitgestellt.
  
-Um eine GUI-Komponente zu platzieren, klicken Sie zuerst auf ihr Symbol auf der Registerkarte Tkinter oder TTK und dann auf das GUI-Formular. Alternativ können Sie eine GUI-Komponente per Drag & Drop von einer Registerkarte auf Ihr GUI-Formular ziehen. Anschließend können Sie die GUI-Komponente positionieren und mit dem Objektinspektor konfigurieren. Der Quellcode wird entsprechend synchronisiert.+Um ein Widget zu platzieren, klicken Sie zuerst auf dessen Symbol auf der Registerkarte Tkinter oder TTK und dann auf das GUI-Formular. Alternativ können Sie ein Widget per Drag & Drop von einer Registerkarte auf Ihr GUI-Formular ziehen. Anschließend können Sie das Widget positionieren und mit dem Objektinspektor konfigurieren. Der Quellcode wird entsprechend synchronisiert.
  
 Mit dem Symbol {{:arrange.png}} eines Quellcode-Editors öffnen Sie das zugehörige GUI-Formular. Mit dem Symbol {{:arrange.png}} eines Quellcode-Editors öffnen Sie das zugehörige GUI-Formular.
  
-Das GUI-Formular verfügt über ein Kontextmenü zum Bearbeiten der Komponenten.+Das GUI-Formular verfügt über ein Kontextmenü zum Bearbeiten der Widgets.
  
 ===== Struktogrammeditor ===== ===== Struktogrammeditor =====
 GuiPy verfügt über einen Struktogrammeditor, mit dem Struktogramme erstellt und bearbeitet werden können. GuiPy verfügt über einen Struktogrammeditor, mit dem Struktogramme erstellt und bearbeitet werden können.
  
-Die Modellierung von Abläufen mit Struktogrammen auf einer programmiersprachlich unabhängigen Ebene spielt im Informatikunterricht eine wichtige Rolle, weil Algorithmen auf einer abstrakten Ebene ohne konkrete programmiersprachliche Details modelliert werden können. Ein Algorithmus kann verstanden werden, ohne dass man ihn selbst in Python programmieren kann. Händisches Zeichnen von Struktogrammen auf Papier bringt keine ansehlichen Ergebnisse, weil Strukturänderungen praktisch nicht möglich sind. Mit dem Struktogrammeditor können Struktogramme einfach, schnell und korrekt erstellt werden. Aus Struktogrammen kann Python-Quellcode generiert werden, der aber dann noch nach bearbeitet werden muss. Dies unterstützt beim Implementieren in Python+Die Modellierung von Abläufen mit Struktogrammen auf einer programmiersprachlich unabhängigen Ebene spielt im Informatikunterricht eine wichtige Rolle, weil Algorithmen auf einer abstrakten Ebene ohne konkrete programmiersprachliche Details modelliert werden können. Ein Algorithmus kann verstanden werden, ohne dass man ihn selbst in Python programmieren kann. Händisches Zeichnen von Struktogrammen auf Papier bringt keine ansehlichen Ergebnisse, weil Strukturänderungen praktisch nicht möglich sind. Mit dem Struktogrammeditor können Struktogramme einfach, schnell und korrekt erstellt werden. 
  
-Der umgekehrte Weg geht auch. Im Editor kann man Quelltext auswählen und daraus ein Struktogramm erzeugen lassen.+Aus Struktogrammen kann Python-Quellcode generiert werden, der aber dann noch nach bearbeitet werden muss. Dies unterstützt beim Implementieren in Python. Der umgekehrte Weg geht auch. Im Editor kann man Quelltext auswählen und daraus ein Struktogramm erzeugen lassen.
  
 {{:de:struktogramm.png}} {{:de:struktogramm.png}}
Zeile 55: Zeile 57:
  
 Das grüne P erzeugt aus dem Struktogramm soweit möglich eine Pythonfunktion. In der Konfiguration können die im Struktogramm verwendeten Texte angepasst werden. Das grüne P erzeugt aus dem Struktogramm soweit möglich eine Pythonfunktion. In der Konfiguration können die im Struktogramm verwendeten Texte angepasst werden.
- 
- 
 ===== Sequenzdiagramm-Editor===== ===== Sequenzdiagramm-Editor=====
  
Zeile 64: Zeile 64:
  
 Sequenzdiagramme werden mit der Dateierweiterung psd gespeichert. Es handelt sich um Textdateien, die auch mit externen Texteditoren bearbeitet werden können. Sequenzdiagramme werden mit der Dateierweiterung psd gespeichert. Es handelt sich um Textdateien, die auch mit externen Texteditoren bearbeitet werden können.
 +
 +=====Betriebssysteme =====
 +
 +==== Windows ====
 +
 +GuiPy wird unter Windows entwickelt.
 +
 +==== Linux ====
 +
 +Der GuiPy funktioniert unter Linux mit der //Wine//-Erweiterung. Hinweise zur Installation finden Sie auf der [[http://appdb.winehq.org/objectManager.php?sClass=version&iId=29838 |WineHQ Seite]]. Unter Wine wird die Schriftart Monospace empfohlen. Manche Schriftarten funktionieren nicht im Editor. 
 +
 +
 +==== Mac ====
 +
 +GuiPy läuft auf dem Mac sowohl mit CrossOver Office (Wine) als auch in einer virtualisierten Windowsumgebung problemlos.
 +
 +Bei einem 64-Bit Mac funktioniert er unter der Virtualisierungssoftware VMWare Fusion einwandfrei. 
 +
 +
 +==== Mac M1/M2 ====
 +Auf einem Mac mit M1 oder M2 Prozessor kann man GuiPy wie folgt einrichten.
 +Zunächst lädt man die kostenlose Software UTM herunter https://mac.getutm.app/ und installiert diese.
 +Zur Installation zieht man im UTM-Fenster das UTM-Icon auf das Applications-Icon.
 +
 +{{:utm.png}}
 +
 +Die bei UTM befindlichen Anleitungen zum Download einer Windows-ISO-Datei sind kompliziert und führen oft nicht zum Ziel. Daher installiert man sich im nächsten Schritt die Testversion von Paralles für Mac https://www.parallels.com/de/products/desktop/. Mit Parallels lädt man dann eine funkionierende Windows-11-ISO-Datei herunter. Die Testversion von Parallels deinstalliert man wieder. Zum Schluss ruft man UTM auf und erzeugt sich eine virtuelle Maschine mit Windows 11. 
 +
 +In Windows 11 wird dann zuerst Python und dann GuiPy installiert. Von https://python.org laden Sie sich eine 64-Bit Version von Python (x64/amd) herunter und installieren diese. Typischerweise wird nach C:\Users\<username>\AppData\Local\Programs\Python\Python3xx installiert. 
 +
 +Aktuell lässt sich die 64-Bit "Personal Version" von GuiPy nicht installieren. Laden Sie sich deshalb die "Spezial Version" herunter und entpacken Sie die Zip-Datei. Starten Sie dann das Programm setup.exe und installieren Sie in den vorgeschlagenen Ordner C:\Program Files\GuiPy\.
 +
 +Nach dem Start von GuiPy kommt ein Hinweis auf eine fehlende Pythonversion. Schließen Sie beide dazugehörende Fenster. Öffnen Sie dann über das Menü Fenster die Konfiguration. Klicken Sie "nicht registrierte Versionen" an und dann auf "Hinzufügen". Wählen Sie den Installationsordner von Python aus:
 +
 +{{:de:installation1.png}}
 +
 +Wählen Sie abschließend die so in GuiPy bereitgestellte Pythinversion aus und aktivieren Sie diese.
 +
 +{{:de:installation2.png}}
 +
de/guipy.1646479677.txt.gz · Zuletzt geändert: 2022/03/05 12:27 von roehner