welche sprache als "ersatz" für c++

matzka

Mitglied
Thread Starter
Dabei seit
25.12.2007
Beiträge
39
Reaktionspunkte
0
hallo ich bin neu in der mac welt :)
deshalb meine frage:

habe unter windows c++ programmiert + bisschen java ...
wobei mir c++ mehr lag

ich habe nichts großes gemacht hin und wieder so spielerein für die schule
(wörterabfrage programm usw)

ich würd jetzt gerne mal was neues ausprobieren und deshalb meine frage
was gibt es für sprachen die sich für sowas eignen + fachliteratur
 
hallo ich bin neu in der mac welt :)
...
habe unter windows c++ programmiert + bisschen java ...
ich habe nichts großes gemacht hin und wieder so spielerein für die schule
...

Hallo,

schau Dir doch mal Processing an. Damit kannst Du sehr schnell sehr schicke Sachen basteln. Hoher Suchtfaktor, zumindest bei mir. ;)
 
  • Gefällt mir
Reaktionen: McKean und matzka
Was spricht dagegen weiter c++ zu verwenden?
Auf der Konsole ist es das selbe. Wenn du in Richtung GUI-Programmierung gehst, solltest du dir verschiedene Toolkits ansehen. Mit Qt z.B. hat man schnell mal eine Oberfläche zusammengestellt.
 
  • Gefällt mir
Reaktionen: matzka
ich würd jetzt gerne mal was neues ausprobieren und deshalb meine frage
was gibt es für sprachen die sich für sowas eignen + fachliteratur

C++ ist Himmel und Hölle zugleich. Ich persönlich habe mir ein Visual Studio via Parallels verfügbar gemacht, weil C++ einfach nicht sterben sollte ;)

Wenn du für den Mac (und nur für den Mac) programmieren möchtest, ist das Cocoa Framework für ObjC sicher 1. Wahl.
Zusätzlich kann ein Blick auf Python (PyDev + Eclipse = IDE) nicht schaden. Ein nettes Buch ist vielleicht <a href="http://www.amazon.com/Beginning-Game-Development-Python-Pygame/dp/1590598725">dieses hier</a>.

edit: Uhm...irgendwie klappt das mit den Links nicht...
 
  • Gefällt mir
Reaktionen: matzka
Was spricht dagegen weiter c++ zu verwenden?

Weil niemand C++ beherrscht, nicht mal jahrelange Profis, was sich in Sicherheitslücken, Speicherlecks und Abstürzen zeigt. Und das haben mit Sicherheit alle großen C++-Anwendungen.

Um z.B. Sicherheitslücken und Speicherlecks in Java oder C#(oder alle anderen Managed-Sprachen) hinzubekommen, muss man sich schon dämlich anstellen. Unter C++ ist das ein Kinderspiel.

Unter OS X 10.5 bietet sich auch Python an, aufgrund der Cocoa/Python-Bridge, welche mitgeliefert wird.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: matzka
Weil niemand C++ beherrscht, nicht mal jahrelange Profis, was sich in Sicherheitslücken, Speicherlecks und Abstürzen zeigt. Und das haben mit Sicherheit alle großen C++-Anwendungen.

Bugs haben nicht nur C++-Anwendungen, sondern alle. Mit manueller Speicherverwaltung erkauft man sich natürlich gewisse Flexibilität und Geschwindigkeit, und bezahlt mit Mehraufwand. Man kann auch shared_ptr aus Boost verwenden und gut ist.

Um z.B. Sicherheitslücken und Speicherlecks in Java oder C#(oder alle anderen Managed-Sprachen) hinzubekommen, muss man sich schon dämlich anstellen. Unter C++ ist das ein Kinderspiel.

Das ist leichter als man denkt, vor allem weil man meint sich nicht mehr kümmern zu müssen.

Aber der Threadersteller wollte ja explizit etwas "neues" ausprobieren. Da würde ich noch Ruby vorschlagen. Nachteile: ziemlich langsam und wenn man danach jemals wieder Java und co. benutzen muss, kommt einem alles unbequem vor. :) Buchempfehlung: Programming Ruby
 
  • Gefällt mir
Reaktionen: matzka
Weil niemand C++ beherrscht, nicht mal jahrelange Profis, was sich in Sicherheitslücken, Speicherlecks und Abstürzen zeigt. Und das haben mit Sicherheit alle großen C++-Anwendungen.

Um z.B. Sicherheitslücken und Speicherlecks in Java oder C#(oder alle anderen Managed-Sprachen) hinzubekommen, muss man sich schon dämlich anstellen. Unter C++ ist das ein Kinderspiel.

Unter OS X 10.5 bietet sich auch Python an, aufgrund der Cocoa/Python-Bridge, welche mitgeliefert wird.

Wenn man C++ mit Qt kombiniert kommt schon sehr nah an die Managed-Sprachen ran. Gedanken um das rechtzeitige freigeben von Objekten sollte man sich trotz Garbage Collector immer machen.
 
  • Gefällt mir
Reaktionen: matzka
Wenn man C++ mit Qt kombiniert kommt schon sehr nah an die Managed-Sprachen ran.

Was enthält denn Qt? Ich dachte immer, es sei "nur" ein Framework für die Oberflächenprogrammierung, sprich Controls und Eventhandler etc.
Gibt es da etwa Implementierungen für Garbage Collection, die über die Autopointer aus Boost o.ä. hinausgehen?
 
  • Gefällt mir
