• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Codes Buch für C++ Grundlagen?

mad-boy

Cox Orange
Registriert
18.09.07
Beiträge
97
Hallo,
ich bin auf der Suche nach einem guten Buch um C++ zu erlernen. Und zwar wirklich ordentlich. Das ganze darf ruhig einige Zeit dauern. Ich würde auf lange Zeit gesehen gerne für Mac mit GUI programmieren. Momentan bin ich mehr im Internet zuhause. HTML, PHP, MySQL und etwas JavaScript beherrsche ich recht gut. Allerdings gehen einem da irgendwann die Möglichkeiten zur Neige. Daher wollte ich hier mal fragen, welche guten Bücher ihr für die Grundlagen in C++ empfehlen könnt. Die Grundlagen sind wahrscheinlich noch weitestgehend Systemunabhängig, sollte eure Empfehlung aber auf etwas Systemabhängiges rauslaufen dann sollte es dabei ganz klar um Mac OS X gehen.

Ich hoffe auf eure Hilfe.

Liebe Grüße,
Michael
 

Amin Negm-Awad

Süsser Pfaffenapfel
Registriert
01.03.07
Beiträge
665
Die "Haussprache" für Applikationen auf OS X ist aber Objective-C.
 

mad-boy

Cox Orange
Registriert
18.09.07
Beiträge
97
Hallo!
Danke für eure Antworten. Ich habe bei Amazon mal ein wenig in Objective-C und Cocoa geblättert.

Nun habe ich allerdings eine Frage: Wie steht es mit der Portierung von Objective-C Mac Anwendungen auf andere Plattformen? Sprich: Kann Objective-C auch für Windows und Linux Anwendungen genutzt werden oder geht das generel gar nicht? Kann man weite Teile des Objective-C Codes auch unter C(++) nutzen oder muss man ALLES umschreiben?

Ich denke ich werde mir das Buch mal zulegen und damit anfangen. Sieht sehr interessant aus. :)

Liebe Grüße,
Michael
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Nun habe ich allerdings eine Frage: Wie steht es mit der Portierung von Objective-C Mac Anwendungen auf andere Plattformen? Sprich: Kann Objective-C auch für Windows und Linux Anwendungen genutzt werden oder geht das generel gar nicht? Kann man weite Teile des Objective-C Codes auch unter C(++) nutzen oder muss man ALLES umschreiben?

Radio Erewan antwortet: Im Prinzip, ja. Aber ... in der Realität sind alle Möglichkeiten, Objective-C Code auf andere Platformen zu bringen doch eher unbrauchbar.

Und Objective-C ist Objective-C, also nicht C++. Man kann das zwar mischen, aber dabei wird aus Objective-C kein C++

Für Platformübergreifende Entwicklung gibt es Frameworks, das ist dann aber eben nicht wirklich "Mac GUI", jedenfalls nicht in meinen Augen.

Alex
 

Amin Negm-Awad

Süsser Pfaffenapfel
Registriert
01.03.07
Beiträge
665
Wie Alex: Theoretisch denkbar, praktisch wenig brauchbar. Gerade diejenigen Sachen, die das Arbeiten mit Cocoa so bequem machen, sind nicht portiert.

Andererseits machst du dir mit unnativen Frameworks nicht gerade Freunde …

Zum Mischen: Du kannst verschiedene Programmiersprachen ziemlich frei mischen. Das lohnt sich, wenn du etwa alte Frameworks mitnehmen willst. Aber C++ und Objective-C haben konzeptionell völlig unterschiedliche Wurzeln, so dass es als "freie Mixtur" ziemlich hirnrissig ist.
 

mad-boy

Cox Orange
Registriert
18.09.07
Beiträge
97
Also ums ganz klar zu sagen: Was ich mit Objective-C programmiere kann ich für Linux und Windows wieder komplett neu schreiben? Die richtige GUI zu verwenden finde ich schon sehr wichtig, von daher würde ich mir glaube ich lieber den Stress machen alles neu zu schreiben anstatt mit irgendwelchen Frameworks zu experimentieren die dann dauernd abstürzen oder sonst was...

Vielen Dank für eure Hilfe. Ich werde mich dann wohl - trotz der inkompatibilität zu anderen Systemen - mit Objective C befassen, da ich der festen Überzeugung bin, das Windows so langsam aber sicher eh dem Untergang geweiht ist... Mal sehen was Microsoft noch so in 10 Jahren auf die Beine stellt. Aber das ist eine andere Frage... bleibt also nurnoch Linux auf das portiert werden müsste! ;)

Liebe Grüße,
Michael
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Also ums ganz klar zu sagen: Was ich mit Objective-C programmiere kann ich für Linux und Windows wieder komplett neu schreiben?
Warum will man Software für Linux und Windows schreiben? o_O

