SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Grundkurs Informatik Klasse 11
2 Bearbeiten von Problemen mit PASCAL Delphi  * ist ein Entwicklungssystem zum Erstellen von Windowsprogrammen * hat einen leistungsfähiger Pascal-Compiler,  * hat visuelle Komponenten und  * bietet die Möglichkeit des Erstellens von Datenbankprogrammen Vorteil von Windowsprogrammen  * einheitlichen Bedienung * Menüleiste und ein Hauptfenster * Bedienung mit der Maus * Programme werden in Fenstern ausgeführt, die oft nur einen Teil des gesamten Bildschirmes beanspruchen * über Fenster und Dialoge, die so genannten Benutzerschnitt-stellen, kommuniziert der Anwender mit dem Programm
DOS WINDOWS nur ein Programm gestartet mehrere Programme gleichzeitig laufendes Programm besitzt alleinigen und uneingeschränkten Zugriff auf die Hardware mehrere Programme können gleichzeitig auf die Hardware zugreifen, z.B. auf den Drucker; Zugriff von Windows kontrolliert Hardware wird direkt programmiert Windows stellt Funktionen für Zugriff auf Hardware zur Verfügung Oberfläche ist textorientiert Oberfläche ist grafikorientiert Programm wartet auf Benutzereingaben, indem es in einer Schleife die Maus und die Tastatur abfragt Windowsprogramme bekommen eine Nachricht, wenn für sie eine Maus- oder Tastatureingabe vorliegt Ein- und Ausgabe ist bildschirmorientiert Ein- und Ausgabe ist fensterorientiert
a) Entwicklung und Einteilung der Programmiersprachen
* erste EDV-Anlagen (Ende der 40er Jahre) ließen sich nur maschinennah programmieren.  * Programmcode wurde bitweise in den Speicher geschrieben *  Vorteil:  Programm direkt vom Computer ausgeführt *  Nachteil:  sehr genaue Rechnerkenntnisse erforderlich, da alle Anweisungen in Form von elementaren Befehlen sehr kleinschrittig beschrieben werden müssen Problematische Fehlersuche 1. Generation: Maschinensprachen Beispiel:  11001011 00110101 11100011 10111101
2. Generation: Assemblersprachen * Befehlsvorrat speziell für jeden Rechnertyp zugeschnitten ist * Programm ist auf einem Computer nicht mehr direkt ablauffähig,  sondern muss erst in ein entsprechendes Maschinenprogramm  übersetzt werden  Programm, das dies automatisch durchführt, bezeichnet man als  Assembler * Nachteil: auf eine ganz bestimmte Hardware zugeschnitten sind und nur schwer auf andere Computertypen  übertragbar Programme sehr umfangreich und damit wartungs-  unfreundlich * Assemblersprachen hauptsächlich nur noch da, wo Programme und  Programmsysteme schnell reagieren müssen Beispiel: ADD FELD_2 FELD_3 MOV BX, OFFSET FELD_3
3. Generation: Prozedurale Programmiersprachen * Mehrheit der heute gebräuchlichen Programmiersprachen * unabhängig von einem Computersystem * Übersetzer (Interpreter oder Compiler) muss an System angepasst  sein und entsprechenden Maschinencode erzeugen * Prozedurale Sprachen besitzen speziellen, der menschlichen Sprache  angenäherten Befehlssatz * lehnen sich an die Denkweise des Programmierers an * auch ohne fundamentierte Programmierkenntnisse lassen sich diese  Programme leicht nachvollziehen.  * "prozedural" kennzeichnet den modularen Aufbau der entsprechenden  Programme in Prozeduren oder Funktionen. Beispiel: Write('Fahrstrecke='); Readln(kilometer); Write('Benzin='); Readln(liter); verbrauch := liter/kilometer * 100; Writeln('Sie verbrauchten auf 100 km ',verbrauch); if verbrauch > 7 then writeln "Verbrauch zu hoch!";
4. Generation: Nichtprozedurale Programmiersprachen * es wird nicht mehr festgelegt, wie ein Problem gelöst wird, sondern  der Programmierer beschreibt lediglich, was das Programm leisten soll * diese Angaben werden vom Programmiersystem in ein Programm  umgesetzt * Vorteil: keine umfangreiche Programmierausbildung notwendig; nichtprozedurale Programmiersprachen werden z.B. für  Datenbankabfragen oder Tabellenkalkulationen eingesetzt. In Delphi verwendet man z.B. die visuellen Komponenten, um eine Benutzerschnittstelle zu erstellen Beispiel: select KUNDE from TABLE_1 where ALTER > 18 create ERWACHSENE
5. Generation: Programmiersprachen der künstlichen Intelligenz * Programmierung der künstlichen Intelligenz (KI) dient der  fortgeschrittenen Programmierung. Es wird versucht, die natürliche  Intelligenz des Menschen (z.B. seine Lernfähigkeit) durch  entsprechend konstruierte Computer nachzuvollziehen * Hierbei fließt beispielsweise auch die natürliche Sprache in die  Programmierung ein * KI-Programme werden überwiegend zu Forschungszwecken eingesetzt  und beschreiben Schlussfolgerungen aus Forschungsergebnissen.  * Erfolgreich werden solche Systeme zur Spracherkennung eingesetzt  Beispiel: Berechnung auswerten
b) Algorithmen und Programme  In einem Programm stehen somit nur Anweisungen, die der Computer versteht und umsetzen kann Algorithmus     eine eindeutige Beschreibung eines endlichen Verfahrens zur Lösung einer Vielzahl von Problemen gleicher Art Jedes Problem, dessen Lösung durch einen Algorithmus beschrieben werden kann, ist im Prinzip durch einen Computer lösbar Programm     eine Folge von Anweisungen (Algorithmus), die in einer Programmiersprache   wie z.B. Pascal formuliert sind.
c) Interpreter und Compiler * Prozessor eines Computers kann nur Maschinenbefehle lesen (bestehend aus Binärcode 0/1).  *Programme, die nicht in Maschinensprache geschrieben sind, müssen erst in diese übersetzt werden. * übersetzt einen Programmtext vollständig in Maschinensprache und legt diesen in eigenständiger Programm-Datei ab.  * während Compilierung wird Programmgröße und –geschwindigkeit optimiert * bei Neustart arbeitet der Prozessor direkt die Programmdatei ab * Programme 10 bis 20 mal schneller * Beispiele für Compiler-Sprachen: PASCAL, DELPHI, C++ * übersetzen (interpretieren) die Programme zeilenweise - Programm  deshalb zur Laufzeit änderbar * Befehle werden Zeile für Zeile in Maschinensprache übersetzt und vom Prozessor ausgeführt * bei jedem Neustart des Programms muss dieses auch wieder neu interpretiert werden * Optimierungen können nicht vorgenommen werden, Programme laufen langsamer ab * Beispiele für Interpreter-Sprachen: Q-BASIC, JAVA, LOGO Compiler Interpreter
d) Entwicklungsumgebung
Formular     zentrales Entwicklungsobjekt eines Delphi-Programms    gewünschte Komponenten (wie Schaltflächen, Menüs und Eingabefelder) per Mausklick platziert und angepasst    Erscheinungsbild entspricht dem Aussehen des Windows-Fensters, in dem das fertige Programm später ablaufen wird Komponentenpalette     in verschiedene Register (Standard, Zusätzlich usw.) unterteilt  Auswahl der benötigten Windows-Komponenten Objektinspektors    Darstellungsweise und Verhalten der Objekte (Komponenten) in einem Formular sowie das Aussehen des Formulars festgelegt    Erscheinungsbild wird über die Seite "Eigenschaften", das Verhalten beim Eintritt eines Ereignisses über die Seite "Ereignisse" eingestellt Quelltexteditor     Schreiben des Programmcodes in Programmiersprache Pascal  Delphi generiert für neu eingefügte Komponenten automatisch den Programmcode, der im Editor angezeigt wird.     Programmierer muss "nur noch" die Algorithmen zur Ereignisbehandlung einarbeiten
e) Prinzip der Programmierung   E V A Eingabe Verarbeitung Ausgabe Aktionen (Tastatureingaben, Mausbewegungen) eines Benutzers, wie zum Beispiel: * einfaches oder doppeltes  Klicken auf eine Befehls- schaltfläche,  * Verschieben, Öffnen oder  Schließen eines Fensters mit  der Maus,  * Positionieren des Cursors in  ein Eingabefeld mit der  Tabulatortaste   Interne Programmabläufe, wie zum Beispiel:  * Berechnungen durchführen,  *  Öffnen und Schließen eines Fensters (vom Programm gesteuert),  * Ermitteln von aktueller Uhrzeit und Datum   Reaktionen wie zum Beispiel: * Öffnen eines Fensters * Ausgabe von Werten Informationsfluss

