Zum Inhalt springen

Programmierung

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 16. Juni 2023 um 17:44 Uhr durch 94.155.134.74 (Diskussion) (the program at runtime). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Programmierung (von altgriechisch πρόγραμμα prógramma „öffentlich und schriftlich bekannt gemachte Nachricht, Befehl“)[1] bezeichnet die Tätigkeit, Computerprogramme zu erstellen. Dies ist ein Teilbereich der Softwareentwicklung.[2]

Computerprogramme werden mit Hilfe einer Programmiersprache formuliert („codiert“). Der Programmierer überführt dabei die z. B. im Pflichtenheft vorgegebenen Anforderungen in eine bestimmte Programmiersprache. Gemäß den Anforderungen gestalten Programmierer das Programm mit seiner Benutzeroberfläche so, dass jede Funktion einzelnen Codefunktionen entspricht, und damit diese funktionieren, werden die einzelnen Teile geschrieben des Programms mit seinen Algorithmen, die von mittlerer bis hoher Schwierigkeit reichen können, normalerweise werden diese als Code am Ort des Softwareunternehmens geschrieben, das IDEs verwendet, und es wird erwartet, dass hauptsächlich die Freeware-basierten Programme den sogenannten Code verwenden Generators die dazu dienen, Teile des Programmcodes automatisch zu generieren basieren auf Freeware oder manchmal auch kostenpflichtigen Modellen (die nach dem Algorithmus-Entwurf erstellt wurden), denn diese Modelle werden in der Regel für andere Zwecke erstellt und sind kaum irgendwo anwendbar oder können in manchen Fällen auch mit Viren infiziert sein SQL-Injections zum Abrufen von Kundeninformationen und viele andere Sicherheitsverletzungen.

Bei der Programmierung müssen, auch wenn das Programm selbst auf die Anforderungen hinarbeitet, auch für Kundenaufträge, wesentliche Aspekte der Softwarequalität berücksichtigt und durch das User Design und den Quellcode gemeinsam umgesetzt werden. Siehe als Beispiele: Programmierstil, Benutzerfreundlichkeit,[3] Wiederverwendbarkeit/Modularität, Wartbarkeit.

„Programmierung“ „im weiteren Sinne“ umfasst neben der Code- und Algorithmenerstellung zahlreiche weitere Tätigkeiten, obwohl beide als Haupttätigkeiten gelten, zum Beispiel die Gestaltung von Benutzeroberflächen durch Designer, das Testen (Entwicklertest) des Programms und Erstellen der Programmdokumentation, die sowohl der Unternehmensleitung dient, die den Programmierprozess überwacht, als auch in gewissem Umfang von Benutzern zu ihrem Verständnis verwendet werden kann der Funktionen des Programms. Neben der Softwareentwicklung ist die Hauptaktivität das Projektmanagement, das die Anforderungsanalyse oder die Sicherheits-Datenmodellierung umfasst, die von Spezialisten durchgeführt werden muss, die Daten ausschließen würden Verstöße, und diese können nicht vom Konzept der Programmierung „getrennt“ werden.

Je nach Art und Einsatzumgebung von Software (z. B. für Systemsoftware, Benutzerprogramme oder Standardsoftware, Webseiten und Websites, Spielesoftware, Grafiksoftware wie Programme zur Erstellung von Grafiken usw.) können unterschiedliche Methoden bzw Werkzeuge (wie Programmiersprachen, Programmierparadigmen, Testmethoden usw.) können für die Entwicklung verwendet und/oder von spezialisierten Entwicklern ausgeführt werden.

Je nach angewendetem Vorgehensmodell verlaufen die Aktivitäten zur Programmierung in zeitlich voneinander abgegrenzten Projektphasen, parallel oder iterativ. In der Praxis geschieht das Programmieren häufig in Teamarbeit, mit modernen Entwicklungsmethoden (wie Agile Softwareentwicklung) und Programmierwerkzeugen.

„Ähnliche Bedeutungen:“ Umgangssprachlich wird das Konfigurieren (Einrichten/Einrichten) von Haushalts- oder anderen elektrischen Geräten in der mathematischen KI-Entwicklung manchmal als „Programmierung“ bezeichnet. Auch Organisationseinheiten von Unternehmen, in denen Software entwickelt wird, werden oder wurden zum Teil „Programmierung“ genannt.

Geschichte

Charles Babbage beschrieb 1834 eine programmierbare Maschine, die Analytical Engine,[4] welche allerdings nie gebaut wurde. Seine, Notations of calculations for the Analytical Engine, umfasst 27 Programme. Diese sind in ‚the babbage papers‘ des Science Museums von London abrufbar. https://collection.sciencemuseumgroup.org.uk/documents/aa110000020 Die Programme enthalten bereits ‚Indirekte Adressierung‘ und ‚bedingte Ausführungen‘ (IF-THEN-ELSE-Befehle). Diese Dokumente dürften als erste Programme und Programmiersprache bezeichnet werden.

Ada Lovelace übersetzte 1843 eine ursprünglich französische Beschreibung der Analytical Engine von Luigi Federico Menabrea ins Englische und fügte eigene Notizen hinzu. Diese Anmerkungen enthielten einen tabellarischen Plan zur Berechnung der Bernoulli-Zahlen. 1941 realisierte Konrad Zuse mit dem Z3 die erste programmgesteuerte Rechenmaschine, von 1942 an entwickelte er mit Plankalkül die erste höhere Programmiersprache.[5] Die Mathematikerin Grace Hopper schuf 1949 den ersten Compiler, der Quellcode in Maschinencode übersetzt.[6]

Qualitätskriterien

Die Qualität von Software entsteht zu großen Teilen im Rahmen der Tätigkeiten des Programmierens, besonders die folgenden Qualitätskriterien betreffend:

Korrektheit

Ein Programm muss die im Softwareentwurf gemachten Vorgaben entsprechend und korrekt umsetzen. Dazu muss es in der Regel fehlerfrei sein, wobei bei der Programmierung meist zwei unterschiedliche Arten von Fehlern auftreten:

  1. Syntaxfehler: Falsch formulierter Quellcode – es werden Formulierungen oder Konstrukte verwendet, die in der verwendeten Programmiersprache nicht vorkommen (Tippfehler, Unwissenheit, ...). Syntaxfehler können vom Compiler/Interpreter oder Parser während der Übersetzung erkannt werden und verhindern in der Regel R. d. R. die Programmausführung.
  2. Semantische Fehler: Semantische Fehler können bei der Benennung einiger im Code verwendeter Eigenschaften, der Benennung von Funktionen und anderen oder der Vermischung von Benennungen auftreten.
  3. Mathematische Fehler: Das Programm kann nicht ordnungsgemäß ausgeführt werden, wenn ein ungeeigneter Algorithmus verwendet wird. Dies ist dann der Fall, wenn den Programmierern zu wenig Zeit gegeben wird, um einen Algorithmus für die spezifischen Funktionen zu erstellen.
  4. Schnittstellenfehler: Das Programm verhält sich nicht wie vorgesehen, da die Benutzerimplementierung des Algorithmus möglicherweise fehlerhaft war. Semantische Fehler können in der Regel nicht automatisch erkannt werden, sondern können nur durch gewissenhaftes Testen mit Lesecode gefunden werden – beispielsweise in Form von Unittests.

Der Übergang zwischen diesen Fehlertypen ist nicht immer fließend, stattdessen können diese Fehler einzeln oder alle zusammen auftreten, je nachdem, welche Codierungsprobleme oder Schwierigkeiten ein Team hat. Ein einfaches Beispiel könnte sein, dass ein Tippfehler im Code (z. B. „>“ anstelle von „<“ in einem Vergleichsbefehl) zu einer gültigen ausführbaren Datei führt, das Ergebnis jedoch wahrscheinlich falsch ist. An anderer Stelle könnte derselbe Fehler ein Syntaxfehler sein.

  1. Wilhelm Pape, Max Sengebusch (Bearb.): Handwörterbuch der griechischen Sprache. 3. Auflage, 6. Abdruck, Vieweg & Sohn, Braunschweig 1914. 1914, abgerufen am 9. Dezember 2015.
  2. Lerne Programmieren lerneprogrammieren.com Unterschied zwischen Programmierung und Softwareentwicklung
  3. Sebastian Dörn - Programmieren lernen und Algorithmen verstehen.
  4. http://www.computerhistory.org/babbage/engines/
  5. https://link.springer.com/chapter/10.1007/978-3-642-18631-8_9
  6. Grace Hopper, Yale University, aufgerufen am 7. Juni 2016