Einblicke in das Informatikstudium...Prof. Dr. I. M. Saatz WorkshopreihefürSchülerinnenund...

Preview:

Citation preview

© 2016 - Prof. Dr. Inga Marina Saatz

Einblicke in das Informatikstudium

5. Workshop - Meine erste Android-App

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 2

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 3

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 4

Begrüßung

Informationssysteme, Physik

Prof. Dr. Inga Marina SaatzFachhochschule DortmundFachbereich InformatikRaum C.1.48Emil-Figge-Straße 4244227 Dortmund

Tel +49 231 755-6765Fax +49 231 755-6710

Inga.saatz@fh-dortmund.dewww.fh-dortmund.de/de/studi/fb/4/personen/lehr/saatz/index.php

Informationssysteme, Physik

Prof. Dr. Inga Marina SaatzFachhochschule DortmundFachbereich InformatikRaum C.1.48Emil-Figge-Straße 4244227 Dortmund

Tel +49 231 755-6765Fax +49 231 755-6710

Inga.saatz@fh-dortmund.dewww.fh-dortmund.de/de/studi/fb/4/personen/lehr/saatz/index.php

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 5

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 6

18.05.2016 � Folie 6

Informatik-Studium an der FH Dortmund

Daten:

• Insgesamt ca. 3000 Studierende

(= größter Informatik-Fachbereich an FHs in Deutschlands)• davon: ca. 2300 Studierende in den Präsenzstudiengängen

Informatik, Wirtschaftsinformatik, Medizinische Informatik und Software- und Systemtechnik dual

• 40 Professorinnen und Professoren• ca. 60 Mitarbeiterinnen und Mitarbeiter• Zahlreiche Lehrbeauftragte aus der Industrie

Erstsemester: ca. 420 pro JahrAbsolventen: ca. 200 pro Jahr

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 7

Praktische Informatik

Studiengänge der praktischen Informatik• Informatik (INF)

Bachelor / Master- Praktische Informatik (PI)- Technische Informatik (TI)

• Software- und Systemtechnik-Dual Bachelor

Präsenzstudium

1

2

3

4

5

6

7

8

9

10

PI TI

MAINF

BASSTDual

BAINF