Weitere ähnliche Inhalte

Andere mochten auch

Présentation du GroupExpression - FR 0912
Présentation du GroupExpression - FR 0912Présentation du GroupExpression - FR 0912
Présentation du GroupExpression - FR 0912GroupExpression
 
The Wealthy Freelancer: Idea Matrix
The Wealthy Freelancer: Idea MatrixThe Wealthy Freelancer: Idea Matrix
The Wealthy Freelancer: Idea MatrixMotionScope Studies
 
Intro To Emotion Design- Pleasurability and Emotional Design- Experience Dyn...
Intro To Emotion Design- Pleasurability and Emotional Design-  Experience Dyn...Intro To Emotion Design- Pleasurability and Emotional Design-  Experience Dyn...
Intro To Emotion Design- Pleasurability and Emotional Design- Experience Dyn...Experience Dynamics
 
Les mardis du marketing socially map
Les mardis du marketing  socially mapLes mardis du marketing  socially map
Les mardis du marketing socially map1min30
 
Móviles Chinos Baratos
Móviles Chinos BaratosMóviles Chinos Baratos
Móviles Chinos BaratosAntonio Camel
 
SSI - SMART for Space4You
SSI - SMART for Space4YouSSI - SMART for Space4You
SSI - SMART for Space4YouLeonardo
 
