hallo nochmal,
also wer irgendwann mal richtige Mac Programme schreiben möchte und wem C und c++ zum Anfange zu schwer ist, dem kann ich guten Gewissens shellskripting (z.B: sh oder bash ) empfehlen.
Als zweiter Schritt könnte dann evtl perl oder schon C/c++ gewählt werden.
Warum?
1. Die Syntax ist C/c++ ähnlich, also ist es eine gute Vorbereitung
2. Es muss nicht kompiliert werden
3. man kann ganz einfach anfangen und sich "hocharbeiten".
4. Es gibt sehr viel Material im www, wo man sich informieren kann
5. (und das finde ich sehr wichtig) man lernt dabai sehr viel über sein Betriebssystem. Das macht Spaß und ist IMHO für Programmierer schon wichtig.
Damit es nicht so trocken bleibt, hier ein oder zwei kleine Beispiele; zunächst einmal das legendäre "Hallo Welt".
(Nicht irritieren lassen, ich formatiere als php, weil code nicht funktioniert)
PHP:
#!/bin/sh
# Name des Skripts hallowelt
# Dieses Skript schreibt "Hallo Welt" auf den Bildschirm
echo "Hallo Welt"
Um es zu starten, muss man es in einer "nurText"-Datei (Name: halloWelt) speichern.
dann
chmod +x hallowelt
eingeben, um das Skript ausführbar zu machen.
und dann mit
./hallowelt
aufrufen.
Wichtig ist dabei, dass sich die datei im aktuellen Arbeistverzeichnis befindet.
zweites Beispiel:
es sollen die Zahlen von 1-10 am Bildschirm augegeben werden:
PHP:
#!/bin/sh
# Name des Skripts zahlen
# Diese Skript zaehlt bis zehn
i=0
while test $i -le 10;
do
echo $i
i=`expr $i + 1`;
done
echo Danke
Ist mir klar, dass man das zweite auch einfacher hätte schreiben können.
wollte aber auch das Kommando "expr" reinbringen, um zu demonstrieren, wie man in der Shell rechnet (in c/c++ geht das einfacher) und das Kommando "test".
"-le" steht übrigens für "less or equal", also "kleiner oder gleich"
Diese Zeile:
while test $i -le 10;
kann man auch so schreiben
while [ $i -le 10 ];
Mit solchen Shell-Skripts kann man natürlich noch viel mehr machen:
- kleine Spiele schreiben (RussischRoulette, Tower of Hanoi, usw.)
- aus reinen Textdateien in postscript, pdf, rtf oder html (!) Dateien erzeugen
- Zeitgesteuerte backups durchführen
- firewall konfigurieren
- Informationen über Benutzer ausgeben
- Gruppen von Dateien umbennen (zb alle Dateien mit der Endung .jpg mit Endung .gif umgenennen)
- Berechnungen durchführen (quadratische Gleichung lösen, alle Primzahlen von .. bis . ausgeben, Pascalsches Dreicek berechnen, triangulär Zahlen suchen etc)
- Hardwareinformationen auslesen (zB die Seriennummer eures Mac´s, Name der Grafikkarte, des Prozessors etc)
...
Die Liste ist endlos.
Wenn es hier noch mehr Interessierte gibt, könnte man ja gelegentlich kleine Aufgaben stellen, und jeder der möchte, postet sein Lösung (oder seinen Lösungsansatz so weit er eben kommt).
Ich denke so kann man realtiv schnell gemeinsam was lernen.
Was meint Ihr ?