C/C++ vs Python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

Clython hat geschrieben:1. Ein Standard, der auf jeder Maschine laufen sollte, was man von C++ nicht gerade behaupten kann
C++ wurde inzwischen auch standardisiert (ISO C++).

Und C++ gibt es eigentlich für alle moderenen Systeme.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ich denke es war so gemeint, das C++ Programme nicht direkt unter Windows und Linux läuft, so wie es bei Python der Fall ist :D

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

Also zu dem Thema muss ich auch mal meinen Senf loswerden.

1. Python ist eine Scriptsprache und überhaupt nicht mit C++ vergleichbar.
2. Python ist eine sehr gute Möglichkeit etwas schnell zu entwickeln, aber die Umsetzung erfolgt dann eben doch in C++ oder Java - warum wohl...
3. Ich habe hier des öfteren gelesen, dass Python alles kann was C oder C++ auch kann, halte ich für absolut falsch. Das Eventhandling und MessageSending zwischen verschiedenen Threads ist in Python fast unmöglich, wenn dies auch noch zwischen mehreren Modulen geschehen soll.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Buell hat geschrieben:2. Python ist eine sehr gute Möglichkeit etwas schnell zu entwickeln, aber die Umsetzung erfolgt dann eben doch in C++ oder Java - warum wohl...
Du hast wohl http://www.python-forum.de/viewtopic.php?p=32500#32500 nicht gelesen, oder?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Ich habe hier des öfteren gelesen, dass Python alles kann was C oder C++ auch kann, halte ich für absolut falsch. Das Eventhandling und MessageSending zwischen verschiedenen Threads ist in Python fast unmöglich, wenn dies auch noch zwischen mehreren Modulen geschehen soll.
Huh? Programmierst Du Python? Wenn ja, dann weißt Du eigentlich dass es eine ganze Menge Datentypen gibt die in Python hierfür geeignet sind...

Bevor Du solche inflammatorischen Aussagen machst ist es vielleicht einfach am besten wenn Du ganz explizit sagst dass Du Python nicht als vollwertige Sprache siehst, dann weiß jeder was von Deiner Meinung zu halten ist im Vergleich mit seiner (nämlich wenn er eben Python auch nicht als Vollwertige Sprache sieht, oder es eben doch tut).

Und nein, das letzte ist nicht böse gemeint.
--- Heiko.
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

Meinst du mit dem "er" zufällig mich?????

Wenn ja dann kann ich nur folgendes sagen:

Natürlich sehe ich Python als eine vollwertige Sprache an!Und es macht auch richtig spaß in Python zu programmieren, aber ich denke, dass es nicht schaden kann, wenn man mehr als eine Sprache kann!Du kannst ja auch viel
mehr Sprachen als Python!Auch wenn ich C/C++ kann, werde ich hauptsächlich noch in Python programmieren!
mfg

Thomas :-)
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Hi

Fühl dich nicht immer angesprochen, ich glaube er bezieht sich einfach auf die Allgemeinheit und nicht eine bestimmte Person :)

Gruss
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Und ich glaube Buell war gemeint :wink:

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Und ich glaube Buell war gemeint
Jo, allerdings. Zumal ich in meinem Post keinerlei Bezug auf einen "er" genommen habe, sondern nur auf das Zitat.

Es ging mir schlicht und ergreifend darum dass man sehr mit Vorsicht genießen muß wenn jemand sowas sagt wie Buell in
Ich habe hier des öfteren gelesen, dass Python alles kann was C oder C++ auch kann, halte ich für absolut falsch.
Das ist nämlich, egal aus welcher Sicht gesehen, eine Aussage die in dieser Form
  • 1) In Ihrer Allgemeinheit nicht stimmt
    2) Völlig unzureichend begründet ist
    3) Sehr inflammatorisch geschrieben, also eher einem Troll zuzuordnen als einem Menschen der jemanden anderes über die Vorzüge oder Nachteile einer Programmiersprache (besser gesagt, ihrer Implementierung) geben will
