Programmiersprachen und Programmierkonzepte



Ähnliche Dokumente
Programmieren was ist das genau?

Algorithmen und Programmieren II Einführung in Python

Allgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include <stdio.h>

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Grundbegriffe der Informatik

Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler. Joliot-Curie-Gymnasium GR 2010 Nico Steinbach

Lehrstuhl Informatik VI Grundzüge der Informatik * WS 2008/2009 Prof. Dr. Joachim Biskup

1 Mathematische Grundlagen

Diese Anleitung enthält Anweisungen, die nur durch erfahrene Anwender durchgeführt werden sollten!

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Xesar. Die vielfältige Sicherheitslösung

Grundlagen der Informatik

Präsentation Von Laura Baake und Janina Schwemer

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Zeichen bei Zahlen entschlüsseln

Formale Sprachen und Grammatiken

Mathematik. UND/ODER Verknüpfung. Ungleichungen. Betrag. Intervall. Umgebung

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Nicht über uns ohne uns

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Modellierung und Programmierung 1

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Kulturelle Evolution 12

Informationsblatt Induktionsbeweis

Objektorientierte Programmierung

Dokumentation für das Spiel Pong

C++11 C++14 Kapitel Doppelseite Übungen Musterlösungen Anhang

Anleitung über den Umgang mit Schildern

Einführung in PHP. (mit Aufgaben)

Europäischer Fonds für Regionale Entwicklung: EFRE im Bundes-Land Brandenburg vom Jahr 2014 bis für das Jahr 2020 in Leichter Sprache

Computermuseum Hoyerswerda. Zu Besuch bei der Ausstellung zur Geschichte der Rechentechnik

Wir machen neue Politik für Baden-Württemberg

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Die Post hat eine Umfrage gemacht

Java Kurs für Anfänger Einheit 5 Methoden

Robot Karol für Delphi

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Einführung in. Logische Schaltungen

Informatik 1 Tutorial

Kapitel 3. Codierung von Text (ASCII-Code, Unicode)

Binärdarstellung von Fliesskommazahlen

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Behindert ist, wer behindert wird

Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung

Regeln für das Qualitäts-Siegel

Leichte-Sprache-Bilder

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft.

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Forschen - Schreiben - Lehren

Objektorientiertes Programmieren mit Suse Linux

4D Server v12 64-bit Version BETA VERSION

Die Invaliden-Versicherung ändert sich

Kann ein Computer denken?

Ideation-Day Fit für Innovation

Das Schulsystem in Deutschland (Band 2, Lektion 1)

Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Landes-Arbeits-Gemeinschaft Gemeinsam Leben Gemeinsam Lernen Rheinland-Pfalz e.v.

Erfahrungen mit Hartz IV- Empfängern

Arbeitsblätter. Sinnvolle Finanzberichte. Seite 19

Woche 1: Was ist NLP? Die Geschichte des NLP.

Grundlagen der Theoretischen Informatik, SoSe 2008

Zufallsgrößen und Wahrscheinlichkeitsverteilungen

Erste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer Andreas Zeller, Universität des Saarlandes

Die Bundes-Zentrale für politische Bildung stellt sich vor

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Kompetenzen und Aufgabenbeispiele Englisch Schreiben

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus:

DER SELBST-CHECK FÜR IHR PROJEKT

Online-Publishing mit HTML und CSS für Einsteigerinnen

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Impulse Inklusion Selbst-bestimmtes Wohnen und Nachbarschaft

Einführung in die Informatik II

Übungsaufgaben zur Programmiersprache Python

Bürgerhilfe Florstadt

Im Original veränderbare Word-Dateien

Programmieren für Ingenieure Sommer Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.

Das System sollte den Benutzer immer auf dem Laufenden halten, indem es angemessenes Feedback in einer angemessenen Zeit liefert.

Kompetenzen und Aufgabenbeispiele Deutsch Erstes Schreiben

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Der monatliche Tarif für ein Handy wurde als lineare Funktion der Form f(x) = k x + d modelliert (siehe Grafik).

Lehrer: Einschreibemethoden

- Eine deutsche Tastatur für alles außer ProTools - Eine englische Tastatur für ProTools - Eine Umschaltmöglichkeit für die Eingabesprache

Webseiten sind keine Gemälde. Webstandards für ein besseres Web. Webstandards für ein besseres Web

Deutliche Mehrheit der Bevölkerung für aktive Sterbehilfe

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung

Informatik 12 Datenbanken SQL-Einführung

Internet Explorer Version 6

Programmierkurs Java

1. Weniger Steuern zahlen

impact ordering Info Produktkonfigurator

Professionelle Seminare im Bereich MS-Office

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

JetSym. Programmierung in Hochsprache ST nach IEC We automate your success.

Info zum Zusammenhang von Auflösung und Genauigkeit

2D22 Prinzipien der Softwareentwicklung. Prinzipien der Softwareentwicklung S. Strahringer 1

Transkript:

Programmiersprachen und Programmierkonzepte

Inhalt Programmiersprachen- Entwicklung Programmiersprachen und Programmierparadigmen

Die Geschichte der Programmiersprachen Anfänge vor 200 Jahren Programmierbare Webmaschinen von Jacquard (Lochkartensteuerung) Mit den Entwicklungen von Konrad Zuse und John von Neumann zur Computerarchitektur fiel Startschuss zum Aufstieg der Informatik und Programmierung (1940er Jahre)

