Linux Server setup

Lokale Entwicklungsumgebung einrichten

Teil 3 von „Tutorial Linux Web Server“.

Nach dem wir die beiden Tutorials Linux Webserver einrichten (Teil 1) und Datenbanken installieren (Teil 2) abgearbeitet haben, hat unser Server nun einen produktionsreifen Stand und ist bereit Web-Projekte zu betreiben. Bevor wir dazu kommen, werden wir erst eine gängige Entwicklungsumgebung einrichten. Die Bezugsquellen der diversen Software sind verlinkt. Die Installation selbst wird nicht genauer beschrieben, nur bei relevanten Besonderheiten gibt es ergänzende Erklärungen.

Art und Umfang einer Entwicklungsumgebung können stark variieren und richten sich in der Regel nach dem Projekt. Die Entwicklungsumgebung hat vor allem den Zweck die Arbeitsabläufe bei der Software Erstellung möglichst zu optimieren und Teilaufgaben zu automatisieren. Besonders komplex wird es wenn Programmierer, Datenbankingenieure, Grafiker und Redakteure gemeinsam eine Applikation entwickeln. Zu beachten ist dann auch noch, dass die verschiedenen Akteure eventuell mit unterschiedlichen Betriebssystemen arbeiten.

In der Regel nutzen Softwareentwickler integrierte Entwicklungsumgebungen (IDE) oder Editoren deren Funktionsumfang mit Erweiterungen vergrößert werden kann.

Die Entwicklungsumgebung, die ich hier vorstelle, wird eine Zusammenstellung von diversen kostenlosen Programmen sein. Es vielleicht eher eine Basiseinrichtung für die Webentwicklung.

Entwicklungswerkzeuge:


Versionsverwaltung

Die Versionsverwaltung oder auch Quellcodeverwaltung genannt, sollte unbedingt mit in den Arbeitsablauf integriert sein. Damit lassen sich nicht nur Historien von Programmcode, sondern generell von Ordnern und Dateien erzeugen. Besonders bewährt hat sich die Versionsverwaltungssoftware Git.


SFTP Klient

Mit einem SFTP Klienten kann das Dateisystem von einem entfernten Server eingesehen und natürlich auch Dateien sowie Ordner transferiert werden.

Für die Dateiübertragung per SFTP ist FileZilla ganz gut geeignet.


IDE und Editor

Eine gut eingerichtete IDE (Integrierte Entwicklungsumgebung) bildet die Basis jeder Entwicklungsumgebung. Üblicherweise wird der Programmcode auf dem Server während des programmierens mit den lokalen Dateien synchronisiert. So ist es auch möglich offline zu arbeiten und die fertige Arbeit zu einem späteren Zeitpunkt auf den Server zu übertragen.

Ich arbeite gerne mit Visual Studio Code. Das Pondon auf Mac ist wohl Sublime Text. Wichtig ist, dass die Software eine SFTP Verbindung aufbauen kann, was bei beiden mittels einem SFTP Addon möglich ist. Nebenbei bemerkt, sind diese beiden Programme Editoren und keine IDEs, auch wenn sie gerne mal so eingeordnet werden.


Datenbank Verwaltungswerkzeug

Datenbanken, lokal oder auf entfernten Servern, lassen sich am einfachsten mit einer Datenbank Verwaltungssoftware verwalten. Diese Werkzeuge verfügen über eine grafische Oberfläche, was das visualisieren und bearbeiten von Datenbanken, Tabellen und Datensätzen erleichtert. Autovervollständigung und Syntax Korrektur sind nur ein Bruchteil an Hilfestellung, die solch eine Software bietet.

Für relationale Datenbanken wie MySQL gibt es MySQL Workbench, für PostgreSQL pgAdmin und für NoSQL Datenbanken wie MongoDB Compass.