Darum gings mir im Endeffekt. Wenn jemand genau wie Buell der Meinung ist dass Python eine Sprache (nur) für das Prototyping ist, und eben nicht die "Vollständigkeit" hat die eine Programmiersprache (in der Allgemeinheit) seiner Meinung nach auszeichnet, ist es besser, wenn er genau diese Tatsache (nämlich dass es seine Meinung, und im besonderen seine Erfahrung, bzw. seine fehlende Erfahrung in der Python-Programmierung) zusammen mit seinem Post schreibt, so dass jeder weiß, was er von dieser Meinung zu halten hat. Zum Beispiel hätte es genügt wenn er anstatt seines Posts geschrieben hätte: "Ich habe in Python bisher zum Beispiel vergeblich probiert direktes Message-Passing zu benutzen wie man es in C++ meißtens mit Threads benutzt, aber ich weiß dass es auch andere Datentypen für den Austausch von Nachrichten zwischen Threads gibt, nur will ich die hier nicht verwenden, weil für mich blöd." Oder so was. Es ist nicht okay, wenn er eben eine solche Allgemeinaussage trifft, dann aber eben seinen Rahmen nicht einschränkt.

Das war im Endeffekt was ich mit der Aussage sagen wollte. Und warum das "nicht böse gemeint?" Buell hat in gewissen Dingen recht, nämlich gibts ja in Python das GIL, was einen anderen Programmierstil verlangt/benötigt als wenn ich in C/C++ mit Threads arbeite, das bedeutet eben auch soviel wie dass eben die Thread-Programmierung mit ganz anderen primitives auskommt als das zum Beispiel in C/C++ der Fall ist (nämlich zum Beispiel Queues zum Message-Passing zwischen Threads). Welches der beiden Modelle "toller" oder "besser", oder sogar nur "leicher zu verstehen" ist, ist eine philosophische Frage: in Python gibts aber sehr wohl ein Modell um das zu machen was Buell will, auch wenn's eben nicht direkt Nachrichten zwischen Threads sind sondern eine etwas allgemeinere Form des Datenaustauschs über einen geteilten Speicherbereich, nämlich die Queue.

Und: "Python Master 47," fühl Dich nicht angegriffen wegen etwas was ich erstens nicht zu Dir, und zweitens auch gar nicht mehr so wirklich im Rahmen dieses Threads gesagt habe. ;-)
--- Heiko.
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

modelnine hat geschrieben:Und: "Python Master 47," fühl Dich nicht angegriffen wegen etwas was ich erstens nicht zu Dir, und zweitens auch gar nicht mehr so wirklich im Rahmen dieses Threads gesagt habe. ;-)
Ok werd es mir merken! :wink:
mfg

Thomas :-)
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

@modelnine:

Vielleicht solltest du mal etwas genauer lesen bevor du hier anfängst andere Leute (mich) zu beleidigen. Wenn ich die Aussage, dass Python genauso viel kann wie C++ für absolut falsch HALTE ist das wohl meine Meinung die mir zusteht. Ob sie dir gefällt oder nicht ist mir da total egal. Ich lasse mir bestimmt nicht von dir vorschreiben wie ich hier was zu schreiben habe.

Fakt ist, dass ich mit Python NICHT alles machen kann was ich auch in C++ tun kann, was allein schon daran scheitert, dass Python eine SCRIPTSPRACHE ist. Du hast doch selbst geschrieben, dass das Message Handling zwischen Threads in Python eher umständlich ist. Mit anderen Worten es geht nicht so wie in C++! Sicher kann man alles irgendwie hinbekommen, aber manchmal gibt es einfach Grenzen an die Python stößt.

Beispiele? BITTE:
- registrierte COM Schnittstelle in Windows (die also aus der Registry gestartet wird) unmöglich!
- zugriff auf Sapi4 - unmöglich! (Auch ein Jahr Forschung hat da nichts anderes ergeben. Es wird immer eine dll benötigt.)
- gleichzeitig Thread, Klassen und Dateiübergreifendes Eventhandling, wenn überhaupt möglich, extrem kompliziert.
- schon mal was von Assembler Programmierung mit Python gehört? - ich nicht!
- usw usw usw

