Eine integrierte Entwicklungsumgebung für Programmier­anfänger

Slides:



Advertisements
Ähnliche Präsentationen
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Advertisements

Agenda Einführung Haskell QuickCheck Zusammenfassung
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Marcus Haller & René Schulze
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 5. Test-First Prinzip Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
Kapitel 1 – Erste Schritte
C-Einstieg. Agenda 1Vorbereitung 2Aufbau eines Programms 2.1Header 2.2 Methoden 2.3Main 3Datentypen & Variablen 4Operatoren(+, -, *, /) 5Logik 5.1IF 5.2Switch.
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
Lernlandkarte OOP (ObjektOrientiertes Programmieren)
Eine integrierte Entwicklungsumgebung für Programmier­anfänger
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Kanton Bern CMS-Userkonferenz «Mobiloptimierung kantonale Websites» Finanzdirektion.
1 freedroidz – spielend Programmieren lernen. 2 Was ist freedroidz?
Seminar Softwareproduktlinien Domänenspezifische Sprachen Sascha Draffehn von.
Allgemeine Hinweise und Regeln für gute Folien Michael Savorić (Version 1.0)
START TeAMbook Projekt er! TeAMbook by INKOBA ® Entscheidungsunterstützungssystem weiter Teambildung und Potenzialentfaltung TeAMbook Projekt 2016.
Einführung in AspectJ ● Inhalt: 1)Überblick 2)Elemente des crosscuttings in AspectJ 3)„Hello World“ in AspectJ 4)Wie Aspekte in Java verwoben werden 5)Join.
Das Entwurfsmuster Model-View-Controller
Diagramme erstellen mit MS Excel
DaMiT - Data Mining Tutor
Blended Learning-Team
Basiswissen Web-Business
Coaching - Lehrgang.
Wie barrierefrei ist meine Website?
in Zusammenarbeit mit Ute Eberlein,
Grundlagen des Lernens
Forschendes Lernen Forschendes Lernen in der Mathematik
Erste Schritte mit Personio
eExam – Digitale Lernplattform
So gelingt der digitale Wandel in einem Landwirtschaftsbetrieb
Citavi im Prozess der wissenschaftlichen Arbeit
Handlungsfelder Aspekte Prämissen Inhalte Umsetzungsprozesse
Programmierung mit Scratch
Hochleistungsorganisation
Übung: Star Wars - Erbaue eine Galaxie mit Hilfe von Code
Visual Studio 2008 – Tipps und Tricks
IT an Schulen - Ergebnisse einer Befragung von Lehrern in Deutschland - - November
Graphen.
Coden mit Python Was sind deine Erfahrungen mit Programmieren?
Deutsche Sporthochschule Köln
Unterstützungsangebote zum Schreiben
Wie kommt man zu „richtigen“ Entscheidungen?
Was tun nach der Matura?.
Methode Business Process Reengineering
Integrativer Deutschunterricht
Programmiermethodik Übung 7
Ein Sohn fragt den Vater
Methodische Grundlagen des Software-Engineering
Ein kurzer Überblick Thomas Karp
Mögliche Stoffverteilung im Grundkurs
Objects first mit BlueJ und Greenfoot
Jugendsozialarbeit an der Elsbethenschule
DESIGN THINKING.
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
Lernmodul Einführung Nutzen Sie diese Powerpoint-Präsentation beim Selbstlernen oder in Veranstaltungen zur Einführung in das jeweilige Thema. Nutzungsbedingungen:
CompuTreff: Wallisellen
Grundlagen der OO-Programmierung in C#
Das frei verfügbare Kanban-Board
Once Upon A Time In Austria
Lernmodul Einführung Nutzen Sie diese Powerpoint-Präsentation beim Selbstlernen oder in Veranstaltungen zur Einführung in das jeweilige Thema. Nutzungsbedingungen:
Christian Kneil – Austria Presse Agentur (APA)
SOFTWARE- UND WEB-LÖSUNGEN
in Zusammenarbeit mit Ute Eberlein,
Titel der Gründungsidee
Ein Sohn fragt den Vater
Marie – Reinders – Realschule
Implementierung von Anwendungssystemen
Tätigkeit In Anlehnung an:
 Präsentation transkript:

Eine integrierte Entwicklungsumgebung für Programmier­anfänger Markus Dahm

Agenda Problemstellung Bestehende Angebote Didaktisches Konzept 5 Schritte Flow erhalten 5Code als IDE für dieses Konzept Features und Highlights 5Code – LEARNTEC 2017 – Dahm

Situation Zielgruppe: Programmieranfänger im ersten Hochschulsemester oder in der Oberstufe Lernziele: Was ist „richtiges“ Programmieren? Wie komme ich von einem gegebenen Problem zu einer Lösung in Code? 5Code – LEARNTEC 2017 – Dahm

Typisches Problem „Ich weiß zwar, wie ich eine while-Schleife programmiere, ich habe aber keine Ahnung, wann ich das tun soll“ 5Code – LEARNTEC 2017 – Dahm

Problem: Programmieren == Coden ? Presse Filme Popkultur -> Vom Hirn in die Tastatur programmieren -> Keine professionelle Vorgehensweise -> Schlechtes Vorbild 5Code – LEARNTEC 2017 – Dahm

Phasen des SW-Engineering Analyse Design Implementierung 5Code – LEARNTEC 2017 – Dahm

IDEs für Profis Eclipse Netbeans IntelliJ IDEA … 5Code – LEARNTEC 2017 – Dahm

IDEs für Profis Sehr komplex Längere Einarbeitung nötig Zu viele Funktionen für Anfänger Focus auf der Codierung 5Code – LEARNTEC 2017 – Dahm

