Programmieren lernen
- ein 7-tägiger Grundkurs
programmierenlernen.info
Tag1
Wichtige theoretische Grundlagen rund um die Programmierung.
Tag 1
Wir untersuchen auch interpretierte Programmiersprachen und vergleichen diese mit kompilierten Sprachen.
Wir schauen uns genau an wie JavaScript arbeitet und wie es ausgeführt wird.
interpretierte Sprachen
Wie arbeitet JavaScript?
Wir schauen uns an was kompilierte Programmiersprachen sind und was diese
ausmacht.
Markup Sprachen begegnen einem Entwickler früher oder später. Wir
werfen einen Blick auf Sie.
kompilierte Sprachen
Markup Sprachen
Theorie.
Natürlich ist der Kurs nur ein kleiner Einstieg. Wir zeigen, wie man Programmieren lernen kann.
Programmieren lernenWie arbeitet ein Entwickler und wie wird
Software entwickelt? Wir untersuchen den typischen Workflow.
Workflow der Entwicklung
Kompilierte Sprachen.Wir untersuchen kompilierte Programmiersprachen und schauen uns Vor-/Nachteile an.
Im Vergleich zu Skriptsprachen ist die Performance höher, da direkt Maschinencode vorliegt. Der Interpreter entfällt.
Kompilierte Sprachen wir C/C++ erlauben sehr effizientes Arbeiten mit dem vorhandenen Speicher.
Die Vorteile in Bezug auf Performance “erkauft” man sich über die aufwendigere Entwicklung von Software.
. PERFORMANCE . SPEICHEREFFIZIENT
. AUFWENDIGERKompilierte Programmiersprachen sind zum Beispiel C, C++ oder auch Objective-C. Diese erzeugen Binärdateien aus Quellcode (Compiler).
. SPRACHEN
Java ist ein Sonderfall. Hier gibt es einen Java-Compiler, der erzeugt jedoch Bytecode. Eine Art Zwischenschritt zwischen Interpreter und Compiler.
. SPEZIALLFALL JAVA
HOHE PERFORMANCE
SPEICHEREFFIZIENT
AUFWENDIGERE ENTWICKLUNG
PROGRAMMIERSPRACHEN
SPEZIALLFALL JAVA
KOMPILIERTE ENTWICKLUNG.
Hier sind die einzelnen Entwicklungschritte erkennbar. Bis die Software “fertig” ist, wiederholt sich dieser Kreis.
Entwicklungschritte
Konzept:
Nachteil: Kompilierung dauert ggf.
kompilierte Sprachen
Schritte: • editieren • kompilieren • ausführen • testen
Skriptsprachen.Interpretierte Sprachen werden auch als Skriptsprachen bezeichnet.
Die Performance bei Skriptsprachen ist generell etwas schlechter als bei den kompilierten Alternativen.
Speicherverbrauch ist ebenfalls meist höher als bei der Implementierung vergleichbarer Logik in kompilierten Sprachen.
Die Entwicklung mit Skriptsprachen ist meist etwas weniger zeitaufwendig, da zum Beispiel Speicherverwaltung entfällt.
. PERFORMANCE . SPEICHERVERBRAUCH
. ENTWICKLUNGSZEITBekannte Skriptsprachen sind zum Beispiel PHP, JavaScript, Python, Ruby sowie Perl.
. SPRACHEN
Java ist ein Sonderfall. Hier gibt es einen Java-Compiler, der erzeugt jedoch Bytecode. Eine Art Zwischenschritt zwischen Interpreter und Compiler.
. CODE ZUR LAUFZEIT
SCHLECHTERE PERFORMANCE
HÖHERER SPEICHERVERBRAUCH
SCHNELLERE ENTWICKLUNG
PROGRAMMIERSPRACHEN
SPEZIALLFALL JAVA
SICHERHEITGenerell bieten Skriptsprachen mehr Unterstützung im Bezug auf Sicherheit. C/C++ lagert dies voll auf den Entwickler aus.
. SICHERHEIT
SKRIPTSPRACHEN.
Hier sind die einzelnen Entwicklungschritte erkennbar. Bis die Software “fertig” ist, wiederholt sich dieser Kreis.
Entwicklungschritte
Konzept:
Nachteil: Performance/Speicherverbrauch
interpretierte Sprachen
Schritte: • editieren • kompilieren • ausführen • testen
MARKUP SPRACHEN.Markup-Sprachen wie HTML und XML sind Auszeichnungssprachen und beschreiben Inhalte.
Markup-Sprachen beschreiben den Inhalt, legen aber nicht automatisch auch das Format fest.
Beispiele für Markup-Sprachen sind HTML und XML. Hier werden Inhalte in einer Baumstruktur verschachtelt.
Eine Markup-Sprache ist keine Programmiersprache. Hier der dynamische Aspekt.
. AUSZEICHNUNG . HTML / XML
. PROGRAMMIERSPRACHE?Auszeichnungssprachen haben keine Logik, keine Bedingungen oder Schleifen. U.a. daher JavaScript.
. KEINE LOGIK
HTML und XML beschreiben Inhalte, legen jedoch nur fest um welche Art es sich handelt. Aussehen wird woanders definiert.
. BESCHREIBUNGSSPRACHE
AUSZEICHNUNG VON ELEMENTEN
HTML / XML
KEINE ECHTEN PROGRAMMIERSPRACHEN
KEINE LOGIK
BESCHREIBUNGSSPRACHE
STYLESHEETSAussehen wird durch Stylesheets festgelegt. Außerdem gibt es bei HTML definierte Darstellung, je nach Browser ggf. abweichend.
. STYLING / CSS
98,2% 87,3%
72,1% Ľ
Es gibt rund um die Entwicklung sehr viele Bücher, die ganze Bandbreite vom
Einsteiger bis hin zum Profi wird bedient.
Gefundene Beispiele implementieren und den Code verstehen, verändern und
erweitern! Vermittelt ein Gefühl für die Sprache.
Endlos viele Software Projekte findet man bei Github sowie über Google. Die
Inspiration und Quellcode zum Studieren reicht für ein ganzes Menschenleben.
BÜCHER LESEN! BEISPIELE UMSETZEN
FREMDER QUELLCODE GITHUB & GOOGLE
82,1% 110%
67,4% 120%
Konkrete Tutorials rund um einzelne Themen helfen weiter ins Detail oder
gezielte Bereiche einzusteigen.
Wenn ein paar Grundlagen sitzen, einfach eigene Projekte ausdenken. Das
vertieft das Wissen am besten.
Unglaublich wichtig ist auch jemand, der als Mentor fungieren kann. Gerade das macht Github und die Projekte dort so interessant. Die einfache Möglichkeit,
sich Feedback zu eigenem Quellcode zu holen.
Laufen lernt man nur in dem man läuft. Genau das gilt auch für die Entwicklung. Alle Theorie hilft nur bedingt. Wirklich
lernen kann man es nur durch viel Praxis.
TUTORIALS EIGENE PROJEKTE
FEEDBACK! PRAXISLesen und Experimentieren mit fremdem
Quellcode! Das hilft Konzepte zu verstehen sich einzelne Methoden, Funktionen und Objekte im Detail
anzuschauen.
PROGRAMMIEREN LERNEN.
Übungsaufgabe.
Sich anschauen wie andere malen ist meist logisch und leicht verständlich, schwer wird es erst, wenn man selbst vor einem weißen Blatt Papier sitzt. !Genau dies gilt auch bei der Programmierung. Vieles ist schlüssig, wenn man Zuschauer ist. Nur durch Übung festigen sich wichtige Elemente und Konzepte. !Darum empfehlen wir unsere Übungsaufgaben. Musterlösungen auf Anfrage.
Übung macht den MeisterDie Übungsaufgaben helfen beim Vertiefen!
Fragen?.
Der Kurs versucht alles notwendige Wissen zu vermitteln. Sollten Punkte unklar sein, irgendwas unverständlich erklärt oder sonst in irgendeiner Form Fragen auftreten, freuen wir uns über Rückmeldung. !Nicht schüchtern sein. Es gibt keine dummen Fragen. Gerade am Anfang kann schon ein kleiner Hinweis in die richtige Richtung wunder bewirken! !Wir beantworten von Herzen gern jede eure Fragen!
Offene Fragen, Anregungen?Wir helfen bei Fragen gerne weiter!
Kontakt.
Phone: +49 5252 2692517-0 !Email: [email protected] !Web: programmierenlernen.info
!
"
Facebook.com/ programmierenlernen.info
Twitter.com/AspiringCoders
SOCIAL MEDIAKontakt-INFO
programmierenlernen.info
HTTP://