Ich will hier Python nicht schlecht reden, das liegt mir fern. ich bin begeistert von Python, da dadurch die Entwicklung wesentlich schneller geht. Aber meiner Meinung nach ist es halt einfach nicht richtig, dass in Python alles geht. Lasse mich da gern vom Gegenteil überzeugen, nur beleidigen lasse ich mich nicht so gern!

Ach so, da du Modelnine dich ja selbst als der Messias in Python darstellst beantworte mir doch einfach mal ein paar meiner Python Fragen die mir hier im Forum komischerweise niemand beantworten kann, wie zB:

http://www.python-forum.de/viewtopic.php?p=32878#32878
http://www.python-forum.de/viewtopic.ph ... highlight= <-- hat sich erledigt
http://www.python-forum.de/viewtopic.ph ... highlight=

Das ist sicherlich sinnvoller als deine unglaubliche Intelligenz mit solchen Nichtigkeiten zu belasten wie dir möglichst kreative Beleidigungen auszudenken.

Aber schön, dass mein Statement solch eine Diskussion auslöst, das ist ja wohl auch der Sinn eines Forums. Jeder kann seine Meinung äußern!
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Vielleicht solltest du mal etwas genauer lesen bevor du hier anfängst andere Leute (mich) zu beleidigen. Wenn ich die Aussage, dass Python genauso viel kann wie C++ für absolut falsch HALTE ist das wohl meine Meinung die mir zusteht. Ob sie dir gefällt oder nicht ist mir da total egal. Ich lasse mir bestimmt nicht von dir vorschreiben wie ich hier was zu schreiben habe.
Reg Dich ab! Ich hab in meinem ersten Post gesagt dass ich Dich einfach nur darum bitten würde zu sagen dass Du momentan keinen Weg siehst das in Python zu machen, bevor Du hier rumgehst und erzählst dass es in Python oder mit (was für mich auch dazugehört, und ich dachte Diskussionsgrundlage dieses Threads gewesen wäre) Python nicht möglich ist.

Um danz kurz darauf bezug zu nehmen was Du geschrieben hast:
registrierte COM Schnittstelle in Windows (die also aus der Registry gestartet wird) unmöglich!
Da ich selbst kein Windows-Programmierer (und das früher nur relativ unregelmäßig gemacht habe) bin kann ich dazu wenig sagen. Ich hab allerdings schon von Leuten rund um das Py2Exe-Projekt gehört, die genau das hinbekommen haben mittels py2exe. Sprich: ich würd auf der entsprechenden Mailingliste mal nachfragen gehen was sich in die Richtung tut, und man wird Dir sicherlich helfen können, oder aber auch sagen können dass das allgemein nicht geht, oder wie auch immer. Nur: bevor Du einfach sagst, das geht mit Python nicht, guck erst mal nach ob es Erweiterungen gibt die das vielleicht bewerkstelligen können.
zugriff auf Sapi4 - unmöglich! (Auch ein Jahr Forschung hat da nichts anderes ergeben. Es wird immer eine dll benötigt.)
Es gibt für Python ctypes (wir reden von Windows?), was genau das macht: nämlich eine DLL an Python anzubinden. Sprich: wenn Du einfach mit ctypes einen Wrapper (in Python!) schreibst, dann kannst Du das SAPI ganz normal auch von Python ansprechen. Nur weil eine solche Bibliothek nicht in den Batteries-Included ist heißt das noch lange nicht dass es nicht mit Python geht, zum Beispiel eben über ctypes.
gleichzeitig Thread, Klassen und Dateiübergreifendes Eventhandling, wenn überhaupt möglich, extrem kompliziert.
Da ich erstens nicht so ganz verstehe was Du machen willst, da die Termini in der Kombination für mich absolut nichtssagend sind, und zweitens es auch nicht richtig ist dass Eventhandling in Python nicht geht (ich erinnere nur an pywin32 mit WaitForMultipleObjects.*, oder aber Queue.Queue zur Thread-Kommunikation), kann ich dazu nur sagen: das was Du machen willst geht anscheinend (und das ist häufig so) so wie Du's in C++ machen willst in Python eben nicht. Dafür gehts in Python auf anderen Wegen. Wenn Du die Problematik ein bisschen genauer beschreiben würdest könnte ich da wahrscheinlich (wenn's sich um allgemeine Dinge handelt) auch weiterhelfen, nur meine Ahnung von Windows hält sich arg in Grenzen.