da ich der festen Überzeugung bin, das Windows so langsam aber sicher eh dem Untergang geweiht ist
Also, vielleicht verlieren sie noch den einen oder anderen Punkt Marktanteil, aber Untergang ist wohl eher ins Reich der Fantasie zu verweisen.
Ich meine mal gelesen zu haben, das Microsoft genug Reserven hat um ca. 100 Tage weiterzumachen als wäre nichts passiert, wenn von einem Tag auf den anderen jeglicher Umsatz ausbleibt.

Alex
 

mad-boy

Cox Orange
Registriert
18.09.07
Beiträge
97
Ich denke schon das Apple seit seiner extrem aggressiven Marketingkampagnen und durch den iPod eine gute Chance hat noch deutlich an Marktanteil zu gewinnen. Zumal das exponentiell verlaufen dürfte. Ich bin selber erst vor einigen Monaten geswitched und war noch nie so glücklich mit einem System. Und um mich rum wechseln nun auch nach und nach alle auf Mac und die machen dann wiederum genau so viel Werbung... das summiert sich ja! ;) Sicherlich, M$ wird nicht pleite machen, aber sie schaufeln sich mit Vista und Co langsam ihr eigenes Grab wenn es darum geht das führende Betriebssystem zu produzieren. ;)

Aber wie gesagt: Das ist ein anderes Thema! Ich hoffe und Bete zumindest weiter! ;)
 

stoebe

Uelzener Rambour
Registriert
23.12.05
Beiträge
371
Um nochmal auf das eigentliche Thema zurückzukommen:

Die Bücher des O'Reilly-Verlages sind von sehr guter Qualität. Die Themen sind sehr übersichtlich gestaltet und versprechen zumeist einen hohen Lerneffekt. Zusätzlich sind die deutschen Übersetzungen z.g.T einwandfrei. Die "In a Nutshell"-Reihe ist nach der "Head First"-Reihe für den Anfang am besten geeignet, die "Pocket Reference"-Reihe kann auch für den Einstieg verwendet werden, die "Cookbook"-Reihe jedoch dient als großes Nachschlagwerk für Probleme.

Wenn es also ein deutsches Buch sein soll, sei dir "C++ - kurz & gut" ans Herz gelegt.
Kann es auch ein englisches Buch sein, empfehle ich dir "C++ In a Nutshell".


Viele Grüße,

stoebe
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Sorry, Offtopic:

Auch die Bücher aus der O'Really Reihe sind sehr zu empfehlen, zum Beispiel "Tracing Spammers":

cashncarrion
 
Zuletzt bearbeitet:

Amin Negm-Awad

Süsser Pfaffenapfel
Registriert
01.03.07
Beiträge
665
Hallo!
Danke für eure Antworten. Ich habe bei Amazon mal ein wenig in Objective-C und Cocoa geblättert.

Nun habe ich allerdings eine Frage: Wie steht es mit der Portierung von Objective-C Mac Anwendungen auf andere Plattformen? Sprich: Kann Objective-C auch für Windows und Linux Anwendungen genutzt werden oder geht das generel gar nicht? Kann man weite Teile des Objective-C Codes auch unter C(++) nutzen oder muss man ALLES umschreiben?

Ich denke ich werde mir das Buch mal zulegen und damit anfangen. Sieht sehr interessant aus. :)

Liebe Grüße,
Michael
Wenn du gescheite Software schreiben willst, kommst du doch spätestens bei der View-Schicht gar nicht darum herum. Überlege dir selbst, was OS X bietet, was andere OS gar nicht haben und vice versa.

Aber das ist auch nicht so wichtig. Die höheren Schichten schreibst du mit Cocoa ganz flink. Und dein "eigentliches" Programm hängt im Model und das kannst du dann auch in C++ implementieren. Es kommt weniger auf Frameworks an, die den größten gemeinsamen Nenner an Funktionalität und die größte Vereinigungsmenge an Blödsinn liefern, als auf eine gute Strukturierung der Software.
 

tjp

Altgelds Küchenapfel
Registriert
07.07.04
Beiträge
4.059
Radio Erewan antwortet: Im Prinzip, ja. Aber ... in der Realität sind alle Möglichkeiten, Objective-C Code auf andere Platformen zu bringen doch eher unbrauchbar.
Wenn überhaupt ist es sinnvoll eine Applikation mit GNUstep zu entwickeln und sie anschließend nach MacOS X und Cocoa zu portieren, da man so vermeidet Fähigkeiten von Cocoa zu benutzen, die GNUstep noch (sein wir mal optimistisch) nicht unterstützt.