Reaktionen: matzka
Einen Garbage Collector in dem Sinn hat es nicht. Aber es geht über die Oberflächenprogrammierung hinaus. Mir fällt zum Beispiel die Dateihandhabung ein, für die Qt eigene Klassen hat.
Warum ist der Garbage Collector so ein Fortschritt für dich? Normalerweise solltest du trotzdem wissen, wann du ein Objekt freigeben kannst oder nicht.

Ich wollte dem TE nur zeigen das man auch bei OSX mit C++ arbeiten kann.
 
  • Gefällt mir
Reaktionen: matzka
Einen Garbage Collector in dem Sinn hat es nicht. Aber es geht über die Oberflächenprogrammierung hinaus. Mir fällt zum Beispiel die Dateihandhabung ein, für die Qt eigene Klassen hat.
Warum ist der Garbage Collector so ein Fortschritt für dich? Normalerweise solltest du trotzdem wissen, wann du ein Objekt freigeben kannst oder nicht.
In einer perfekten Welt hätten auch alle Menschen genug zu essen.

Nein, man kann es ganz häufig nicht wissen, wenn man dem User ein Maximum an Flexibilität geben will. Man denke nur daran, dass er Objekte in irgendwelche Programmteile schmeißen darf, um sonst etwas damit zu tun. Natürlich alles in unabhängigen Modulen programmiert. Und wann genau darf das Objekt freigegeben werden, wenn er auf Löschen tippt?

Da benötigst du mindestens RC oder eine GC. Richtig ist, dass smart Pointers RC bieten. Sie sind damit (auf einer bequemeren) Stufe eines RC. Es verbleiben damit Zyklus-Probleme. (Nein, nicht weil die Freundin des Programmierers an PMD leidet.)
 
  • Gefällt mir
Reaktionen: matzka
also erstmal danke
welcher eurer vorschläge ist denn "ähnlich" mit c++?
ich würde doch gerne mal was neues ausprobieren ;-)
 
Hi,

bin letztens auf diese Seite getoßen:
http://www.99-bottles-of-beer.net/

Dort werden Programmiersprachen vorgestellt, indem der Song "99 Bottles of Beer" in verschiedenen Sprachen programmiert wurde.

Ich glaube da kann man sich zumindest einen Überblick über die jeweilige Programmiersprache machen und abschätzen wie einfach oder schwer der Einstieg sein wird.


Gruß Fabian
 
  • Gefällt mir
Reaktionen: matzka
Hi,

bin letztens auf diese Seite getoßen:
http://www.99-bottles-of-beer.net/

Dort werden Programmiersprachen vorgestellt, indem der Song "99 Bottles of Beer" in verschiedenen Sprachen programmiert wurde.

Ich glaube da kann man sich zumindest einen Überblick über die jeweilige Programmiersprache machen und abschätzen wie einfach oder schwer der Einstieg sein wird.
Der Sinn der Seite besteht darin, dieses Programm möglichst krude zu implementieren. Ich würde das nicht zur Abschätzung heranziehen.
 
Hi!

Zum Probieren und Lernen reichen Sprachen wie Realbasic etc. sicher aus. Auch C++ mit Qt-GUI und Java sind hervorragend.

Da hier aber sicher alle einen Mac haben geht eigentlich kein Weg an Objectiv-C und Cocoa vorbei. Nur wer das mitgelieferte Xcode benutzt und die Systembestandteile wie Core Data / Core Graphics / Core Image und jetzt auch Core Animations benutzt wird wirklich die volle Funktionalität des Mac OS X ausnutzen können. Auch wird die verzahnung mit den iApps sonst fast unmöglich. Ist ist sehr von Vorteil wenn man die Programme wie iCal und Mail sowie Addressbook im eigenen Programm ansprechen kann.

Wer auf vielen Plattformen seine Software einsetzen will sollte Java nutzen. Aber auch dort muß man letztendlich viel Frameworks und Objektbibliotheken erlernen um echte Software zu schreiben.

happy coding
 
Unabhängig von der sonstigen Eignung st C++ sicherlich einer der kompliziertesten Programmiersprachen, die auch noch konzeptionell verbaut ist.

Zum Lernen ist es daher ganz gewiss nicht geeignet.
 

Jo. D wollte ich auch gerade vorschlagen. Vereint die Schönheit von Java mit der Geschwindigkeit von C++, könnte man fast sagen. ;-)

http://de.wikipedia.org/wiki/D_%28Programmiersprache%29 schrieb:
D verfügt unter anderem über Templates und überladbare Operatoren. Gegenüber C++ bietet es außerdem Design by contract, Module und eine integrierte automatische Speicherbereinigung. Letztere kann sowohl global als auch für einzelne Objekte deaktiviert und durch eine eigene Speicherverwaltung ersetzt werden.

Gibt auch irgendwo ein freies D-Buch (Manfred Hansen: Programmiersprache D). Konnte es aber noch nicht lesen. :)
 
Jo. D wollte ich auch gerade vorschlagen. Vereint die Schönheit von Java mit der Geschwindigkeit von C++, könnte man fast sagen. ;-)

Also sooo langsam ist Java nun auch nicht. Es gibt nur viele Java-Programmierer, die keine Ahnung haben, wie man Java programmiert ;)
 
  • Gefällt mir
Reaktionen: below
Zurück
Oben Unten