Jede Sprache hat ihre Idiome, und aus meiner Sicht ist es leider so dass Du entweder die Python-Idiome nicht magst weil sie mit den C++-Idiomen kollidieren die Du so kennst, oder aber schlicht und ergreifend die Python-Idiome nicht kennst.
schon mal was von Assembler Programmierung mit Python gehört? - ich nicht!
Natürlich. Schon mal was von PyRex, PyC, psyco (im Endeffekt auch Assembler durch Python), oder auch von PyASM gehört? :-) Wenn's Dich interessiert poste ich gerne Links. Zur Not schreib ich auch eine kleine Python-Erweiterung, das ist dann zwar nicht mehr pures Python, aber die Logik meines Programms liegt trotzdem noch in Python mit ungefähr 20 Zeilen C irgendwo.

Das war eigentlich auch der Stein der meine Antwort ins Rollen gebracht hat: die Dinge die Du bisher angesprochen hast gehen mit purem Python vielleicht teilweise nicht, mit Erweiterungsmodulen aber schon, zur Not auch mit eigenen, aber die Erweiterung beschränkt sich in meinem bisherigen Programmierrahmen immer auf ungefähr 20 Zeilen. Oder sie gehen eben auf anderen Wegen als Du es aus anderen Sprachen gewohnt bist. Jede Sprache hat ihre eigenen Idiome. Und es steht Dir frei zu sagen dass Du die Python-Idiome für viele Dinge nicht magst, es ist aber aus meiner Sicht eben nur inflammatorisch zu sagen dass die Dinge deswegen prinzipiell mit Python nicht gehen, weil sie's eben schon tun, nur manchmal mit ein bißchen Hilfe.
Ach so, da du Modelnine dich ja selbst als der Messias in Python darstellst beantworte mir doch einfach mal ein paar meiner Python Fragen die mir hier im Forum komischerweise niemand beantworten kann, wie zB:
... Ganz viele Fragen die mit Windows-Spezifika zu tun haben. Ich hab, wie ich oben auch schon bemerkte, von Windows-Programmierung wenig bis keine Ahnung, deswegen lass ich selbst die Finger davon. Unabhängig davon: ich hab mich niemals als der Python-Messias dargestellt. Ich hab Dich nur gebeten Deine Aussage zwecks der Benutz- und Einsetzbarkeit etwas zu präzisieren (oder sie sein zu lassen), da Deine Aussage sehr, sehr allgemein war, das man nämlich diese Dinge nicht in Python machen kann ist einfach nicht wahr.

So. Falls Du Dich beleidigt gefühlt hast tut es mir leid, darum gings mir nicht (und Du hast recht dass ich manchmal die falschen Worte finde um das auszudrücken, ich hab selbst eben noch mal meinen letzten langen Post gelesen und der war auch nicht ganz sauber). Es ging mir darum dass ich für meinen Teil Deine Aussage zu allgemein empfand, und ich hab oben noch mal dargelegt was meine Ansicht war/ist dazu.
--- Heiko.
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

ok ok, abgeregt - das Wort Troll hat mich nur etwas "angepisst"


wie ich es schon in meinem letzten Beitrag gesagt habe, ist alles irgendwie mit Umständen machbar. Allerdings nicht so, wie Python ursprünglich mal gedacht war. Es ist wahrscheinlich richtig, dass man mittels Py2Exe einen dauerhaft registrierbaren COM Server bauen kann, aber dann habe ich eine kompilierte exe und das ist nicht der Sinn von Python.

Mit dem Assembler, hab ich wirklich noch nie was von gehört.