Affichage digital-interactif
Affichage digital-interactifAffichage digital-interactif
Affichage digital-interactifNavauxMarieke
 
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón Feelcapital
 
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukan
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukanSOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukan
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukanAnnik Qurniawati
 
Performance improvement slides
Performance improvement slidesPerformance improvement slides
Performance improvement slidesbekkerd1
 
La Macroestafa del Sida
La Macroestafa del SidaLa Macroestafa del Sida
La Macroestafa del SidaRebelBangarang
 
Formation la Tribu du Web
Formation la Tribu du WebFormation la Tribu du Web
Formation la Tribu du Webl'Autre Tribu
 
Aygulfois Juin 2011
Aygulfois Juin 2011Aygulfois Juin 2011
Aygulfois Juin 2011saint aygulf
 

Andere mochten auch (18)

Carnet Privilèges Gites64 2012
Carnet Privilèges Gites64 2012Carnet Privilèges Gites64 2012
Carnet Privilèges Gites64 2012
 
Présentation du GroupExpression - FR 0912
Présentation du GroupExpression - FR 0912Présentation du GroupExpression - FR 0912
Présentation du GroupExpression - FR 0912
 
The Wealthy Freelancer: Idea Matrix
The Wealthy Freelancer: Idea MatrixThe Wealthy Freelancer: Idea Matrix
The Wealthy Freelancer: Idea Matrix
 
Intro To Emotion Design- Pleasurability and Emotional Design- Experience Dyn...
Intro To Emotion Design- Pleasurability and Emotional Design-  Experience Dyn...Intro To Emotion Design- Pleasurability and Emotional Design-  Experience Dyn...
Intro To Emotion Design- Pleasurability and Emotional Design- Experience Dyn...
 
Les mardis du marketing socially map
Les mardis du marketing  socially mapLes mardis du marketing  socially map
Les mardis du marketing socially map
 
Comprension de la_lectura1
Comprension de la_lectura1Comprension de la_lectura1
Comprension de la_lectura1
 
Aufbau eines PC
Aufbau eines PCAufbau eines PC
Aufbau eines PC
 
Móviles Chinos Baratos
Móviles Chinos BaratosMóviles Chinos Baratos
Móviles Chinos Baratos
 
SSI - SMART for Space4You
SSI - SMART for Space4YouSSI - SMART for Space4You
SSI - SMART for Space4You
 
Clever Control
Clever ControlClever Control
Clever Control
 
Affichage digital-interactif
Affichage digital-interactifAffichage digital-interactif
Affichage digital-interactif
 
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón
Feelcapital en el Foro de Inversión y Mercados Financieros de Gijón
 
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukan
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukanSOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukan
SOAL Un ipa-smp-mts-2014-kd-dampak-seorang-tumpukan
 
Performance improvement slides
Performance improvement slidesPerformance improvement slides
Performance improvement slides
 
La Macroestafa del Sida
La Macroestafa del SidaLa Macroestafa del Sida
La Macroestafa del Sida
 
RRM
RRMRRM
RRM
 
Formation la Tribu du Web
Formation la Tribu du WebFormation la Tribu du Web
Formation la Tribu du Web
 
Aygulfois Juin 2011
Aygulfois Juin 2011Aygulfois Juin 2011
Aygulfois Juin 2011
 

Ähnlich wie Einfuehrung Delphi

C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for BeginnersUlrich Krause
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & DominoUlrich Krause
 
1.5 codeverzweigungen und unterprogramme
1.5   codeverzweigungen und unterprogramme1.5   codeverzweigungen und unterprogramme
1.5 codeverzweigungen und unterprogrammeMichael Konzett
 
Was ist der ProgrammierTrainer!
Was ist der ProgrammierTrainer!Was ist der ProgrammierTrainer!
Was ist der ProgrammierTrainer!Erhard Dinhobl
 
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...Gregor Biswanger
 
.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht
.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht
.NET Core, .NET Standard & ASP.NET Core - Eine ÜbersichtJürgen Gutsch
 
1.1 einfuhrung in small basic
1.1   einfuhrung in small basic1.1   einfuhrung in small basic
1.1 einfuhrung in small basicMichael Konzett
 
Top 10 Internet Trends 2001
Top 10 Internet Trends 2001Top 10 Internet Trends 2001
Top 10 Internet Trends 2001Jürg Stuker
 
C/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersC/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersUlrich Krause
 
Composer und TYPO3
Composer und TYPO3Composer und TYPO3
Composer und TYPO3Peter Kraume
 
