Transcript
Page 1: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

Programmierung unter GNU/Linux fur Einsteiger

Edgar ’Fast Edi’ Hoffmann

Community FreieSoftwareOG

[email protected]

7. September 2016

Page 2: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBegriffserklarung

Programmierung (von griechisch programma”Vorschrift“) bezeichnet die Tatigkeit,

Computerprogramme zu erstellen.

Dies umfasst vor Allem die Umsetzung (Implementierung) des Softwareentwurfs in Quellcodesowie – je nach Programmiersprache – das Ubersetzen des Quellcodes in dieMaschinensprache, meist unter Verwendung eines Compilers.

2 / 35

Page 3: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBegriffserklarung

Programmierung (von griechisch programma”Vorschrift“) bezeichnet die Tatigkeit,

Computerprogramme zu erstellen.

Dies umfasst vor Allem die Umsetzung (Implementierung) des Softwareentwurfs in Quellcodesowie – je nach Programmiersprache – das Ubersetzen des Quellcodes in dieMaschinensprache, meist unter Verwendung eines Compilers.

2 / 35

Page 4: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBegriffserklarung

Programmierung (von griechisch programma”Vorschrift“) bezeichnet die Tatigkeit,

Computerprogramme zu erstellen.

Dies umfasst vor Allem die Umsetzung (Implementierung) des Softwareentwurfs in Quellcodesowie – je nach Programmiersprache – das Ubersetzen des Quellcodes in dieMaschinensprache, meist unter Verwendung eines Compilers.

2 / 35

Page 5: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKonzepte der Softwareentwicklung

Programme werden unter Verwendung von Programmiersprachen formuliert (”kodiert“).

In eine solche Sprache”ubersetzt“ der Programmierer die (z. B. im Pflichtenheft)

vorgegebenen Anforderungen und Algorithmen.

Zunehmend wird er dabei durch Codegeneratoren unterstutzt, die zumindest Teile desProgrammcodes auf Basis von Modellen (die im Entwurf entstanden sind) automatischerzeugen.Zu den weiteren Aufgaben von Programmierern zahlen zum Beispiel das Testen(Entwicklertest) seines Programms, das Erstellen der Softwaredokumentation usw.

3 / 35

Page 6: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKonzepte der Softwareentwicklung

Programme werden unter Verwendung von Programmiersprachen formuliert (”kodiert“).

In eine solche Sprache”ubersetzt“ der Programmierer die (z. B. im Pflichtenheft)

vorgegebenen Anforderungen und Algorithmen.

Zunehmend wird er dabei durch Codegeneratoren unterstutzt, die zumindest Teile desProgrammcodes auf Basis von Modellen (die im Entwurf entstanden sind) automatischerzeugen.Zu den weiteren Aufgaben von Programmierern zahlen zum Beispiel das Testen(Entwicklertest) seines Programms, das Erstellen der Softwaredokumentation usw.

3 / 35

Page 7: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKonzepte der Softwareentwicklung

Programme werden unter Verwendung von Programmiersprachen formuliert (”kodiert“).

In eine solche Sprache”ubersetzt“ der Programmierer die (z. B. im Pflichtenheft)

vorgegebenen Anforderungen und Algorithmen.

Zunehmend wird er dabei durch Codegeneratoren unterstutzt, die zumindest Teile desProgrammcodes auf Basis von Modellen (die im Entwurf entstanden sind) automatischerzeugen.

Zu den weiteren Aufgaben von Programmierern zahlen zum Beispiel das Testen(Entwicklertest) seines Programms, das Erstellen der Softwaredokumentation usw.

3 / 35

Page 8: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKonzepte der Softwareentwicklung

Programme werden unter Verwendung von Programmiersprachen formuliert (”kodiert“).

In eine solche Sprache”ubersetzt“ der Programmierer die (z. B. im Pflichtenheft)

vorgegebenen Anforderungen und Algorithmen.

Zunehmend wird er dabei durch Codegeneratoren unterstutzt, die zumindest Teile desProgrammcodes auf Basis von Modellen (die im Entwurf entstanden sind) automatischerzeugen.Zu den weiteren Aufgaben von Programmierern zahlen zum Beispiel das Testen(Entwicklertest) seines Programms, das Erstellen der Softwaredokumentation usw.

3 / 35

Page 9: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 10: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 11: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 12: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 13: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 14: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsmodelle

Wasserfallmodell

Extreme Programming

Scrum

Prototyping

Testgetriebene Softwareentwicklung

4 / 35

Page 15: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungZusatzliche Werkzeuge und Helfer

Struktogramm bzw. Nassi-Shneiderman

PAP

GUI-Prototyping bzw. Mockups

5 / 35

Page 16: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungZusatzliche Werkzeuge und Helfer

Struktogramm bzw. Nassi-Shneiderman

PAP

GUI-Prototyping bzw. Mockups

5 / 35

Page 17: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungZusatzliche Werkzeuge und Helfer

Struktogramm bzw. Nassi-Shneiderman

PAP

GUI-Prototyping bzw. Mockups

5 / 35

Page 18: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungZusatzliche Werkzeuge und Helfer

Struktogramm bzw. Nassi-Shneiderman

PAP

GUI-Prototyping bzw. Mockups

5 / 35

Page 19: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispiel eines Nassi-Shneiderman-Diagramms

6 / 35

Page 20: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispiel eines Nassi-Shneiderman-Diagramms

6 / 35

Page 21: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Fruher machte man’s auf der Konsole

Heute gibt es komfortable IDEs

7 / 35

Page 22: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Fruher machte man’s auf der Konsole

Heute gibt es komfortable IDEs

7 / 35

Page 23: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Fruher machte man’s auf der Konsole

Heute gibt es komfortable IDEs

7 / 35

Page 24: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Fruher machte man’s auf der Konsole

Heute gibt es komfortable IDEs

7 / 35

Page 25: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Fruher machte man’s auf der Konsole

Heute gibt es komfortable IDEs

7 / 35

Page 26: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 27: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 28: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 29: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 30: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 31: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 32: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 33: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

Integrierte Entwicklungsumgebungen verfugen in der Regel uber folgende Komponenten:

Texteditor

Compiler bzw. Interpreter

Linker

Debugger

Quelltextformatierungsfunktion

weitere hilfreiche Komponenten wie Versionsverwaltung, Projektmanagement,UML-Modellierung, ...

8 / 35

Page 34: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

In erster Linie sind integrierte Entwicklungsumgebungen hilfreiche Werkzeuge, die demSoftwareentwickler haufig wiederkehrende Aufgaben abnehmen,

einen schnellen Zugriff auf wichtige Funktionen bieten, mit denen dieArbeits(zwischen)ergebnisse verwaltet und in spatere Bearbeitungsfunktionen direkt uberfuhrtwerden konnen.

Der Entwickler wird dadurch von formalen Arbeiten entlastet und kann sich ganz auf seineeigentliche Aufgabe, die Softwareentwicklung/Programmierung konzentrieren.

9 / 35

Page 35: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

In erster Linie sind integrierte Entwicklungsumgebungen hilfreiche Werkzeuge, die demSoftwareentwickler haufig wiederkehrende Aufgaben abnehmen,

einen schnellen Zugriff auf wichtige Funktionen bieten, mit denen dieArbeits(zwischen)ergebnisse verwaltet und in spatere Bearbeitungsfunktionen direkt uberfuhrtwerden konnen.

Der Entwickler wird dadurch von formalen Arbeiten entlastet und kann sich ganz auf seineeigentliche Aufgabe, die Softwareentwicklung/Programmierung konzentrieren.

9 / 35

Page 36: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

In erster Linie sind integrierte Entwicklungsumgebungen hilfreiche Werkzeuge, die demSoftwareentwickler haufig wiederkehrende Aufgaben abnehmen,

einen schnellen Zugriff auf wichtige Funktionen bieten, mit denen dieArbeits(zwischen)ergebnisse verwaltet und in spatere Bearbeitungsfunktionen direkt uberfuhrtwerden konnen.

Der Entwickler wird dadurch von formalen Arbeiten entlastet und kann sich ganz auf seineeigentliche Aufgabe, die Softwareentwicklung/Programmierung konzentrieren.

9 / 35

Page 37: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEntwicklungsumgebungen (IDEs)

In erster Linie sind integrierte Entwicklungsumgebungen hilfreiche Werkzeuge, die demSoftwareentwickler haufig wiederkehrende Aufgaben abnehmen,

einen schnellen Zugriff auf wichtige Funktionen bieten, mit denen dieArbeits(zwischen)ergebnisse verwaltet und in spatere Bearbeitungsfunktionen direkt uberfuhrtwerden konnen.

Der Entwickler wird dadurch von formalen Arbeiten entlastet und kann sich ganz auf seineeigentliche Aufgabe, die Softwareentwicklung/Programmierung konzentrieren.

9 / 35

Page 38: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 39: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 40: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 41: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 42: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 43: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 44: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungKlassische Programmiersprachen

C, C++, C#

Fortran

Basic

Cobol

Pascal

Assembler

10 / 35

Page 45: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungModerne Programmiersprachen

Java

Mono

Perl, Python, Ruby, PHP

...

11 / 35

Page 46: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungModerne Programmiersprachen

Java

Mono

Perl, Python, Ruby, PHP

...

11 / 35

Page 47: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungModerne Programmiersprachen

Java

Mono

Perl, Python, Ruby, PHP

...

11 / 35

Page 48: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungModerne Programmiersprachen

Java

Mono

Perl, Python, Ruby, PHP

...

11 / 35

Page 49: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungModerne Programmiersprachen

Java

Mono

Perl, Python, Ruby, PHP

...

11 / 35

Page 50: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispielcode

Listing 1: Hallo Welt in C

#i n c l u d e <s t d i o . h>i n t main ( ) {

( void ) p r i n t f ( ” Ha l lo , Welt !\ n” ) ;return 0 ; /∗ Sauber beenden ∗/}

12 / 35

Page 51: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispielcode

Listing 2: Hallo Welt in C

#i n c l u d e <s t d i o . h>i n t main ( ) {

( void ) p r i n t f ( ” Ha l lo , Welt !\ n” ) ;return 0 ; /∗ Sauber beenden ∗/}

12 / 35

Page 52: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispielcode

13 / 35

Page 53: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungBeispielcode

13 / 35

Page 54: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 55: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 56: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreter

ubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 57: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreter

ubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 58: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus.

Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 59: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 60: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompiler

ubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 61: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompiler

ubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 62: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungInterpreter und Kompiler

Bei der Erstellung bzw. beim laufenlassen eines Programmes unterscheidet man zweiMoglichkeiten:

Interpreterubersetzt den Quellcode im Gegensatz zu Assemblern oder Compilern nicht in eine aufdem System direkt ausfuhrbare Datei, sondern liest diesen ein, analysiert ihn und fuhrt ihnaus. Die Analyse des Quellcodes erfolgt also zur Laufzeit des Programmes

Kompilerubersetzt den Quellcode einer bestimmten Programmiersprache in eine Form, die voneinem Computer (direkter) ausgefuhrt werden kann

14 / 35

Page 63: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 64: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 65: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 66: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 67: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 68: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 69: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungFreie Entwicklungsumgebungen

FreeBASIC

Dev-CPP

Gambas

Lazarus (Free Pascal)

Code::Blocks

...

15 / 35

Page 70: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Potaka

Potaka, erste Programmiersprache in bengalischer Schrift.

16 / 35

Page 71: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - PotakaPotaka, erste Programmiersprache in bengalischer Schrift.

16 / 35

Page 72: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - PotakaPotaka, erste Programmiersprache in bengalischer Schrift.

16 / 35

Page 73: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - ChucK

ChucK ist eine Programmiersprache fur die Erzeugung und Verarbeitung von Audiosignalen,wobei ein besonderer Wert auf parallele Ausfuhrung und exakte zeitliche Bezuge gelegt ist.

Die Sprache wird interpretiert, dabei ist es moglich, im laufenden Betrieb Programmteilehinzuzufugen, zu verandern oder zu entfernen.

17 / 35

Page 74: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - ChucK

ChucK ist eine Programmiersprache fur die Erzeugung und Verarbeitung von Audiosignalen,wobei ein besonderer Wert auf parallele Ausfuhrung und exakte zeitliche Bezuge gelegt ist.

Die Sprache wird interpretiert, dabei ist es moglich, im laufenden Betrieb Programmteilehinzuzufugen, zu verandern oder zu entfernen.

17 / 35

Page 75: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - ChucK

ChucK ist eine Programmiersprache fur die Erzeugung und Verarbeitung von Audiosignalen,wobei ein besonderer Wert auf parallele Ausfuhrung und exakte zeitliche Bezuge gelegt ist.

Die Sprache wird interpretiert, dabei ist es moglich, im laufenden Betrieb Programmteilehinzuzufugen, zu verandern oder zu entfernen.

17 / 35

Page 76: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - ChucK

ChucK ist eine Programmiersprache fur die Erzeugung und Verarbeitung von Audiosignalen,wobei ein besonderer Wert auf parallele Ausfuhrung und exakte zeitliche Bezuge gelegt ist.

Die Sprache wird interpretiert, dabei ist es moglich, im laufenden Betrieb Programmteilehinzuzufugen, zu verandern oder zu entfernen.

17 / 35

Page 77: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Brainfuck

Brainfuck ist fur den ernsthaften Einsatz umstandlich und ineffizient, aber gut geeignet, umGrundlagen der Computertechnik zu erlernen..

18 / 35

Page 78: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Brainfuck

Brainfuck ist fur den ernsthaften Einsatz umstandlich und ineffizient, aber gut geeignet, umGrundlagen der Computertechnik zu erlernen..

18 / 35

Page 79: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Brainfuck

Brainfuck ist fur den ernsthaften Einsatz umstandlich und ineffizient, aber gut geeignet, umGrundlagen der Computertechnik zu erlernen..

18 / 35

Page 80: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Lolcode

Lolcode, deren Syntax aus Netzjargon besteht.

19 / 35

Page 81: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Lolcode

Lolcode, deren Syntax aus Netzjargon besteht.

19 / 35

Page 82: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Lolcode

Lolcode, deren Syntax aus Netzjargon besteht.

19 / 35

Page 83: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Honorable Mentions

Cow

Whitespace

20 / 35

Page 84: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Honorable Mentions

Cow

Whitespace

20 / 35

Page 85: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungExoten und Cooles - Honorable Mentions

Cow

Whitespace

20 / 35

Page 86: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

Das Programmier-Portal HackerRank hat die Programmierfahigkeiten von Codern rund umden Globus getestet.

Auf HackerRank sind nach eigenen Angaben 1,5 Millionen Programmierer aus aller Weltregistriert.

21 / 35

Page 87: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

Das Programmier-Portal HackerRank hat die Programmierfahigkeiten von Codern rund umden Globus getestet.

Auf HackerRank sind nach eigenen Angaben 1,5 Millionen Programmierer aus aller Weltregistriert.

21 / 35

Page 88: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

Das Programmier-Portal HackerRank hat die Programmierfahigkeiten von Codern rund umden Globus getestet.

Auf HackerRank sind nach eigenen Angaben 1,5 Millionen Programmierer aus aller Weltregistriert.

21 / 35

Page 89: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

22 / 35

Page 90: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

22 / 35

Page 91: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

23 / 35

Page 92: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

23 / 35

Page 93: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

24 / 35

Page 94: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungWo sitzen die besten Hacker?

24 / 35

Page 95: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungVerstandnisfrage

Why do Java developers wear glasses?

25 / 35

Page 96: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungVerstandnisfrage

Why do Java developers wear glasses?

25 / 35

Page 97: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungVerstandnisfrage

Because they can’t C#

26 / 35

Page 98: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungVerstandnisfrage

Because they can’t C#

26 / 35

Page 99: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungMuahahahaaa

27 / 35

Page 100: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungMuahahahaaa

27 / 35

Page 101: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 102: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 103: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 104: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 105: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 106: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 107: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 108: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine voll ausgestattete Objektsprache und Entwicklungsumgebung, die auf einemBASIC-Interpreter basiert.Die Architektur ist stark durch Java inspiriert, und deshalb besteht Gambas aus:

einem Compiler

einem Interpreter

einem Archivar

einem Scripter

einer Entwicklungsumgebung (IDE), welche selbst mit Gambas geschrieben wurde

und vielen Erweiterungskomponenten

28 / 35

Page 109: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 110: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 111: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 112: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 113: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 114: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Gambas ist eine freie Basic-Implementierung, jedoch kein Klon von MS Visual Basic

Gambas bezieht auch Ideen von Java ein und existiert schon sehr lange

Es konnen grafische Programme entwickelt werden(QT und GTK)

Die eingebaute SDL-Bindung lasst das Schreiben von Multimedia-Applikationen undSpielen zu

Zugriff auf Datenbanken wird mit einer einheitlichen Schnittstelle unterstutzt

Beispielsweise wurden der Webbrowser Areida (Webkit) und einigeHAM-Radio-Anwendungen in Gambas realisiert

