Programmieren unter Mac OSX!

Also doch besser C/C++ lernen? Was ist hilfreicher? C++ oder?
 
Bei mir an der Uni (ich studiere Physik in Regensburg) gibt's halt hauptsächlich C und C++ Kurse. Mit den Sprachen bist du wohl am besten bedient, die kann man halt für Programme, die man in der Uni erstellen muss, am besten brauchen. Das sind eben meist nur Kommandozeilen-Programme.
In der Uni haben wir Linux-Rechner, daheim hab ich einen Mac, also muss es auch Plattform-unabhängig sein. Da ist eben die beste Wahl C++ (ANSI / ISO).
Java würde auch gehen, ist aber zu langsam. Ich hab schon öfter C++-Programme gehabt (z.B. Monte-Carlo-Sachen), die zwei, drei Tage laufen, bis sie fertig sind.

Wenn es mal was mit GUI sein soll, ist natürlich ObjC am Mac schon was tolles…

Tobi
 
@bene.b
An meiner Uni steht ein Parallelrechner, der auf IBM Blue Logic basiert. Den hat ein Professor von uns mitentwickelt (quantum chromodynamics on a chip). Der Prof hat halt gemeint, dass als Benchmark für Supercomputer hauptsächlich LINPACK (in Fortran geschrieben) verwendet wird. Die Hersteller von solchen Computern wollen natürlich besonders gute Benchmark-Ergebnisse und optimieren also dahingehend, dass LINPACK sehr schnell läuft. Deshalb laufen oft Fortran-Programme schneller als andere. Also wird immer noch Fortran verwendet, weil es besonders schnell läuft. Darum wird auch immer noch LINPACK / Fortran als Benchmark verwendet, weil eben so viele Fortran-Programme geschrieben werden.
Doof. Ist aber angeblich so. Anscheinend setzt sich aber doch langsam C++ durch.

Tobi
 
Spacemojo schrieb:
Mit ObjC kann man leider halt nur auf dem Mac programmieren.

Naja, ich weiss ja was Du meinst, aber so ist die Aussage nicht richtig.

Objective-C ist zunächst mal eine Sprache, für die es auch unter Linux oder Windows Compiler gibt.

Ohne ein ordentliches Framework macht das aber vielleicht nicht so viel Spass, und da kenne ich auch nur Cocoa und GNUStep.

Alex
 
@tobi:

Hört sich an für sich ganz logisch an. Nun ist es bei uns an der Uni (Köln) so, dass wir zum Beispiel einen Linux Cluster haben, welcher aus mehr oder weniger handelsüblichen Opterons besteht und die Leute programmieren auch auf dem Fortran ( natürlich auch C bzw C++). Ich denke halt, das die Compiler bei Fortran auf Optimierung etc. ausgerichtet sind, wohingegen C-Compiler (zumindest bis vor 10 Jahren) eher universell einsetzbar waren. Außerdem wollen bestimmt viele Leute die schon seit 20 Jahren Fortran schreiben nicht wechseln. Auch wenn man immer wieder hört, dass Fortran stirbt, lebt es noch ;-)

Grüße bene
 
Fazit: C++ lernen?
 
Ich sage: Ja. Mach einen Kurs. Und Kauf dir ein Buch. Und ganz wichtig: ganz viel rumbasteln und probieren und, und, und.
Und irgendwann lernst du dann mal andere Spachen (z.B. Objective-C) und dann findest du vielleicht C++ doof. ;)
 
Nana

Spacemojo schrieb:
Fortran wird z.B. in der Physik haupsächlich deshalb hergenommen, weil es auf den Supercomputern besonders schnell läuft. Und das liegt nur daran, dass die Benchmark-Programme für die Supercomputer mit Fortran geschrieben wurden…
Wenn du Physik studierst, brauchst du das hauptsächlich, wenn du Theorie mit Numerik machst. Sonst ist halt C / C++ Standard.

Wenn man mal "programmieren" kann, lernt man sowieso schnell neue Programmiersprachen.


Tobi
Na da gibts auch einen Haufen Bibliotheken aus denen man für alle Zwecke Routinen findet. Die muss man dann nur noch einbinden...
Ich hab während der Promotion Fortran gelernt, hatte dann aber doch gewisse Probleme C zu lernen. Und dann gab es da noch nette Matas, die der Ansicht waren, dass Naturwissenschaftler sowieso nicht Programmieren können. Was ich denen dann auch gerne überlassen habe.
 
below schrieb:
Auch hier stimme ich zu. Selbst bei einem erfahrenen Programmierer, der neue in eine Firma kommt muss man 3-6 Monate Rechnen, bis er produktiv arbeitet.
Ja ne is kla... ich arbeite seit 10 Jahren freiberuflich als Entwickler und der Kunden würde mir was husten, wenn ich 3-6 Monate Einarbeitungszeit brauchen würde.
 
Mirko D. Walter schrieb:
Ja ne is kla... ich arbeite seit 10 Jahren freiberuflich als Entwickler und der Kunden würde mir was husten, wenn ich 3-6 Monate Einarbeitungszeit brauchen würde.
Das kommt ja wohl drauf an was man macht und in welche Firma man kommt. Du wirst als Freiberufler kaum die Erfahrung und das Wissen (und damit auch Arbeitsgeschwindigkeit) speziell fuer die Firma aufweisen koennen wie ein langjaehriger Mitarbeiter der sich gut in die Firma integriert hat.
 
