Hallo alle zusammen,
da es immer wieder die selben Threads zu dem Thema "Welche Programmiersprache ist für mich am besten geeignet" gibt und ich hier noch kein Thread gefunden habe der dieses Problem löst möchte ich das hier tun.
1. Welche Programmiersprachen gibt es
Es gibt zwei Arten von Programmiersprachen, Compiler Sprachen und Scriptsprachen:
Compiler Sprachen:
- -C++
-Delphi / Pascal
-Visual Basic
-Java
Scriptsprachen
Es gibt sicher noch mehr, aber das sind jetzt mal die wichtigsten
2. Was ist bei der Auswahl der Programmiersprache zu beachten:
- -Der Verwendungszweck
-Kompatibilität mit verschiedenen Plattformen (gehört eigentlich auch zum Verwendungszweck)
-Ob es eine Compilersprache oder eine Scriptsprache sein soll
-Die Syntax
3.1 Der Verwendungszweck
Als erstes sollte man sich im klaren sein was man mit der Programmiersprache erreichen möchte. Dazu teile ich hier die Programmiersprachen in zwei Gruppen auf:
Compiler Sprachen:
- -Programme erstellen die das Tägliche leben vereinfachen
-Programme erstellen die sehr Performance lastig sind
-Programme mit hoher Plattformkompatibilität
-Spieleprogrammierung
Scriptsprachen:
- -Webseiten erstellen
-Programme erstellen die das Tägliche leben vereinfachen
-Programme mit hoher Plattformkompatibilität
-Spieleprogrammierung (trifft nur bei manchen Sprachen zu und ist nur bedingt zu empfehlen)
3.2 Plattformkompatibilität
Wenn man plant ein Programm für mehrere System zu veröffentlichen dann sollte man ganz speziell auf diesen Punkt achten.
Folgende Sprachen sind komplett Plattformunabhängig und eigenen sich gut für Plattformübergreifende Anwendungen:
- -C++
-Delphi / Pascal
-Assembler (Der Code sieht aber meistens komplett anderst aus)
-Java
-PHP
-Python
-Perl
3.3 Scriptsprache oder Compiler Sprache
Beide Arten haben Vor - und Nachteile:
Compiler Sprache:
- +Schell
+Kommt meistens ohne Extra Software aus (Ausgenommen VB, denn das braucht extra Libarys und Java, das braucht die Java Runtime)
+Der Quellcode ist nicht Lesbar und somit relativ geschützt
-Bei größeren Programmen kann das Compilieren mehrere Stunden/Tage dauern
-Programm muss jedes mal zum Testen erneut kompiliert werden
-Muss auf jedem Betriebssystem neu kompiliert werden
Interpreter Sprache:
- +Kann schnell angepasst und geändert werden ohne kompiliert zu werden
+Kann in der Regel ohne Änderungen auf ein anderes System portiert werden
+Optimal für kleine Scripte die einem die Tägliche Arbeit erleichtern. Aber auch für große
Projekte geeignet
+Es wird einem meistens viel Arbeit abgenommen. So kann man z.b. sehr sehr viel einfacher auf Datenbanken zugreifen wie z.B. in C++
-Langsamer als Compiler Sprachen
-meistens nicht so mächtig
-Der Quellcode kann in der Regel von jedem gelesen werden
3.4 Die Syntax
Auch ein wichtiges Kriterium ist die Syntax. Hier mal ein kleiner Ãœberblick der meist verwendetsten Syntax Arten:
C Syntax:
Code:
#incude <iostream>
using namespace std;
int main(){
cout<<"Hallo Welt"<<endl;
return 0;
}
Pascal Syntax:
Code:
program Hallo;
begin
writeln('Hallo Welt');
end.
Basic Syntax:
Code:
DIM name AS string
input "Wie heißen Sie? "; name
print "Guten Tag"; name
Python Syntax:
Code:
def fakultaet(x):
if x > 1:
return x * fakultaet(x - 1)
else:
return 1
Assembler Syntax:
Code:
org 100h
start:
mov dx,hello_world
mov ah,09h
int 21h
mov al, 0
mov ah,4Ch
int 21h
section .data
hello_world: db 'hello, world', 13, 10, '$'
4. Die Eigenschaften der einzelnen Programmiersprachen
C++
C Syntax
Vorteile:
- -Objektorientiert
-Inline Assembler möglich
-Plattformübergreifend
-schnell
-viele Tutorials und Hilfen im Internet
-sehr weit verbreitet
Nachteile:
- -manchmal unübersichtlicher Quellcode
-schwieriger Grafische oberflächen zu schreiben
-am Anfang dauert es etwas länger bis man wirklich nützliche Programme schreiben kann
-fehleranfälliger
Gute Seite für Einsteiger: http://www.c-plusplus.de/
Delphi
Pascal Syntax
Vorteile:
- -Objektorientiert
-Inline Assembler möglich
-einfache und klare Syntax
-übersichtlicher Quellcode
-man kann einfach grafische Oberflächen erstellen
-schnell
-Einsteigerfreundlich
Nachteile:
Gute Seite für Einsteiger: http://www.delphi-treff.de/
Visual Basic
Basic Syntax
Vorteile:
- -Einsteigerfreundlich
-übersichtlicher Quellcode
-schnell Programme mit einer Grafischen Oberfläche zusammenklicken
Nachteile:
- -Windows abhändig
-braucht Runtimes
-beschränkte Funktionalität
-langsam
-VB 6.0 ist nicht objektorientiert
Gute Seite für Einsteiger: http://www.activevb.de/
Java
C Syntax
Vorteile:
- -Objektorientiert
-Plattformunabhängig
-Kann durch einmaliges Kompilieren auf mehreren Plattformen augeführt werden
-Kann in Webseiten eingebunden werden (Java Applets)
Nachteile:
- -langsam da es in einer Virtual Machine läuft
Gute Seite für Einsteiger: http://www.galileocomputing.de/openbook/javainsel7/
Assembler
Assembler Syntax
Vorteile:
- -sehr sehr schnell
-Alles was in Assembler nicht programmierbar ist muss man löten
-Plattform übergreifend (auch wenn der Code auf anderen Systemen meistens komplett anders aussieht.)
Nachteile:
- -schlecht lesbare Syntax
-Schwieriger zu erlernen im Vergleich zu anderen Sprachen (Wobei manche da anderer Meinung sind)
Gute Seite für Einsteiger: http://www.robsite.de/tutorials.php?tut=assembly
Python
Python Syntax
Besonderes Merkmal:
Es werden keine Klammern zum Festlegen von Funktionen wie z.B. in C verwendet,
da diese durch einrücken gekennzeichnet werden.
Vorteile:
- -Objektorientiert
-Plattform übergreifend
-gut lesbarer Code
-recht schnell für eine Scriptsprache
-Viele Module die die Sprache erweitern
-Sogar zum Spiele programmieren geeignet
-klare Fehlerausgabe vom Interpreter
Nachteile:
- -Es existieren keine richtigen Compiler
Gute Seite für Einsteiger: http://www.python-forum.de
PHP
C Syntax
Vorteile:
- -Objektorientiert
-Plattform übergreifend
-Perfekt zum programmieren von Webseiten
-viele Funktionen die das Programmieren erleichtern
-sehr gut Dokumentiert
-der Quellcode lässt sich verschlüsseln
Nachteile:
Gute Seite für Einsteiger: http://tut.php-quake.net/ und natürlich http://php.net
Perl
C Syntax
Vorteile:
- -Objektorientiert
-Plattformübergreifend
-viele Funktionen die das Programmieren erleichtern
-schneller als Visual Basic da Perl einen C Interpreter besitzt
Nachteile:
- -bei größeren Programmen ist der Quellcode schlecht lesbar
Gute Seite für Einsteiger: http://fabdp.fh-potsdam.de/lv-neu/on...erl_start.html
5. Fazit - Das war jetzt so viel auf einmal, welche Programmiersprache soll ich jetzt nehmen?
-Für Webseiten eindeutig PHP
-Für Exploits kann man auch PHP verwenden, wobei Perl da verbreiteter ist.
-Für Programme jeglicher Art wie z.B. Einem Trojaner oder anderem Delphi
Das ist nur meine Empfehlung. Letztendlich muss jeder selber entscheiden Welche Programmiersprache ihm am besten gefällt.
Ich hoffe dass ich mit diesem Beitrag etwas Licht ins Dunkle der Programmiersprachen bringen konnte.
MfG
Dr.ChAoS