Sapi4: Richtig, eine gewrappte dll und schon kann ich mit Python auf die Sapi4 zugreifen. Genau so mache ich (bessergesagt wir) es auch. Nur diese dll ist mit C++ geschrieben und nicht mit Python. (Vielleicht hab ich da auch noch nie was von gehört, dass man mit python auch dll's schreiben kann)

Mein Event Problem: manchmal verstehe ich mich selbst nicht mehr... ;)
quasi 3 involvierte Dateien:
- eine zur Anbindung an die COM Schnittstelle von xy
- eine die Ausgaben der COM xy braucht
- ein COM Server der die erste mit der zweiten verbindet.
die Kommunikation zwischen diesen dreien gestaltet sich als sehr komplex, da man am Rande erwähnen sollte, dass es von der 1. Datei ca 4 gibt und von der zweiten beliebig viele (Momentan 5) und dazu noch der COM Server aus 3 Klassen besteht die jeweils im gesamten Programmablauf nur einmal initialisiert werden dürfen aber trotzdem auch untereinander kommunizieren müssen. Alles verzwickt. Um das vernünftig und verständlich zu beschreiben, müsste ich wahrscheinlich mehrere Seiten beschreiben, aber auch Informationen preis geben, die ich jetzt noch nicht preisgeben möchte.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Buell hat geschrieben:Sapi4: Richtig, eine gewrappte dll und schon kann ich mit Python auf die Sapi4 zugreifen. Genau so mache ich (bessergesagt wir) es auch. Nur diese dll ist mit C++ geschrieben und nicht mit Python. (Vielleicht hab ich da auch noch nie was von gehört, dass man mit python auch dll's schreiben kann)
Aber genau das ist doch das schöne an Python, das man es mit C++ erweitern kann. Somit kann man indirekt (fast) alles mir Python machen... Das man mit Python selber keine DLLs schreiben kann, dürfte wohl klar sein.

Klar ist, das man mit C mehr machen kann, als mit Python. Aber mit welchem Aufwand? Unterm Strich ist Python einfach effektiver in der Programmierung. Noch mehr als in C kann man wahrscheinlich mit Assebler machen, aber das dürfte nochmal um einiges Aufwändiger sein... Mal eben einen Test-CGI-Webserver starten, in C oder Asselbler?

Und das sind halt die wahren stärken, das man einfach schneller ans Ziel kommt und das ganze auch noch überschaubarer ist... Die Batteries-Included sind einfach genial...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Clython
User
Beiträge: 151
Registriert: Samstag 21. August 2004, 13:58
Wohnort: Schweiz, BE-2500

jens hat geschrieben:Aber genau das ist doch das schöne an Python, das man es mit C++ erweitern kann. Somit kann man indirekt (fast) alles mir Python machen... Das man mit Python selber keine DLLs schreiben kann, dürfte wohl klar sein.
Das Problem dürfte sich eigentlich mit Ironpython auch erledigt haben, oder :?:
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Clython hat geschrieben:
jens hat geschrieben:Das man mit Python selber keine DLLs schreiben kann, dürfte wohl klar sein.
Das Problem dürfte sich eigentlich mit Ironpython auch erledigt haben, oder :?:
Oder evtl. mit http://wiki.python.de/PyPy :D

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
alohahe
User
Beiträge: 2
Registriert: Sonntag 22. Mai 2005, 13:50

Python Master 47 hat geschrieben:So Leute,

Dieser Test sagt dann wohl alles! :wink:
Der Test sagt gar nichts.

Eine sprache ist nicht dann besser wenn sie mehr features hat. Sonst könnte ich auch ein Auto entwickeln das eine fritöse, eine microwelle eine Waschmaschiene und einen Trockner mit einbaut und es auf einer "Vergleichsseite" mit Mercedes vergleichen und mein Auto als besser darstehen lassen ;)

*ich liebe einfach die autovergleiche :D *

Wenn ich weiter hinein gehe sehe ich z.b: http://www.digitalmars.com/d/declaration.html#alias

Nun sie sehen es als Vorteil das D typ aliase zu erstellen. Ich sehe das als kompletten nachteil. Code wird komplett unleserlich wenn mann es erlaubt das ein int datentyp ein alias auf etwas komplexeres ist.


Resizeable arrays
Part of the standard library for C++ implements resizeable arrays, however, they are not part of the core language. A conforming freestanding implementation of C++ (C++98 17.4.1.3) does not need to provide these libraries.

