Einführung
Erste Schritte und Terminologie
Hallo!
Der schwierigste Teil eines Unternehmens ist oft der Anfang. Und wie es aussieht, haben Sie es geschafft. Herzlichen Glückwunsch!
Von hier aus haben wir einen langen Weg vor uns, um das Programmieren im Allgemeinen und No-Code (die Fähigkeit, Programme zu erstellen, ohne komplexe Programmiersprachen zu lernen) im Besonderen zu lernen. Aber zunächst einmal lohnt es sich, die grundlegenden Begriffe zu verstehen.
Wenn Sie bereits ein IT-Profi sind, können Sie dieses Einführungsmodul überspringen. Hier werden wir uns mit den grundlegendsten Konzepten beschäftigen. Anwendung, Frontend, Datenbank, HTTP-Protokoll, usw.
Sind Sie bereit? Los geht's!
Computer, auch wenn sie sehr intelligent erscheinen, sind von Natur aus unfähig, irgendetwas alleine zu tun. Sie brauchen klare Anweisungen. Es gibt sogar einen alten Witz: "Der Computer tut nicht, was du willst, sondern was du ihm befiehlst."
Es stellt sich heraus, dass"Programmieren" im weitesten Sinne die Erstellung von klaren und verständlichen Anweisungen (Befehlen) für einen Computer ist. Und die Anweisungen selbst in einer für einen Computer verständlichen Sprache sind ein "Programm".
Und hier lohnt es sich, die Formulierung "eine für einen Computer verständliche Sprache" (computerverständliche Sprache) hervorzuheben. Wir sprechen nämlich eine Sprache, und der Computer spricht eine andere. Er versteht die menschliche Sprache nicht (zumindest solange nicht, bis er ein Programm erhält, das ihm beibringt, Sprache zu verstehen). Genau wie wir verstehen wir ohne spezielle Ausbildung keine Maschinensprache (oder Maschinencode), die als eine Folge von 1 und 0 dargestellt werden kann.
10110100 00111010
Völlig unverständlich, oder?
Programmiersprachen
Um die Kommunikation zu gewährleisten, wurden Programmiersprachen geschaffen (und es werden ständig neue geschaffen).
Es gibt Sprachen, die als"Low-Level" bezeichnet werden. Sie sind dem Maschinencode sehr ähnlich, aber die Befehle sind in einer Form geschrieben, die für den Menschen verständlicher ist. Der bekannteste Vertreter solcher Sprachen ist "Assembler".
Die nächste Stufe sind "High-Level"-Programmiersprachen. Die meisten modernen Programmiersprachen gehören zu ihnen: Java, C++, Python, Go und viele andere. Sie sind auf Geschwindigkeit und Benutzerfreundlichkeit für den Programmierer ausgelegt. Gleichzeitig kann ein einziger Befehl in einer solchen Sprache in einen sehr komplexen und langen Satz von Befehlen im Maschinencode übersetzt werden.
Und hier ist ein neuer Begriff - "Translator". Dies ist genau das Werkzeug, das einen in einer Hochsprache geschriebenen Text in einen Satz von Maschinenbefehlen übersetzt (oder kompiliert). Dabei sollten wir uns keine Sorgen machen (oder viel weniger) über die Tatsache, dass alle Computer unterschiedlich sind, dass sie mit unterschiedlichen Prozessoren arbeiten und dass diese Prozessoren unterschiedliche Befehlssätze verwenden. Der Übersetzer wird diese Arbeit für uns erledigen.
Die AppMaster.io-Plattform gehört zu den No-Code-Plattformen. Man kann sie getrost als die nächste Stufe der Entwicklung bezeichnen. Mit ihr ist es möglich geworden, Anwendungen auf Unternehmensebene zu erstellen, ohne überhaupt eine Programmiersprache zu lernen und ohne komplexen Code zu schreiben. Das ist es, was wir in diesem Kurs tun werden. Mit klaren visuellen Blöcken beschreiben wir einfach, was getan werden muss. Und schon sind die AppMaster.io-Technologien eingeschaltet und schreiben selbst mit großer Geschwindigkeit Code.
Dieser Code ist übrigens in der Sprache Go (auch bekannt als Golang) geschrieben. Und das ist zum einen sehr wichtig. Schließlich sind wir sicher, dass wir eine moderne Sprache verwenden, die speziell von Google entwickelt wurde, um hocheffektive Programme zu erstellen. Auf der anderen Seite ist das aber auch nicht so wichtig. Schließlich kann man vergessen, welche Sprache dort verwendet wird (sie kann sogar durch eine andere ersetzt werden, wenn eine effektivere Lösung gefunden wird), man muss sich nur darauf konzentrieren, eine Anwendung zu erstellen, und nicht auf die Feinheiten ihrer technischen Umsetzung.