Programmieren für Einsteiger: Teil 1
By Dr. Veikko Krypzcyk and Olena Bochkor
()
About this ebook
Read more from Dr. Veikko Krypzcyk
SharePoint Kompendium digital
Related to Programmieren für Einsteiger
Titles in the series (100)
Java EE Security Rating: 0 out of 5 stars0 ratingsIT Wissensmanagement: Theorie und Praxis Rating: 0 out of 5 stars0 ratingsServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Rating: 0 out of 5 stars0 ratingsJavaScript auf dem Server Rating: 0 out of 5 stars0 ratingsF#: Ein praktischer Einstieg Rating: 0 out of 5 stars0 ratingsAlgorithmen: Grundlagen und Implementierung Rating: 0 out of 5 stars0 ratingsHTML5 Security Rating: 0 out of 5 stars0 ratingsBig Data: Technologiegrundlagen Rating: 0 out of 5 stars0 ratingsHTML5 für Mobile Web Rating: 0 out of 5 stars0 ratingsAmazon Web Services für .NET Entwickler Rating: 0 out of 5 stars0 ratingsSharePoint-Entwicklung für Einsteiger Rating: 0 out of 5 stars0 ratingsUX Design für Tablet-Websites: Ein Überblick Rating: 0 out of 5 stars0 ratingsJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Rating: 0 out of 5 stars0 ratingsEinstieg in Google Go Rating: 0 out of 5 stars0 ratingsNutzeraspekte in Suchmaschinen: Komponenten für eine gelungene Usability-Gestaltung Rating: 0 out of 5 stars0 ratingsTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Rating: 0 out of 5 stars0 ratingsApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Rating: 0 out of 5 stars0 ratingsBig Data: Executive Briefing Rating: 0 out of 5 stars0 ratingsNFC: Near Field Communication für Android-Entwickler Rating: 5 out of 5 stars5/5OAuth 2.0: Client & Server Rating: 0 out of 5 stars0 ratingsGeolocation mit PHP: Foursquare-API, Google Places & Qype Rating: 0 out of 5 stars0 ratingsVaadin Schnelleinstieg Rating: 0 out of 5 stars0 ratingsTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Rating: 0 out of 5 stars0 ratingsMobile Business: Was Entscheider morgen wissen müssen Rating: 0 out of 5 stars0 ratingsWebentwicklung mit dem Play Framework Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenCL Rating: 0 out of 5 stars0 ratingsZend Framework 2: Für Einsteiger und Umsteiger Rating: 0 out of 5 stars0 ratingsSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Rating: 0 out of 5 stars0 ratingsÜberzeugende Präsentationen: Konzeption, Technik und Design Rating: 0 out of 5 stars0 ratings
Related ebooks
Algorithmen: Grundlagen und Implementierung Rating: 0 out of 5 stars0 ratingsProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Rating: 0 out of 5 stars0 ratingsDas große Python3 Workbook: Mit vielen Beispielen und Übungen - Programmieren leicht gemacht! Rating: 4 out of 5 stars4/5C++: Kurzportträt einer zeitlosen Sprache Rating: 0 out of 5 stars0 ratingsPrinzipien des Softwaredesigns: Entwurfsstrategien für komplexe Systeme Rating: 0 out of 5 stars0 ratingsProgrammieren für Einsteiger: Teil 2 Rating: 0 out of 5 stars0 ratingsHTML5, JavaScript und jQuery: Der Crashkurs für Softwareentwickler Rating: 2 out of 5 stars2/5Softwareentwicklungsprozess: Von der ersten Idee bis zur Installation Rating: 0 out of 5 stars0 ratingsMobile Web-Apps mit JavaScript: Leitfaden für die professionelle Entwicklung Rating: 0 out of 5 stars0 ratingsUML @ Classroom: Eine Einführung in die objektorientierte Modellierung Rating: 0 out of 5 stars0 ratingsPraxiseinstieg Deep Learning: Mit Python, Caffe, TensorFlow und Spark eigene Deep-Learning-Anwendungen erstellen Rating: 0 out of 5 stars0 ratingsWindows PowerShell: Grundlagen & Scripting-Praxis für Einsteiger – Für alle Versionen Rating: 0 out of 5 stars0 ratings.NET-Praxis: Tipps und Tricks zu .NET und Visual Studio Rating: 0 out of 5 stars0 ratingsModellbasiertes Requirements Engineering: Von der Anforderung zum ausführbaren Testfall Rating: 0 out of 5 stars0 ratingsC++17: Praxiswissen zum neuen Standard. Von C++11 bis 17 Rating: 0 out of 5 stars0 ratingsCross-Plattform-Entwicklung mit HTML und JavaScript Rating: 0 out of 5 stars0 ratingsProgrammieren lernen für Kinder - Einsteiger Rating: 0 out of 5 stars0 ratingsErste Schritte: Eigene IoT-Lösungen mit dem ESP32: Mikrocontroller, Internet und PC Rating: 0 out of 5 stars0 ratingsHTML5 für Mobile Web Rating: 0 out of 5 stars0 ratingsBessere Softwareentwicklung mit DevOps Rating: 0 out of 5 stars0 ratingsPraktisches Programmieren in C: Grundlagen und Tipps Rating: 0 out of 5 stars0 ratingsAgile Softwareentwicklung: Werte, Konzepte und Methoden Rating: 0 out of 5 stars0 ratingsGraphQL: Eine Einführung in APIs mit GraphQL Rating: 0 out of 5 stars0 ratingsMicrosoft KINECT: Programmierung des Sensorsystems Rating: 0 out of 5 stars0 ratingsJavaScript kinderleicht!: Einfach programmieren lernen mit der Sprache des Web Rating: 0 out of 5 stars0 ratingsLinux Grundlagen - Ein Einstieg in das Linux-Betriebssystem Rating: 0 out of 5 stars0 ratingsWeniger schlecht programmieren Rating: 4 out of 5 stars4/5Linux Befehlsreferenz: Schnelleinstieg in die Arbeit mit der Konsole, regulären Ausdrücken und Shellscripting Rating: 0 out of 5 stars0 ratingsEigene Spiele programmieren – Python lernen: Der spielerische Weg zur Programmiersprache Rating: 0 out of 5 stars0 ratings
Programming For You
Python-Grundlagen Rating: 0 out of 5 stars0 ratingsHausautomation mit Raspberry Pi: Alarmanlage, Heizung, Smart Home, W-LAN & Co: 20 Projekte, die Ihr Leben leichter machen Rating: 0 out of 5 stars0 ratingsDie ultimative QNAP NAS Bibel - Das Praxisbuch - mit vielen Insider Tipps und Tricks - komplett in Farbe Rating: 0 out of 5 stars0 ratingsMicrosoft Word 2016 (Microsoft Press): Einfache Anleitungen für wichtige Aufgaben Rating: 0 out of 5 stars0 ratingsMikrocontroller in der Elektronik: Mikrocontroller programmieren und in der Praxis einsetzen Rating: 0 out of 5 stars0 ratingsC++: Eine kompakte Einführung Rating: 0 out of 5 stars0 ratingsSQL – kurz & gut Rating: 0 out of 5 stars0 ratingsPython | Schritt für Schritt Programmieren lernen: Der ultimative Anfänger Guide für einen einfachen & schnellen Einstieg Rating: 0 out of 5 stars0 ratingsHacken mit Python und Kali-Linux: Entwicklung eigener Hackingtools mit Python unter Kali-Linux Rating: 0 out of 5 stars0 ratingsHTML5-Programmierung von Kopf bis Fuß: Webanwendungen mit HTML5 und JavaScript Rating: 0 out of 5 stars0 ratingsPython kurz & gut: Für Python 3.x und 2.7 Rating: 3 out of 5 stars3/5Android-Entwicklung für Einsteiger - 20.000 Zeilen unter dem Meer: 2. erweiterte Auflage Rating: 0 out of 5 stars0 ratingsJavaScript kinderleicht!: Einfach programmieren lernen mit der Sprache des Web Rating: 0 out of 5 stars0 ratingsRaspberry Pi: Einstieg • Optimierung • Projekte Rating: 5 out of 5 stars5/5Raspberry Pi: Mach's einfach: Die kompakteste Gebrauchsanweisung mit 222 Anleitungen. Geeignet für Raspberry Pi 3 Modell B / B+ Rating: 0 out of 5 stars0 ratingsJavaScript kurz & gut Rating: 3 out of 5 stars3/5Programmieren von Kopf bis Fuß Rating: 4 out of 5 stars4/5Eigene Spiele programmieren – Python lernen: Der spielerische Weg zur Programmiersprache Rating: 0 out of 5 stars0 ratingsPowerShell: Anwendung und effektive Nutzung Rating: 5 out of 5 stars5/5C von Kopf bis Fuß Rating: 3 out of 5 stars3/5Android-Programmierung kurz & gut Rating: 0 out of 5 stars0 ratingsJava 8 - Die Neuerungen: Lambdas, Streams, Date and Time API und JavaFX 8 im Überblick Rating: 0 out of 5 stars0 ratingsLinux Grundlagen - Ein Einstieg in das Linux-Betriebssystem Rating: 0 out of 5 stars0 ratingsPraktisches Programmieren in C: Grundlagen und Tipps Rating: 0 out of 5 stars0 ratingsSQL von Kopf bis Fuß Rating: 4 out of 5 stars4/5Vue.js für alle: Wissenswertes für Einsteiger und Experten Rating: 0 out of 5 stars0 ratingsArduino: Ein schneller Einstieg in die Microcontroller-Entwicklung Rating: 5 out of 5 stars5/5Das Franzis Starterpaket Arduino Uno: Das Handbuch für den Schnelleinstieg Rating: 0 out of 5 stars0 ratingsLinux Befehlsreferenz: Schnelleinstieg in die Arbeit mit der Konsole, regulären Ausdrücken und Shellscripting Rating: 0 out of 5 stars0 ratings
Reviews for Programmieren für Einsteiger
0 ratings0 reviews
Book preview
Programmieren für Einsteiger - Dr. Veikko Krypzcyk
GmbH
1 Grundlagen der Programmierung
Dem Anfänger fällt es oft schwer, den Einstieg in die Programmierung oder besser in den gesamten Prozess der Softwareentwicklung zu finden. Fragen nach der Wahl der richtigen Programmiersprache oder welche Entwicklungsumgebung am besten geeignet ist, sind zu beantworten. In diesem shortcut präsentieren wir einen umfassenden Einführungskurs in die Softwareentwicklung und legen dabei den Schwerpunkt auf die eigentliche Programmierung, also die Implementierung. Wir richten uns damit explizit an Anfänger, die noch keine umfassenden Kenntnisse in der Programmierung (Implementierung) von Software gesammelt haben. Zu unserer Zielgruppe gehören also zum Beispiel Studierende der Informatik am Anfang ihres Studiums oder angrenzender Disziplinen, die praktische Kenntnisse in der Programmentwicklung erwerben möchten. Auch der interessierte Autodidakt findet hier einen kompakten Einstieg. Der Fokus der Abhandlungen liegt eindeutig auf der Implementierung. Bei der Betrachtung dieser technischen Disziplin wird dabei nicht vernachlässigt, dass die eigentliche Programmierung lediglich einen Teilschritt des gesamten Entwicklungszyklus (Abb. 1.1) darstellt. Wir werden an den geeigneten Stellen darauf hinweisen und Quellen zum tieferen Einstieg nennen.
Abbildung 1.1: Der Entwicklungszyklus einer Software umfasst mehrere Phasen; unser Fokus ist die Implementierung
Programmierung
Das Ziel eines jeden Softwareentwicklungsprozesses ist die Bereitstellung von Programmen. Dabei spielt es vom Grundsatz zunächst keine Rolle, auf welchem System ein solches Computerprogramm laufen soll. Neben den klassischen Programmen für den Desktop spielen heute Anwendungen für die so genannten mobilen Endgeräte (Smartphone, Tablet) zunehmend eine Rolle. Zur Entwicklung von Computerprogrammen bedient man sich einer Programmiersprache. Ausgangspunkt ist stets ein Problem der realen Welt. Beispielsweise sollen Berechnungen durchgeführt werden, oder die Daten der Kunden sind systematisch zu verwalten. Auch Computerspiele fallen in diese Kategorie. Das Problem muss analysiert und damit einer Lösung zugänglich gemacht werden. Dafür werden Algorithmen verwendet. Ein Algorithmus wird wie folgt definiert [1]: „Ein Algorithmus ist eine detaillierte und explizite Vorschrift zur schrittweisen Lösung des Problems". Es gelten folgende Eigenschaften:
Die Ausführung des Algorithmus erfolgt in einzelnen Schritten
Jeder Schritt umfasst lediglich eine einfache Grundaktion
Zu jedem Zeitpunkt muss klar sein, welcher Schritt als Nächstes auszuführen ist
Danach wird die Problemstellung in einer Programmiersprache verfasst. Man spricht auch vom Quellcode (Quellprogramm, Sourcecode). Programmiersprachen sind mehr oder weniger an den Bedürfnissen der Problemstellung ausgerichtet und erlauben damit eine problemorientierte Formulierung der Lösung. Von der Technik des Computers wird weitgehend abstrahiert. Der Computer selbst versteht lediglich die Maschinensprache (eine Folge von 0 und 1). Zwischen Quellprogramm und Maschinenprogramm findet die Übersetzung statt. Dieser Vorgang wird durch den Compiler erledigt. Letztendlich kann der gesamte Vorgang des Programmierens auch in Analogie zum Kommunikationsprozess zwischen Menschen aufgefasst werden. Beispielsweise erklärt man als Erwachsener eine recht komplexe Situation der realen Welt kindgerecht, lediglich unter Zuhilfenahme des kindlichen Wortschatzes (Abb. 1.2).
Abbildung 1.2: Mensch-Maschine-Kommunikation über eine Programmiersprache [2]
Der Übersetzer (Compiler) bestimmt also, für welche Zielsysteme (Hard- und Software) das Programm erstellt wird. Er ist dabei u. a. auf das Betriebssystem und den Prozessor abgestimmt (Abb. 1.3).
Abbildung 1.3: Prinzip der Übersetzung von Programmen [2]
Welche Sprache?
Diese Frage kann man nur bedingt beantworten. Gleich vorweg: Es gibt keine ideale – für alle Zwecke geeignete – Programmiersprache. Grundsätzlich können die