B3 Lotus Expeditor Und Composite Applications
B3 Lotus Expeditor Und Composite ApplicationsB3 Lotus Expeditor Und Composite Applications
B3 Lotus Expeditor Und Composite ApplicationsAndreas Schulte
 
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsChristoph Adler
 
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (GWAVA
 
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Gregor Biswanger
 
Handbuch einführung arduino
Handbuch einführung arduino Handbuch einführung arduino
Handbuch einführung arduino BustedDice
 
Metaprogrammierung und Reflection
Metaprogrammierung und ReflectionMetaprogrammierung und Reflection
Metaprogrammierung und ReflectionStefan Marr
 
Software Entwicklung im Team
Software Entwicklung im TeamSoftware Entwicklung im Team
Software Entwicklung im Teambrandts
 
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5Digicomp Academy AG
 

Ähnlich wie Einfuehrung Delphi (20)

C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for Beginners
 
C API for Lotus Notes & Domino
C API for Lotus Notes & DominoC API for Lotus Notes & Domino
C API for Lotus Notes & Domino
 
1.5 codeverzweigungen und unterprogramme
1.5   codeverzweigungen und unterprogramme1.5   codeverzweigungen und unterprogramme
1.5 codeverzweigungen und unterprogramme
 
Was ist der ProgrammierTrainer!
Was ist der ProgrammierTrainer!Was ist der ProgrammierTrainer!
Was ist der ProgrammierTrainer!
 
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...
Roadshow: Einstieg in die Hybrid-App Entwicklung mit dem Intel XDK und Apache...
 
.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht
.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht
.NET Core, .NET Standard & ASP.NET Core - Eine Übersicht
 
1.1 einfuhrung in small basic
1.1   einfuhrung in small basic1.1   einfuhrung in small basic
1.1 einfuhrung in small basic
 
Top 10 Internet Trends 2001
Top 10 Internet Trends 2001Top 10 Internet Trends 2001
Top 10 Internet Trends 2001
 
C/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersC/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino Developers
 
Web Entwicklung mit PHP - Teil 3 Beta
Web Entwicklung mit PHP - Teil 3 BetaWeb Entwicklung mit PHP - Teil 3 Beta
Web Entwicklung mit PHP - Teil 3 Beta
 
Composer und TYPO3
Composer und TYPO3Composer und TYPO3
Composer und TYPO3
 
B3 Lotus Expeditor Und Composite Applications
B3 Lotus Expeditor Und Composite ApplicationsB3 Lotus Expeditor Und Composite Applications
B3 Lotus Expeditor Und Composite Applications
 
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate RelationshipsICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
ICS UserGroup - 2015 - Eclipse and Notes - Love/Hate Relationships
 
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (
Mobiles Drucken - schnell, einfach und sicher - Novell iPrint 1.1 (
 
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
Intel XDK: Cross-Plattform Entwicklung – Apps Entwickeln für alle Plattformen...
 
Handbuch einführung arduino
Handbuch einführung arduino Handbuch einführung arduino
Handbuch einführung arduino
 
Metaprogrammierung und Reflection
Metaprogrammierung und ReflectionMetaprogrammierung und Reflection
Metaprogrammierung und Reflection
 
Software Entwicklung im Team
Software Entwicklung im TeamSoftware Entwicklung im Team
Software Entwicklung im Team
 
Froscamp2010_padre
Froscamp2010_padreFroscamp2010_padre
Froscamp2010_padre
 
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5
Fachreferat: Visual Studio 2012, Windows 8 und .NET 4.5
 

Mehr von Marcel Schöne

Mehr von Marcel Schöne (20)

Aufgaben ER-Modell
Aufgaben ER-ModellAufgaben ER-Modell
Aufgaben ER-Modell
 
Das schwache geschlecht
Das schwache geschlechtDas schwache geschlecht
Das schwache geschlecht
 
Quizshows
QuizshowsQuizshows
Quizshows
 
Rhetorik in der Politik
Rhetorik in der PolitikRhetorik in der Politik
Rhetorik in der Politik
 
Multikulturelle Gesellschaft
Multikulturelle GesellschaftMultikulturelle Gesellschaft
Multikulturelle Gesellschaft
 
Sigmund Freud Religionskritik
Sigmund Freud   ReligionskritikSigmund Freud   Religionskritik
Sigmund Freud Religionskritik
 
Wasserstoffantrieb
WasserstoffantriebWasserstoffantrieb
Wasserstoffantrieb
 
Olympic Games 2000
Olympic Games 2000Olympic Games 2000
Olympic Games 2000
 
Ireland A-Z
Ireland A-ZIreland A-Z
Ireland A-Z
 
Kölleda
KölledaKölleda
Kölleda
 
Irland industry
Irland industryIrland industry
Irland industry
 
Mini werbung
Mini werbungMini werbung
Mini werbung
 
School shooting erfurt and littleton
School shooting erfurt and littletonSchool shooting erfurt and littleton
School shooting erfurt and littleton
 
Busta Rhymes
Busta RhymesBusta Rhymes
Busta Rhymes
 
Royalbunker
RoyalbunkerRoyalbunker
Royalbunker
 
Evo Star - Zeitung
Evo Star - ZeitungEvo Star - Zeitung
Evo Star - Zeitung
 
Epoche: Das 18. Jahrhundert
Epoche: Das 18. JahrhundertEpoche: Das 18. Jahrhundert
Epoche: Das 18. Jahrhundert
 
Buchvorstellung: Hermann Hesse - Unterm Rad
Buchvorstellung: Hermann Hesse - Unterm RadBuchvorstellung: Hermann Hesse - Unterm Rad
Buchvorstellung: Hermann Hesse - Unterm Rad
 
Buchvorstellung: Im Westen Nichts Neues
Buchvorstellung: Im Westen Nichts NeuesBuchvorstellung: Im Westen Nichts Neues
Buchvorstellung: Im Westen Nichts Neues
 
Kräuterspriale
Kräuterspriale Kräuterspriale
Kräuterspriale
 

Einfuehrung Delphi

  • 2. 2 Bearbeiten von Problemen mit PASCAL Delphi * ist ein Entwicklungssystem zum Erstellen von Windowsprogrammen * hat einen leistungsfähiger Pascal-Compiler, * hat visuelle Komponenten und * bietet die Möglichkeit des Erstellens von Datenbankprogrammen Vorteil von Windowsprogrammen * einheitlichen Bedienung * Menüleiste und ein Hauptfenster * Bedienung mit der Maus * Programme werden in Fenstern ausgeführt, die oft nur einen Teil des gesamten Bildschirmes beanspruchen * über Fenster und Dialoge, die so genannten Benutzerschnitt-stellen, kommuniziert der Anwender mit dem Programm
  • 3. DOS WINDOWS nur ein Programm gestartet mehrere Programme gleichzeitig laufendes Programm besitzt alleinigen und uneingeschränkten Zugriff auf die Hardware mehrere Programme können gleichzeitig auf die Hardware zugreifen, z.B. auf den Drucker; Zugriff von Windows kontrolliert Hardware wird direkt programmiert Windows stellt Funktionen für Zugriff auf Hardware zur Verfügung Oberfläche ist textorientiert Oberfläche ist grafikorientiert Programm wartet auf Benutzereingaben, indem es in einer Schleife die Maus und die Tastatur abfragt Windowsprogramme bekommen eine Nachricht, wenn für sie eine Maus- oder Tastatureingabe vorliegt Ein- und Ausgabe ist bildschirmorientiert Ein- und Ausgabe ist fensterorientiert
  • 4. a) Entwicklung und Einteilung der Programmiersprachen
  • 5. * erste EDV-Anlagen (Ende der 40er Jahre) ließen sich nur maschinennah programmieren. * Programmcode wurde bitweise in den Speicher geschrieben * Vorteil: Programm direkt vom Computer ausgeführt * Nachteil: sehr genaue Rechnerkenntnisse erforderlich, da alle Anweisungen in Form von elementaren Befehlen sehr kleinschrittig beschrieben werden müssen Problematische Fehlersuche 1. Generation: Maschinensprachen Beispiel: 11001011 00110101 11100011 10111101
  • 6. 2. Generation: Assemblersprachen * Befehlsvorrat speziell für jeden Rechnertyp zugeschnitten ist * Programm ist auf einem Computer nicht mehr direkt ablauffähig, sondern muss erst in ein entsprechendes Maschinenprogramm übersetzt werden  Programm, das dies automatisch durchführt, bezeichnet man als Assembler * Nachteil: auf eine ganz bestimmte Hardware zugeschnitten sind und nur schwer auf andere Computertypen übertragbar Programme sehr umfangreich und damit wartungs- unfreundlich * Assemblersprachen hauptsächlich nur noch da, wo Programme und Programmsysteme schnell reagieren müssen Beispiel: ADD FELD_2 FELD_3 MOV BX, OFFSET FELD_3
  • 7. 3. Generation: Prozedurale Programmiersprachen * Mehrheit der heute gebräuchlichen Programmiersprachen * unabhängig von einem Computersystem * Übersetzer (Interpreter oder Compiler) muss an System angepasst sein und entsprechenden Maschinencode erzeugen * Prozedurale Sprachen besitzen speziellen, der menschlichen Sprache angenäherten Befehlssatz * lehnen sich an die Denkweise des Programmierers an * auch ohne fundamentierte Programmierkenntnisse lassen sich diese Programme leicht nachvollziehen. * "prozedural" kennzeichnet den modularen Aufbau der entsprechenden Programme in Prozeduren oder Funktionen. Beispiel: Write('Fahrstrecke='); Readln(kilometer); Write('Benzin='); Readln(liter); verbrauch := liter/kilometer * 100; Writeln('Sie verbrauchten auf 100 km ',verbrauch); if verbrauch > 7 then writeln "Verbrauch zu hoch!";
  • 8. 4. Generation: Nichtprozedurale Programmiersprachen * es wird nicht mehr festgelegt, wie ein Problem gelöst wird, sondern der Programmierer beschreibt lediglich, was das Programm leisten soll * diese Angaben werden vom Programmiersystem in ein Programm umgesetzt * Vorteil: keine umfangreiche Programmierausbildung notwendig; nichtprozedurale Programmiersprachen werden z.B. für Datenbankabfragen oder Tabellenkalkulationen eingesetzt. In Delphi verwendet man z.B. die visuellen Komponenten, um eine Benutzerschnittstelle zu erstellen Beispiel: select KUNDE from TABLE_1 where ALTER > 18 create ERWACHSENE
  • 9. 5. Generation: Programmiersprachen der künstlichen Intelligenz * Programmierung der künstlichen Intelligenz (KI) dient der fortgeschrittenen Programmierung. Es wird versucht, die natürliche Intelligenz des Menschen (z.B. seine Lernfähigkeit) durch entsprechend konstruierte Computer nachzuvollziehen * Hierbei fließt beispielsweise auch die natürliche Sprache in die Programmierung ein * KI-Programme werden überwiegend zu Forschungszwecken eingesetzt und beschreiben Schlussfolgerungen aus Forschungsergebnissen. * Erfolgreich werden solche Systeme zur Spracherkennung eingesetzt Beispiel: Berechnung auswerten
  • 10. b) Algorithmen und Programme In einem Programm stehen somit nur Anweisungen, die der Computer versteht und umsetzen kann Algorithmus  eine eindeutige Beschreibung eines endlichen Verfahrens zur Lösung einer Vielzahl von Problemen gleicher Art Jedes Problem, dessen Lösung durch einen Algorithmus beschrieben werden kann, ist im Prinzip durch einen Computer lösbar Programm  eine Folge von Anweisungen (Algorithmus), die in einer Programmiersprache wie z.B. Pascal formuliert sind.
  • 11. c) Interpreter und Compiler * Prozessor eines Computers kann nur Maschinenbefehle lesen (bestehend aus Binärcode 0/1). *Programme, die nicht in Maschinensprache geschrieben sind, müssen erst in diese übersetzt werden. * übersetzt einen Programmtext vollständig in Maschinensprache und legt diesen in eigenständiger Programm-Datei ab. * während Compilierung wird Programmgröße und –geschwindigkeit optimiert * bei Neustart arbeitet der Prozessor direkt die Programmdatei ab * Programme 10 bis 20 mal schneller * Beispiele für Compiler-Sprachen: PASCAL, DELPHI, C++ * übersetzen (interpretieren) die Programme zeilenweise - Programm deshalb zur Laufzeit änderbar * Befehle werden Zeile für Zeile in Maschinensprache übersetzt und vom Prozessor ausgeführt * bei jedem Neustart des Programms muss dieses auch wieder neu interpretiert werden * Optimierungen können nicht vorgenommen werden, Programme laufen langsamer ab * Beispiele für Interpreter-Sprachen: Q-BASIC, JAVA, LOGO Compiler Interpreter
  • 13. Formular  zentrales Entwicklungsobjekt eines Delphi-Programms  gewünschte Komponenten (wie Schaltflächen, Menüs und Eingabefelder) per Mausklick platziert und angepasst  Erscheinungsbild entspricht dem Aussehen des Windows-Fensters, in dem das fertige Programm später ablaufen wird Komponentenpalette  in verschiedene Register (Standard, Zusätzlich usw.) unterteilt  Auswahl der benötigten Windows-Komponenten Objektinspektors  Darstellungsweise und Verhalten der Objekte (Komponenten) in einem Formular sowie das Aussehen des Formulars festgelegt  Erscheinungsbild wird über die Seite "Eigenschaften", das Verhalten beim Eintritt eines Ereignisses über die Seite "Ereignisse" eingestellt Quelltexteditor  Schreiben des Programmcodes in Programmiersprache Pascal  Delphi generiert für neu eingefügte Komponenten automatisch den Programmcode, der im Editor angezeigt wird.  Programmierer muss "nur noch" die Algorithmen zur Ereignisbehandlung einarbeiten
  • 14. e) Prinzip der Programmierung E V A Eingabe Verarbeitung Ausgabe Aktionen (Tastatureingaben, Mausbewegungen) eines Benutzers, wie zum Beispiel: * einfaches oder doppeltes Klicken auf eine Befehls- schaltfläche, * Verschieben, Öffnen oder Schließen eines Fensters mit der Maus, * Positionieren des Cursors in ein Eingabefeld mit der Tabulatortaste Interne Programmabläufe, wie zum Beispiel: * Berechnungen durchführen, * Öffnen und Schließen eines Fensters (vom Programm gesteuert), * Ermitteln von aktueller Uhrzeit und Datum Reaktionen wie zum Beispiel: * Öffnen eines Fensters * Ausgabe von Werten Informationsfluss