Zwischen Null und Eins - 1. Generation CPU (Hauptprozessor) arbeitet nur mit den Zuständen Strom an und Strom aus, jede Anweisung muss mit Symbolen 0 und 1 als Synonym auskommen Daten und Befehle wurden binär eingegeben (lange Reihen von Nullen und Einsen) Maschinensprache Nachteil: Komplexe Aufgaben zu notieren nahe zu unmöglich Erste Programmierer mussten Code schreiben, die lang und unübersichtlich waren Für mächtige Programme untaugliches Prinzip zweite Stufe der Programmiersprachenentwicklung wurde schnell erklommen

Assemblersprachen 2. Generation assemble montiernen, zusammensetzen wurde in mehreren Varianten entwickelt Dialekte hatten zwei Dinge gemeinsam: 1. Stark an der Maschine orientiert 2. Befehle als Buchstabenkombination nach Regeln der Mnemotechnik Verknüpfung von neuen mit vorhandenen Programmteilen exe-datei bis in 90er Jahre des 20. Jahrhunderts wurden Betriebssysteme, Computerspiele etc. in Assemblersprache geschrieben (heute teilweise auch noch) Vorteil: Assembler ist maschinennah, Übersetzung wesentlich weniger Zeit als in Hochsprachen, manche Aufgaben auch präziser und schneller zu formulieren Nachteil: Zu langer Code, geschränkte Einsatzmöglichkeit

Die Hochsprachen 3. Generation komplexere Aufgaben und maschinenarchitekturen erforderten neue Programmiersprachen, mussten folgenden Ansprüchen genügen: 1. Maschinenunabhängige Programmierung Einsatz der Programme auf unterschiedliche Rechnern 2. Projekte und Programme besser strukturiert, auch um Lesbarkeit zu verbessern 3.Programmierer sollte von Rechnerspezialkenntnissen entlastet werden, um sich auf die Aufgabenstellung für die Programmierung und deren Lösung zu konzentrieren erste Hochsprache FORTRAN für technisch-wissentschaftliche Anwendungen, entwickelt 1954 von John Bacus es folgten LISP ( 1959 von John Mc Carthy) und COBOL (1959 von Grace Hopper) großer Schritt war die Entwicklung von ALGOL, etliche Sprachen basieren darauf wie Pascal, Basic oder C

Die 4. Generation Fourth Generation Language (4GL) vereint Programmiersprachen und Programmierumgebungen, die unterschiedliche Zwecke verfolgen auch Benutzer mit wenig Ahnung sollen Programme schreiben können

Die wichtigsten Programmiersprachen unserer Zeit C (C++ und C#) häufigste eingesetzte Programmiersprache Betriebssysteme wie Windows, Linux oder Mac OS X überwiegend in C verfasst Erfinder: Dennis Ritchie (Oktober 2011 verstorben) Entwicklung: 1969 bis 1973 Java Erfinder: Computerhersteller Sun Microsystems Entwicklung: 1991 bis 1995 zweithäufigste Programmiersprache Vor allem im Internet, aber auch bei Spielen etc. eingesetzt Weitere wichtige Programmiersprachen sind PHP, JavaScript und Python

Programmiersprachen Definition Sind aus Wörtern oder Wortteilen meist aus dem Englischen und Trennzeichen zusammengesetzt Von Sprache zu Sprache gibt es für gleiche Zeichen verschiedene Bedeutungen Kommen mit geringem Wort-und Zeichensatz aus Ihre Zeichen kommen in der Regel aus der Mathematik

Was ist ein Programmierparadigma? Sind die zwei Hauptrichtungen der Programmiersprache Sind dafür da, dass Programmiersprachen mehr oder weniger die Basiskriterien, Lesbarkeit des Codes, Redudanzfreiheit, Modularität und Nebenwirkungsfreiheit eingehalten werden

Imperative Programmierparadigmen Programm mit linearer Folge von Befehlen arbeitet der Rechner in definierter Reihenfolge ab Durch auf Prozessorebene angegebenen Mikrocode verfährt der Rechner mit jeweiligen Daten Befehle manipulieren den Zustand der Speicherbereiche, die Daten zur Verarbeitung vorhalten Zeitliche Abfolge ist durch Reihenfolge im Programm vorgegeben

Imperative Programmierparadigmen Strukturierte Programmierung Prozedurale Programmierung Modulare Programmierung Objektorientierte Programmierung

Objektorientierte Programmierung Daten und Funktionen werden möglichst eng in einem Objekt zusammengefasst und nach außen hin gekapselt Implementierungsdetails werden bewusst verborgen, damit Methoden fremder Objekte diese Daten nicht versehentlich manipulieren können. Objektorientierte Programmierung ist heute das am weitesten verbreitete Prinzip.

Beispiele für Objektorientierte Programmierung Smalltalk - Ruby Ada 95 Java C++ C# Python Perl PHP

Deklarative Programmierparadigmen Eine Idee der jüngeren Programmiergeschichte Im Gegensatz zu den imperativen Programmierparadigmen fragt man in der deklarativen Programmierung nicht nach dem Wie, sondern nach dem Was Der Lösungsweg wird nicht programmiert, sondern man gibt an, welches Ergebnis erzielt werden soll

Vorteile der deklarativen Programmierparadigmen Es gibt keine Nebeneffekte Beweise zur Korrektheit von Ergebnissen sind uneingeschränkt durchführbar Deklarative Programmierung ist nicht von irgendeiner Rechnerarchitektur abhängig

Vergleich zwischen Java und einem Logistikprogramm Logistik Java