Nun C#, C++, Java bringen alle Dinge wie java.util.ArrayList mit. C# nennt die Klasse ebenso ArrayList, bei C++ finden sich die Listen ebenso in der std.
Um beim beispiel in Java zu bleiben. Ich habe die Möglichkeit mir eine
ArrayList<MyClass> x; zu erstellen welche dynamisch ist. Oder aber ich kann mir ein MyClass[] x; Array erstellen.
Ganz klar ist das ein Array performanter ist, da dem Programmierer obliegt sich darum zu kümmern das noch platz da ist. Sprich mit dem Array kann ich sehr lowlevel arbeiten. Wenn ich der meinung bin ich bräuchte ein Array das sich dynamisch vergrössert, und bin gewillt die geringere Performance zu akzeptieren nehm ich die ArrayList.
Was mach ich unter D?
Ich nehme immer ein dynamisches Array und muss immer mit den performance einbußen leben, auch wenn ich weiss das ich nur max 10 Objecte darin speichern werde und nie die dynamic ausnutze.

Nach deiner Logic dürfte es auch kein Python geben, da mann bei viel mehr "Features" ein Grünen Kasten unter Perl machen könnte ;)
Die vielen Möglichkeiten in Perl etwas zu tun sind aber nach der meinung vieler genau der Grund weshalb sie sich nie auf Perl einlassen wollen.
Ich bin sogar der Meinung das mann sowenige Möglichkeiten in eine Sprache einbauen sollte wie möglich ohne die Funktionalität einer Sprache einzuschränken.
Die Komplexität in der Programmierung wird schon jetzt durch viele Formate, Protokolle, Systeme hochgetrieben, eine Sprache mit verschiedenen Arten zu programmieren soll da einen nicht noch weitere Steine in den Weg werfen.
Ich mag Python gerade deshalb weil ich schnell auch fremden Code lesen kann da sich die Art und Weise wie er geschrieben wurde nicht von meiner Unterscheidet.
Benutzeravatar
Toni83
User
Beiträge: 125
Registriert: Donnerstag 28. Juli 2005, 10:53

Eine interessante Gegenüberstellung von gängigen Programmiersprachen wie Python, Perl, Java und C++ findet man auf folgender Seite:

http://furryland.org/~mikec/bench/

Ich habe schon selber in C/C++ programmiert und ich kann nur sagen, dass Python wirklich Balsam auf der Seele eines Programmierers ist. Besonders die Klammersetzung und die Setzung des Semikolon ... ein Grauen bei C/C++. :? Da bleib ich doch lieber bei Python...
Wenn du von Python aus, C oder C++ lernen willst, rate ich Dir mit C++ anzufangen, allein der Möglichkeiten wegen. So bietet C++ mehere Datentypen, sowie auch die Möglichkeit der objektorientierten Programmierung (Klassen, Vererbungen, Assoziationen, Kompositionen,...). Außerdem die Möglichkeit von virtuellen Funktionen, Überladen von Operatoren,...

Gruss,
Toni
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

Ja werd ich auch so machen!

Ehrlich gesagt, gefällt mir Python auch besser, hab mir mal n paar C/C++ Codes angeschaut und die Syntax ist im Vergleich zu Python grausam!
mfg

Thomas :-)
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Toni83 hat geschrieben:Besonders die Klammersetzung und die Setzung des Semikolon ... ein Grauen bei C/C++. :?
Das hab ja auch einige andere Sprachen... Was ich aber nicht verstehen kann ist warum? Für mich sind das uralte Relikte aus vergangenen Zeiten ;) Wobei Basic das auch nicht hatte. Python mit seiner Einrückung ist IMHO die beste Lösung zur bildung von Blöcken :lol:

Es wäre doch auch denkbar, eine Zwischenschicht in C++ und Co. einzufügen! So das man Blöcke, wie bei Python einrücken kann und man Semikolon nur dann braucht, wenn man mehrere Befehle in einer Zeile haben will. Die Zwischenschicht übersetzt das dann wieder in die dolle Klammersetzung der original Sprache, bevor der Compiler angeworfen wird... Sowas wie ein precompile ;) Das alles könnte man wahrcheinlich recht schnell in Python implementieren, denke ich... Warum ist da noch keine auf die Idee gekommen? Oder gibt es sowas schon?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten