Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Begriffe der Programmierung
Mady by Jasmin Engels
2
Inhalt Programmiersprachen Definition / Funktion
Arten / Paradigmen : Imperative Programmierung Gängige Sprachen (mit Zuordnung zum Paradigma) Algorithmus & Syntax Compiler & Interpreter Definition Unterscheidung Vor- und Nachteile Compiler / Interpreter bei JAVA Plattform & Portierung Codes Quellcode / Sourcecode Maschinencode Bytecode Quellen Mady by Jasmin Engels
3
Programmiersprachen Defintion & Funktion:
künstliche Sprache, dient Kommunikation mit Computer Ggü. natürlicher Sprache ist Syntax einer Programmiersprache restriktiver und erlaubt keine Abweichungen. Unterteilung in zwei Gruppen : die Maschinensprache & die höhere Programmiersprache Mady by Jasmin Engels
4
Programmiersprachen Paradigmen:
Ein Paradigma beschreibt das Konzept bzw. Denkschema, das der Sprache zu Grunde liegt. unterschiedliche Prinzipien, mit denen Ausführung von Programmen beschrieben wird. Die wichtigsten sind imperative, objektorientierte, funktionale & logische Programmierung. (Nachfolgend wird nur die Imperative Programmierung betrachtet.) Die Eigenschaften jeder Programmiersprache und die Methoden Programme zu entwickeln, werden durch die zu Grunde liegenden Paradigmen entscheidend geprägt. Quelle: ITWissen.info Programmiersprachen Mady by Jasmin Engels
5
Imperative Programmierung
Prozedurale Programmierung Ziel ist ein bestimmtes Problem zu lösen, indem man die Menge der dazu benötigten Schritte und deren Abfolge bestimmt, um das gewünschte Ergebnis oder den gewünschten Zustand zu erreichen. Eines der Hauptkonzepte ist der Prozeduraufruf. Eine Prozedur, auch als Subroutine, Methode oder Funktion bezeichnet, enthält eine geordnete Liste von auszuführenden Anweisungen. Eine Prozedur kann jederzeit während der Ausführung durch eine andere Prozedur oder für sich selbst aufgerufen werden. Beispiele für typische prozedurale Programmiersprachen sind C und Pascal. Quelle: IT-Infothek Mady by Jasmin Engels
6
Imperative Programmierung
Objektorientierte Programmierung Greift auf Abstraktion (in Form von Klassen und Objekten) zurück, um auf der realen Welt basierende Modelle zu erstellen. verwendet eine Anzahl von Objekten, die kommunizieren, indem sie Nachrichten an entsprechende Funktionen zur Annahme solcher übergeben. Objekte können Nachrichten weiterleiten, Nachrichten empfangen und Daten verarbeiten. Ziel = Flexibilität und Wartbarkeit von Programmen zu erhöhen. Fokus darauf, sich mit dem zu lösenden Problem bezugnehmend auf Elemente der realen Welt zu befassen und das Problem in Bezug auf diese Objekte und ihr Verhalten darzustellen. Ein Objekt ist eine Datenstruktur, die einem realen Objekt sehr ähnlich ist. Objekte enthalten Datenfelder und Methoden, die Attribute und das Verhalten realer Objekte darstellen. Objekte der realen Welt teilen zwei Eigenschaften: alle haben Zustand und Verhalten. Klassen und Objekte Eine Klasse definiert Gesamtheit von Objekten einer bestimmten Art, mit gemeinsamen Eigenschaften, Operationen und Verhalten. eine Klasse ist ein Datentyp und Objekte sind Instanzen dieses Datentyps. Quelle: Denis Reis Mady by Jasmin Engels
7
Programmiersprachen Gängige Sprachen: Javascript (objektorientiert)
Keine Zusatzprogramme benötigt innerhalb eines Browsers gestartet, den der Benutzer nicht sehen kann. Webseiten, Apps, Anwendungen, Spiele Java (objektorientiert) Plattformunabhängig Anwendungen, Apps und Spiele sehr moderne Programmiersprache beinhaltet immer neueste technischen Konzepte aus Softwareentwicklung Eignet sich am Besten für Backendbereich in großen Webanwendungen Mady by Jasmin Engels
8
Algorithmus & Syntax Algorithmen
Ein Algorithmus ist eine eindeutige Handlungsvorschrift, die aus endlich vielen präzise formulierten, wohldefinierten Einzelanweisungen besteht zur Lösung eine Problems oder einer Problemklasse jede Software setzt sich aus einzelnen Algorithmen zusammen Quelle: MindMeister Mady by Jasmin Engels
9
Algorithmus & Syntax Syntax
ist ein Teilgebiet der Grammatik und bezeichnet die Lehre vom Satzbau. Sie legt fest, wie aus einzelnen Komponenten - den Wörtern - sinnvolle Sätze entstehen Beim Programmieren legt Syntax formale Regeln über die zulässigen Sprachelemente einer Programmiersprache fest & inwiefern diese Elemente in einem Programm verwendet werden dürfen. Schnittstelle zwischen Mensch und Computer Computer versteht nur Programme, die sinnvoll formulierte Befehle an ihn senden. Es ist wichtig, beim Programmieren die Syntax der jeweiligen Programmiersprache einzuhalten. Ein Rechner ist (noch) phantasielos: Damit er einen Befehl verstehen und ausführen kann, muss der Code fehlerfrei sein, die Regeln der Syntax also eingehalten werden. Ansonsten funktioniert das Programm nicht. Quelle: CHIP Praxistipps Mady by Jasmin Engels
10
Compiler & Interpreter -Defintion
verarbeitet den Quellcode eines Projekts zur Laufzeit. Geht Zeile für Zeile vor: Eine Anweisung wird eingelesen, analysiert und sofort ausgeführt. Dann geht es mit der nächsten Anweisung weiter, bis schließlich das Ende des Programms erreicht ist; oder bis ein Fehler auftritt – der Interpreter stoppt seine Arbeit, sobald etwas nicht stimmt. Entwickler weiß sofort, an welcher Stelle sich der Fehler befindet, und kann das Problem so schneller beheben. erzeugt keine Datei, die man mehrmals ausführen könnte. Er fertigt keine Übersetzung des Quellcodes in Maschinensprache um, sondern fungiert als eine Zwischenschicht zwischen Programmiersprache und Maschine. analysiert zur Laufzeit jede einzelne Anweisung eines Programms und ruft die entsprechende Routine aus seinen internen Bibliotheken auf, die wiederum die gewünschte Aktion auf dem Prozessor des Zielsystems ausführt. Compiler & Interpreter -Defintion Mady by Jasmin Engels
11
Compiler & Interpreter -Definition
wandelt Quellcode in Maschinensprache um, übersetzt das gesamte Programm von einer Programmiersprache in Maschinencode. Der Code wird vollständig übersetzt, bevor das Programm ausgeführt wird. Häufig noch ein Zwischenschritt, bevor das Programm in Maschinensprache übersetzt wird: Der Quellcode wird zunächst in einen Zwischencode umgewandelt, z.B. Objektcode. Der Zwischencode hat den Vorteil, dass er in der Regel auf verschiedenen Plattformen funktioniert und oft auch von einem Interpreter verwendet werden kann. Aus diesem Zwischenergebnis übersetzt der Compiler dann Maschinencode, der vom jeweiligen Zielsystem verstanden wird. per Linker eine ausführbare Datei generiert. Compiler stößt also mehrere Schritte an, um aus dem vorliegenden Quellcode ein lauffähiges Programm zu erstellen. Benötigt er vergleichsweise mehr Zeit und Ressourcen. Sobald das fertige Programm läuft, ist es jedoch effizienter als interpretierte Software, da alle Anweisungen bereits vollständig in Maschinencode übersetzt wurden. Compiler & Interpreter -Definition Mady by Jasmin Engels
12
Compiler & Interpreter -Unterscheidung
Quelle: RoRo-Seiten:Start Mady by Jasmin Engels
13
Compiler & Interpreter- Vor-&Nachteile
Vorteile Nachteile Interpreter Eine Programmzeile kann sofort getestet werden. Fehler bei der Programmierung werden sofort erkannt und behoben. Bei jeder Programmausführung muss das Programm erneut analysiert werden; daher längere Laufzeit. Es gibt kein Objekt- programm, das Quellprogramm benötigt mehr Speicherplatz. Compiler Programmanalyse muss nicht bei jeder Programmausführung vorgenommen wer- den. Das Objektprogramm benötigt weniger Aus- führungszeit und weniger Speicherplatz. Mehrere Schritte sind erforderlich, um ein Programm auszuführen. Bei jedem Übersetzungsvorgang (z. B. nach einer Fehlerbereinigung) muss das gesamte Programm erneut übersetzt werden. Fehlersuche bei der Programmentwicklung ist aufwändiger. Compiler & Interpreter- Vor-&Nachteile Mady by Jasmin Engels
14
Compiler & Interpreter bei JAVA
Just-in-time-Compiler: die Hybridlösung Es gibt auch Ansätze, die Compiler und Interpreter vereinen und so Schwächen der jeweiligen Systeme ausgleichen. (z.B. verwendet bei JAVA) Der Compreter oder Just-in-time-Compiler übersetzt das Programm erst zur Laufzeit in Maschinencode. Einerseits bietet die Hybridlösung gute Performance kompilierter Programme andererseits ermöglicht sie die komfortable Fehlersuche interpretierter Programme. kommen vor allem beim Erstellen plattformunabhängiger und portabler Software zum Einsatz. Compiler & Interpreter bei JAVA Mady by Jasmin Engels
15
Plattform & Portierung
eine einheitliche Basis, an die Komponenten angeschlossen und Programme aufgesetzt und betrieben werden können. ermöglicht es Softwareentwicklern, Anwendungen zu schreiben, die auf Prozessoren unterschiedlicher Hersteller oder auf unterschiedlichen Betriebssystemen lauffähig sind. stellt dem Programmierer Programmierschnittstellen zur Verfügung, die immer gleich sind. Innerhalb der Grenzen der verwendeten Plattform findet die Anwendung immer die gleichen Schnittstellen vor und ist somit ausführbar. Mögliche Bestandteile einer Plattform sind Rechnerarchitektur, Programmiersprache, Bibliotheken und Laufzeitumgebung. Man unterscheidet zwischen Hardware- und Software-Plattformen Hardware-Plattformen Verwendet einheitliche Maschinensprache Software-Plattform Anwendung noch stärker von der Hardware abstrahiert (d.h., dass Befehle und Daten einer Laufzeitumgebung oder einem Dienst übergeben werden und dort in die entsprechende Maschinensprache übersetzt werden.) Mady by Jasmin Engels
16
Plattform & Portierung
Portierung/Migration Einbindung von älteren Technologien, von Diensten oder Daten in neuere oder in Upgrade- Technologien unter weitgehender Nutzung vorhandener Technologien, Strukturen und Ressourcen. Beispiele: Migration der Rechnertechnik kann beispielhaft durch den Übergang von der mittleren Datentechnik auf die Großrechnertechnik dargestellt werden oder das Ersetzen oder Upgraden eines älteren Servers durch einen neueren. Bei Migration der Netzwerke geht es darum, dass Netzwerke mit höheren Datenraten und besseren Dienstmerkmalen ältere Netzwerke ersetzen Datenmigration = Migration der Daten in eine Cloud, um die Konsolidierung von Websites oder die Migration von Datenbanken. Mady by Jasmin Engels
17
Codes Quellcode / Sourcecode /Quelltext
ist der lesbare Text eines Computerprogrammes oder einer Webseite. wird in einer Programmiersprache verfasst und dann vom Computer mit Compiler in Maschinensprache übersetzt. Je nach verwendeter Programmiersprache sieht der Quellcode eines Programms unterschiedlich aus. Gerade bei größeren Programmen kann der Quelltext aus mehreren Dateien bestehen. Auch eine grafische Darstellung von Programmteilen kann ein Teil des Quellcodes sein und in Maschinensprache übersetzt werden. Selbst bei kleinen Programmen oder Webseiten nimmt ein solcher Code schnell sehr große Umfänge an. Mady by Jasmin Engels
18
Codes Maschinencode Bytecode
ist die elementare Programmiersprache, die von einem Prozessor verstanden wird und von diesem verarbeitet werden kann. Jeder Prozessor hat einen eigenen Maschinencode. In der Hierarchie der Programmiersprachen belegt der Maschinencode die unterste Ebene und wird auch als Programmiersprache der ersten Generation (1G) bezeichnet. Bytecode bezeichnet einen Zwischencode, der bei der Compilierung einer Programmiersprache entsteht. Damit wird der Quelltext eines Programmes nicht direkt in eine maschinenlesbare Form transformiert. maschinenunabhängig und es entsteht eine kompaktere Darstellung vom ursprünglichen Quelltext. endgültige Ausführung des Bytecodes wird dann durch eine von der Rechnerplattform abhängige virtuelle Maschine realisiert. Mady by Jasmin Engels
19
Quellen methoden/Sprache/Programmiersprache/Paradigma in-drei-schritten/ html Mady by Jasmin Engels
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.