IDEs Für Anfänger - Scratch MIT/US Microwelt Basiert auf Squeak, Smalltalk Zusammenbauen von Code-Schnipseln 5Code – LEARNTEC 2017 – Dahm

IDEs für Anfänger - Kara Swisseduc-Verein/CH Microwelt Symbolisch, Java, Javascript, Python, … Automaten definieren 5Code – LEARNTEC 2017 – Dahm

IDEs für Anfänger - Greenfoot Univ. of Kent/UK Microwelt Basiert auf BlueJ OO-Programmieren in Java 5Code – LEARNTEC 2017 – Dahm

IDEs für Anfänger - Gemeinsamkeiten Bunt, attraktiv, grafisch eher für jüngere Anfänger Einfache Funktionen Interaktiv Große Community Unterstützen die Erfahrung der Selbstwirksamkeit Aber: Auf das reine Codieren beschränkt Vorangehende Phasen der Software-Entwicklung werden nicht unterstützt 5Code – LEARNTEC 2017 – Dahm

Probleme bei IDEs (für Profis und Anfänger) Überbetonung des Codierens Vernachlässigung von Analyse und Design In der Darstellung Damit in der Wahrnehmung Funktionsumfang in IDEs zu überwältigend oder zu verspielt Kontext geht verloren Aufgabe, Überlegung, Code Folgen für Anfänger: -> Falsche persönliche Zielsetzung -> mehrere Tools notwendig -> Hohe Kognitive Belastung -> Mühsames Lernen 5Code – LEARNTEC 2017 – Dahm

Ziel: „Richtiges“ Programmieren lernen Programmieren >> Coden -> Alle Phasen durchlaufen – von Anfang an -> Überblick behalten -> Didaktische Konzepte -> Unterstützung durch IDE 5Code – LEARNTEC 2017 – Dahm

Didaktisches Konzept: 5 einfache Schritte Lesen Analyse Design Implementierung Verstehen Überlegen Aufschreiben Codieren 5Code – LEARNTEC 2017 – Dahm

Didaktisches Konzept: FLOW-Programming Problemorientierte Ordnung der Lösung ergänzend zur Klassen-Orientierten Ordnung - alle Notizen - alle Methoden alle Variablen aller Klassen zur Bearbeitung einer (Teil-)Aufgabe Im gleichen Kontext Im gleichen Tab Im FLOW 5Code – LEARNTEC 2017 – Dahm

Didaktische Konzepte -> IDE 5Code Alle 5 Schritte (LVÜAC) unterstützen Nicht nur Codieren (in Java) Kompletter Kontext in 1 Tool Reduzierte Kognitive Belastung Jede (Teil-)Aufgabe im Flow bearbeiten Zusammenhang bleibt erhalten Arbeitsfluss (Flow) bleibt erhalten 5Code – LEARNTEC 2017 – Dahm

Konzept und Funktionalitäten von 5Code Am Fallbeispiel (Praktikumsaufgabe 1. Semester): Umsetzung des Spiels Tetris 5Code – LEARNTEC 2017 – Dahm

5Code-Konzept: Kompletter Kontext Überlegen Lesen Aufschreiben Verstehen Codieren 5Code – LEARNTEC 2017 – Dahm

5Code – Konzept: Flow-Programming Textblock Aufgabe Codeblock Codeblock 5Code – LEARNTEC 2017 – Dahm

Lesen Verstehen Text – Markierung -> Direkte Übertragung in einen eigenen Text-Block im Lösungsbereich Copy&Paste (kaum Arbeit!) als Start für eigenen Lösungstext -> selber ergänzen, modifizieren 5Code – LEARNTEC 2017 – Dahm

Lesen Verstehen Verknüpfungen von Text-Blöcken nutzen -> eingebaute Übungsfragen -> Referenzen zwischen Aufgabe und Lösung -> Referenzen zwischen Lösungs-Blöcken 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Eigene Überlegungen in je einem Text-Block Einfache Formatierung -> Strukturierung -> Übersicht 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren Ziel: Möglichst einfach, mit wenig Aufwand Von der Problembeschreibung -> Zum Lösungskonzept -> Zum gut dokumentierten Code 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren Code-Link Kopiert aus Aufgabentext Steht für eine zu bearbeitende Funktionalität (ToDo) 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren Klick auf den Code-Link -> erzeugt einen neuen Code-Block für die Definition dieser Methode 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren Mit nur - 1 x Markieren - 2 x Clicken Wird aus dem Aufgabentext -> Ein Merker/ToDo-Item erzeugt -> Ein kommentierter Rahmen für die Umsetzung erzeugt 5Code – LEARNTEC 2017 – Dahm

Überlegen Aufschreiben Codieren Überblick behalten über Klassen Methoden Variablen -> Navigation: 5Code – LEARNTEC 2017 – Dahm

Codieren Fehlerbehandlung Anzeige im Terminalfenster Marker in der Zeile Tooltip in der Zeile Roter Titel des Code-Tabs Mit <- und -> durch Fehler laufen 5Code – LEARNTEC 2017 – Dahm

Zusammenfassung FLOW-Programming Lesen Verstehen Überlegen Alle 5 Schritte unterstützen Nicht nur Codieren (in Java) Kompletter Kontext in 1 Tool Reduzierte Kognitive Belastung Jede (Teil-)Aufgabe im Flow bearbeiten Zusammenhang bleibt erhalten Arbeitsfluss (Flow) bleibt erhalten Lesen Verstehen Überlegen Aufschreiben Codieren FLOW-Programming 5Code – LEARNTEC 2017 – Dahm

5Code – Delfi 2015 – Dahm, Barnjak, Heilemann Vielen Dank www.5Code.de Demo-Account verfügbar Markus Dahm 5Code – Delfi 2015 – Dahm, Barnjak, Heilemann