Mirko D. Walter schrieb:
Ja ne is kla... ich arbeite seit 10 Jahren freiberuflich als Entwickler und der Kunden würde mir was husten, wenn ich 3-6 Monate Einarbeitungszeit brauchen würde.

Von einem Freiberufler erwartet man ja auch, dass er sich mit der verwendeten Sprache, Bibliotheken und Entwicklungsumgebung auskennt und sich nur noch ins Projekt einarbeiten muss. Bei einem längerfristig eingestellten Programmierer ist das nicht unbedingt der Fall - besonders wenn er frisch von der Uni oder Ausbildung kommt, kann man das kaum erwarten.
Und eine neue Sprache ist zwar schnell gelernt, aber bis man sich wirklich in z.B. ein neues GUI-Framework eingearbeitet hat, können doch schon einige Monate ins Land gehen. Das heisst ja nicht, dass der Entwickler in der Zeit völlig unproduktiv ist, aber er erreicht halt nicht die Produktivität eines erfahrenen Entwicklers.

Gremlin
 
chrizel schrieb:
Das kommt ja wohl drauf an was man macht und in welche Firma man kommt. Du wirst als Freiberufler kaum die Erfahrung und das Wissen (und damit auch Arbeitsgeschwindigkeit) speziell fuer die Firma aufweisen koennen wie ein langjaehriger Mitarbeiter der sich gut in die Firma integriert hat.

Genau das meinte ich. Wenn eine Firma einen Berater oder Freiberufler sucht, dann suchen sie Leute, die sofort anfangen können.

Es gibt aber Projekte und Produkte, für die finde ich (fast) niemanden, der das sofort kann. Da suche ich dann jemanden, der Grundqualifikationen hat und die Details dann aber erstmal im Projekt selbst lernen muss.

Alex
 
Gremlin schrieb:
Von einem Freiberufler erwartet man ja auch, dass er sich mit der verwendeten Sprache, Bibliotheken und Entwicklungsumgebung auskennt

Und dann gibt es Dinge, die sind vertraulich. Die kann auch ein neuer Mitarbeiter vor Projektbeginn nicht wissen -- ausser, er kommt von einem Partner oder einem Konkurrenten.

Mir ist das auch schon als Freiberufler passiert: Projektvertrag unterschreiben, NDA unterschreiben, tonnenweise Dokumentation lesen. Dann erst irgendwann arbeiten.

Alex
 
tach,

also ich studiere nachrichtentechnik (wird jetzt dann kommunikations und informationstechnik heißen).

wir programmieren in c, ABEL und assembler.

für abel und assembler brauchst du windows.
ich habe noch keine alternativen dazu entdeckt.
allerdings brauchst du abel nur im ersten semester und dann nie wieder ;) und anstatt assembler kann man auch c verwenden. ich glaube die vorlesung wird nach uns sowieso auf c umgestellt.

wir verwenden c deshalb (so wurde uns gesagt), da es einfacher auf die mikrocontroller anzuwenden ist und alles andere für diese zwecke zu überladen sei.

von daher kann man ohne probleme osx verwenden.
es wird höchstens bei den schnittstellen problematisch.
den welcher neuer mac hat schon nen com port :rolleyes:

aber ich glaube die haben schon vor auf usb umzustellen.

die stellen zur zeit sowieso alles um, ich bin im vorletzten diplom-studiengang, deswegen gibts noch nix neues :p

gruß
mobis
 
chrizel schrieb:
Das kommt ja wohl drauf an was man macht und in welche Firma man kommt. Du wirst als Freiberufler kaum die Erfahrung und das Wissen (und damit auch Arbeitsgeschwindigkeit) speziell fuer die Firma aufweisen koennen wie ein langjaehriger Mitarbeiter der sich gut in die Firma integriert hat.
Üblicherweise werde ich eingekauft, entweder, damit Wissen zugekauft wird, was in der Firma nicht so häufig ist oder, um schwierige Themen alleine zu lösen. Oder - wenn einfach zu viel Kram rumliegt, der weggebaggert werden muß.
Du hast natürlich Recht: einen langjährigen MA kann ich nicht - und soll ich nicht - ersetzen.
gremlin schrieb:
Von einem Freiberufler erwartet man ja auch, dass er sich mit der verwendeten Sprache, Bibliotheken und Entwicklungsumgebung auskennt und sich nur noch ins Projekt einarbeiten muss. Bei einem längerfristig eingestellten Programmierer ist das nicht unbedingt der Fall - besonders wenn er frisch von der Uni oder Ausbildung kommt, kann man das kaum erwarten.
ACK
 
Assambler gibs für mac und linux .. wieso musst du den kram mit win machen?
 
hoppelmoppel schrieb:
Assambler gibs für mac und linux .. wieso musst du den kram mit win machen?

hast du vielleicht n link für mich?

ich hab das immer bissher mit dem textedit gemacht und dann später an der fh dann alles getestet. wir verwenden dort eben nur windows.
 
man 1 as

as - Mac OS X Mach-O GNU-based assemblers

Gruss

Alex
 
hmmm ich muss mir xcode nochmal runterladen.

ich hab damals nicht alles installiert.
 
Zurück
Oben Unten