Studieninhalte• Programmierung (Java, C#, Skriptsprachen, …)• Rechnerarchitektur und Betriebssysteme• Mathematik für Informatiker• Kommunikations- und Rechnernetze• Datenbanken• Softwarearchitekturen• Web-Anwendungen• Künstliche Intelligenz• Weitere Wahlpflichtfächer

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 8

Software- und Systemtechnik

Firma

Studierende/r

Hochschule

(Fach-) AbiturSonstige HZB

Abschluss einesAusbildungs-/Praktikantenvertrages

Kooperationsvereinbarung

Studierende/r

Unternehmen

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 9

Weitere Workshops der Workshopreihe

Näheres: http://www.fh-dortmund.de/de/fb/4/schueler/workshopreihe.php

Datum Studiengang Workshop

16.5.2016 Praktische Informatik WorkshopHandyprogrammierung

09.06.2016 Alle –inkl. Studienberatung

WorkshopCompilerbau

Geplant Sept. 2016

Praktische Informatik Workshop Computergrafik

Geplant Nov. 2016

Praktische Informatik Workshop: Wie kommt der Zufall in den Computer?

Geplant Dez. 2016

Technische Informatik WorkshopDer blinkende Tannenbaum

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 10

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 12

App steht für Applikation (Anwendungssoftware)

● Es gibt Desktop-, web- und mobile-Apps

● Erlauben eine (intuitive) Interaktion des Benutzers mit dem Betriebssystem

● Apps besitzen Oberflächen (je nach Anforderung)

● Apps werden programmiert

Was ist eine App?

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 13

Was heißt programmieren?

Anwender BetriebssystemProgramm

AnwendungenApps

Programmierung (von griechisch prógramma ‚Vorschrift‘) bezeichnet dieTätigkeit, Computerprogramme zur Lösung eines in der realen Welt gestelltenProblems zu erstellen.

Programmierung (von griechisch prógramma ‚Vorschrift‘) bezeichnet dieTätigkeit, Computerprogramme zur Lösung eines in der realen Welt gestelltenProblems zu erstellen.

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 14

Programmierung

gedankliches Modell

Maschinenebene

Programmiermodell

geringes Ungleichgewicht

der Abstraktionsebenen

Interpreter / Compiler

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 16

Programmierung in Java

Java Virtual Machine

http://www.java.com/de/download/

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 17

Grafische Programmierung – Beispiel

Programmiermodell

Wenn der Button „Button_Hallo“ gedrückt wird, sage „Hallo“.

Programmiermodell aus Bausteinen zusammensetzen:

Konfiguration des Bausteins

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 19

Android SDK vs. App Inventor

App Inventor

generiert Scheme

ByteCode

ByteCode

Kawa

Android SDK

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 20

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 21

Der App Inventor

Google-Account

http://ai2.appinventor.mit.edu/

Designer(GUI)

Blocks Editor(Funktion)

Emulator

Handy

USB

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 22

Design Editor

Alle Komponenten

Unsere GUIs

Verwendte Komponenten

Eigenschaften

ProgrammierumgebungProjektname

Layout der App

Unsere Projekte

Handy/Emulator

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 23

Blocks Editor (Java)

Blockleiste

Unser Programm

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 24

Der App Inventor 2

● Grafische Programmierumgebung für Android von der MIT

● (Mit Ver. 2) komplett im Browser

● AppInventor 2 Software (Optional)→ Emulator, USB + AI2 Tools

● Natürlich auch mit echtem Android Handy (QR Code)

● PC-Login: Login: fb4tm04001

Passwort: fb4tm04001

http://ai2.appinventor.mit.edu/

Login: FH.DO.000XX@gmail.com

Passwort: FH_FB4_XX

(mit führender 0, d.h. XX=01, 02, …)

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 25

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 26

Meine erste App!

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 27

Beispiel - HelloWorld

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 28

Blocks Editor (Java)

Blockleiste

Unser Programm

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 29

Meine erste App!

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 30

Blockleiste

AllgemeineBlöcke

UnsereGUI Komponenten

AllgemeinGUI Komponenten

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 31

Ereignisabfragen

● Interaktionen des Benutzers mit dem Handy bzw. den verschiedenen GUI Komponenten erkennen

● … und darauf reagieren

Button 1 wird lange gedrücktButton 1 wird nur kurz gedrückt

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 34

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 35

Bau dir deine eigene App

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 36

Beschriftung (Label)

Komponenten

Leinwand (Canvas)Ball

Bewegtes Bild (Image Sprite)

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 37

Ausrichtungen von Buttons (Arrangements)

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 38

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 39

Werte (Datetypen)

● Jedes Lebewesen, Ding, Situationen, … kann wie in einem ''Bauplan'' mit Eigenschaften beschrieben werden.

● Füllt man nun diese Eigenschaften (Attribute) mit bestimmten Werten, erhalten wir ein „konkretes Objekt“

● Es gibt die verschiedensten Typen von Werten

z.B. der Bauplan „Mensch“:

Zahl

Text Farbe

Andere Objekte

Alter:

Name: Haarfarbe:

Brillenträger:

Freundin:

Boolean

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 40

Variablen

● Eine Variable ist der Stellvertreter für eine Eigenschaft und im einfachsten Sinne ein Behälter für einen bestimmten Wert.

● Variablen haben einen Wert, einen Typ, einen Namen und können verändert werden

Selbst erstelleVariablen

AutomatischeVariablen

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 41

bsp_Variable

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 42

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 43

Kontrollstrukturen

Kontrollstrukturen steuern den Ablauf eines Computerprogramms. Eine Kontrollstruktur ist entweder eine Verzweigung oder eine Schleife. Meist wird ihre Ausführung über logische Ausdrücke beeinflusst.

Bedingung

Programmablauf

Anweisung 1 Anweisung 2

Ja

NeinBedingung

Programmablauf

Anweisung 1 Anweisung 2

Ja

Nein

Verzweigung Schleife

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 44

Verzweigung

Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.

Bedingung

Programmablauf

Anweisung

Ja

Nein

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 45

Verzweigung

Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.

Alter > 42

Programmablauf

Label.Text = Alt

Ja

Nein

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 46

Verzweigung

Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.

Bedingung

Programmablauf

Anweisung 1 Anweisung 2

Ja

Nein

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 47

Verzweigung

Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.

Alter > 42

Programmablauf

Label.Text = Alt Label.Text = Jung

Ja

Nein

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 48

Verzweigung

Eine Verzweigung legt fest, welcher von zwei (oder mehr) Programmabschnitten, abhängig von einer (oder mehreren) Bedingungen, ausgeführt wird.

Alter > 42

Programmablauf

Label.Text = Alt

Label.Text = Jung

Ja

Nein

Alter > 66

Label.Text = Weise

Nein

Ja

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 49

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 50

Kontrollstrukturen

Kontrollstrukturen steuern den Ablauf eines Computerprogramms. Eine Kontrollstruktur ist entweder eine Verzweigung oder eine Schleife. Meist wird ihre Ausführung über logische Ausdrücke beeinflusst.

Bedingung

Programmablauf

Anweisung 1 Anweisung 2

Ja

NeinBedingung

Programmablauf

Anweisung 1 Anweisung 2

Ja

Nein

Verzweigung Schleife

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 51

Schleife

Die Schleife wiederholt einen Anweisungs-Block so lange, wie eine Schleifenbedingung gültig bleibt

Solangei <= 42

Programmablauf

Label.text = iWeiter imProgramm

Ja

Nein

i++

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 52

52Funktionen verwenden4.6

49Aktionen wiederholen4.5

42Fallunterscheidungen durchführen4.4

38Variablen benutzen4.3

34Die Benutzeroberfläche erstellen4.2

25Die App sagt Hallo!4.1

20Ein erstes App-Inventor Programm4

10Programmierung3

5Vorstellung der Studiengänge2

3Begrüßung1

Agenda

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 53

Funktionen

Durch die Definition von Funktionen können mehrere Befehle in einer bestimme Reihenfolge abgearbeitet werden. Anstelle der einzelnen Befehle wird dann die Funktion aufgerufen.

Jede Komponente im App Inventor besitzt eine oder mehrere solcher Funktionen:

100x 1x

Prof. Dr. I. M. Saatz Workshopreihe für Schülerinnen und SChüler Fachbereich Informatik 54

Herzlichen Dank für Ihre Aufmerksamkeit!

Informationssysteme, Physik

Prof. Dr. Inga Marina SaatzFachhochschule DortmundFachbereich InformatikRaum C.1.48Emil-Figge-Straße 4244227 Dortmund

Tel +49 231 755-6765Fax +49 231 755-6710

Inga.saatz@fh-dortmund.dewww.fh-dortmund.de/de/studi/fb/4/personen/lehr/saatz/index.php

Informationssysteme, Physik

Prof. Dr. Inga Marina SaatzFachhochschule DortmundFachbereich InformatikRaum C.1.48Emil-Figge-Straße 4244227 Dortmund

Tel +49 231 755-6765Fax +49 231 755-6710

Inga.saatz@fh-dortmund.dewww.fh-dortmund.de/de/studi/fb/4/personen/lehr/saatz/index.php

Recommended