Quelle: Pro-Linux.de, 02.01.2012

Page 115: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 116: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 117: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige Fehlerbearbeitung

Datei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 118: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-Operationen

EreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 119: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerung

Unterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 120: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8

Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 121: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungen

die Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 122: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 123: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Die Sprache ist klein und schnell, und kann auch als Skriptsprache eingesetzt werden

Sie enthalt

eine vollstandige FehlerbearbeitungDatei- und Prozess-OperationenEreignissteuerungUnterstutzung fur UTF-8Internationalisierung und Ubersetzungendie Moglichkeit, Funktionen in dynamischen Bibliotheken aufzurufen

Gambas ist vollstandig objektorientiert mit Klassen, offentlichen und privaten Symbolen,Polymorphismus, Vererbung und einigem mehr...

Quelle: Pro-Linux.de, 02.01.2012

Page 124: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Aktuelle Version ist 3.9.0 vom 28.08.16.Sie enthalt unter Anderem folgende neuen Features:

gb.web.form (erlaubt die Erstellung von GUIs fur Webanwendungen)

gb.form.terminal (stellt ein vollstandige Terminal-Emulation zur Verfugung)

gb.net.smtp (Komponente fur PLAIN und CRAM-MD5 authentifizierung)

31 / 35

Page 125: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Aktuelle Version ist 3.9.0 vom 28.08.16.Sie enthalt unter Anderem folgende neuen Features:

gb.web.form (erlaubt die Erstellung von GUIs fur Webanwendungen)

gb.form.terminal (stellt ein vollstandige Terminal-Emulation zur Verfugung)

gb.net.smtp (Komponente fur PLAIN und CRAM-MD5 authentifizierung)

31 / 35

Page 126: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Aktuelle Version ist 3.9.0 vom 28.08.16.Sie enthalt unter Anderem folgende neuen Features:

gb.web.form (erlaubt die Erstellung von GUIs fur Webanwendungen)

gb.form.terminal (stellt ein vollstandige Terminal-Emulation zur Verfugung)

gb.net.smtp (Komponente fur PLAIN und CRAM-MD5 authentifizierung)

31 / 35

Page 127: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Aktuelle Version ist 3.9.0 vom 28.08.16.Sie enthalt unter Anderem folgende neuen Features:

gb.web.form (erlaubt die Erstellung von GUIs fur Webanwendungen)

gb.form.terminal (stellt ein vollstandige Terminal-Emulation zur Verfugung)

gb.net.smtp (Komponente fur PLAIN und CRAM-MD5 authentifizierung)

31 / 35

Page 128: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungEinstieg mit Gambas

Aktuelle Version ist 3.9.0 vom 28.08.16.Sie enthalt unter Anderem folgende neuen Features:

gb.web.form (erlaubt die Erstellung von GUIs fur Webanwendungen)

gb.form.terminal (stellt ein vollstandige Terminal-Emulation zur Verfugung)

gb.net.smtp (Komponente fur PLAIN und CRAM-MD5 authentifizierung)

31 / 35

Page 129: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungHands-On

32 / 35

Page 130: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

ProgrammierungHands-On

32 / 35

Page 131: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

Links zur Prasentation

http://gambas.sourceforge.net/

http://www.gambas-buch.de/dw/doku.php

http://gambas-club.de

http://beginnersguidetogambas.com

http://howtogambas.org

http://gambos.org

33 / 35

Page 132: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

Links zur Prasentation

http://chuck.cs.princeton.edu/

http://www.freepascal.org/

http://developer.android.com

http://www.codeblocks.org

https://de.wikipedia.org/wiki/Liste_von_Integrierten_

Entwicklungsumgebungen#Freie_integrierte_Entwicklungsumgebungen

34 / 35

Page 133: Programmierung unter GNU/Linux für Einsteiger · 2016. 9. 8. · Testgetriebene Softwareentwicklung 4/35. Programmierung Entwicklungsmodelle Wasserfallmodell Extreme Programming

Weitere Informationen bekommen Sie hier:

http://www.FreieSoftwareOG.org

[email protected]

oder kommen Sie doch einfach zu unserem regelmaßigen Treffen,jeden 1. Mittwoch im Monat ab 20:00 Uhr.

(Treffpunkt und Thema laut Webseite)

35 / 35


Recommended