Ist die Ausgabe 01/2010 "iX Spezial Programmieren heute" lesenswert?
-
chrische5 schrieb:
Hallo
nman schrieb:
Achmann schrieb:
Du hast D vergessen, und dessen Release war nicht vor 10 Jahren.
Ich tu mir immer so furchtbar schwer dabei, D zu erwähnen, wenn ich gerade versuche, ernst zu bleiben.
Warum eigentlich? Siehst du keine Chance auf eine größere Verbreitung?
Wodurch sollte denn D an Verbreitung gewinnen? Da gibt es prinzipiell zwei Möglichkeiten:
a) man erschließt neue Bereiche der Programmierung
b) man "wildert" in anderen Bereichenbei a) sehe ich für D keine Möglichkeit. Welche Bereiche könnten es bei b) sein? Da fällt mir eigentlich spontan nur die im Zusammenhang oft erwähnte "Systemprogrammierung" ein. Und das ist ein Bereich der ohnehin nicht gerade durch den offensiven Einsatz neuer Sprachen bekannt ist. Sind doch C und C++ in dem Bereich immernoch fast alleine. Zudem fehlt es der "Systemprogrammierung" schlicht an Compilern/Backends für nicht-x86. Was also könnte (gäbe es denn Compiler) Leute dazu bewegen von C++ nach D zu gehen? D mag in manchen Aspekten Vorteile haben, vielleicht sogar insgesamt die "bessere" (im Hinblick auf Sprachfeatures, den "fehlenden" Klotz am Bein genannt "Abwärtskompatibilität") Sprache sein, aber die Unterschiede sind imho einfach nicht ausreichend um einen Wechsel von C++ zu argumentieren.
Auch in der jüngeren Vergangenheit waren es doch eher VM-Sprachen mit einem riesigen Arsenal an einheitlichen Bibliotheken (Java und C#/.NET) oder einfache, flexible Skriptsprachen (Ruby, Python, ...) die groß rauskamen.
D kommt imho einfach 10 Jahre zu spät.
Natürlich bin ich nicht nman
-
Tim schrieb:
Natürlich bin ich nicht nman
Ich sehe das aber ziemlich ähnlich wie Du.
Naja, vielleicht auch nicht:
D kommt imho einfach 10 Jahre zu spät.
Machen wir eher zwanzig daraus und ich bin einverstanden.
chrische5: Tim hat es schön zusammengefasst. Ich will jetzt auch ehrlich nicht über D diskutieren, aber ergänzend:
- C++ ist für die Anwendungszwecke, für die es eingesetzt wird, einfach "gut genug". Das heißt nicht, dass D nicht nette Konzepte hat, aber wenn ich für mich in Anspruch nehme, eine sehr etablierte Sprache X als Platzhirsch ablösen zu wollen, dann muss ich einfach für einen ganz bestimmten Einsatzzweck um _Größenordnungen_ besser sein, nicht nur an einigen Stellen ein bisschen.
- Für eine Sprache, die Anfang der 2000er entstand, ist D einfach furchtbar. Man könnte meinen, das habe jemand entworfen, der nie mit anderen Sprachen als C, C++ und Java hantiert hat und irgendwann meinte, selbst jetzt auch sowas machen zu müssen. Sprachen, die von nicht sprachinteressierten Menschen entworfen werden, sind meistens eine Katastrophe, siehe PHP.[1]
Dabei will ich es auch schon wieder belassen, ich habe mir die ganzen D-Diskussionen bis jetzt nicht zufällig verkniffen.
[1] Der Vollständigkeit halber: PHP wurde offensichtlich von einer Horde betrunkener Affen mit verschiedenen schwerwiegenden Lernschwächen geschrieben, das kann man von D nicht behaupten. Aber es bleibt eine sehr langweilige, uninteressante Sprache ohne viele Neuheiten. Genau das, was ich mir erwarte, wenn sich ein langjähriger C- und C++-User vornimmt, C++ sauberer zu machen.
-
Tim schrieb:
bei a) sehe ich für D keine Möglichkeit. Welche Bereiche könnten es bei b) sein? Da fällt mir eigentlich spontan nur die im Zusammenhang oft erwähnte "Systemprogrammierung" ein. Und das ist ein Bereich der ohnehin nicht gerade durch den offensiven Einsatz neuer Sprachen bekannt ist. Sind doch C und C++ in dem Bereich immernoch fast alleine. Zudem fehlt es der "Systemprogrammierung" schlicht an Compilern/Backends für nicht-x86. Was also könnte (gäbe es denn Compiler) Leute dazu bewegen von C++ nach D zu gehen? D mag in manchen Aspekten Vorteile haben, vielleicht sogar insgesamt die "bessere" (im Hinblick auf Sprachfeatures, den "fehlenden" Klotz am Bein genannt "Abwärtskompatibilität") Sprache sein, aber die Unterschiede sind imho einfach nicht ausreichend um einen Wechsel von C++ zu argumentieren.
Gegebenenfalls es gäbe Compiler.
Was spricht dagegen D für die Spieleprogammierung einzusetzen?
Ein Feld, das immer noch von C++ (und teils noch C) abgedeckt wird und hauptsächlich nur von x86 CPUs in Beschlag genommen wird.
-
Azgul schrieb:
Gegebenenfalls es gäbe Compiler.
Was spricht dagegen D für die Spieleprogammierung einzusetzen?
Ein Feld, das immer noch von C++ (und teils noch C) abgedeckt wird und hauptsächlich nur von x86 CPUs in Beschlag genommen wird.In erster Linie spricht nichts dagegen, vorausgesetzt die Schnittstellen zu OpenGL/DirectX sind da und brauchbar, was ich nicht beurteilen kann. Das Fehlen von Fachleuten und Tools allgemein könnte noch ein Faktor sein. Darum geht es aber nicht wirklich. Siehe nmans post:
nman schrieb:
aber wenn ich für mich in Anspruch nehme, eine sehr etablierte Sprache X als Platzhirsch ablösen zu wollen, dann muss ich einfach für einen ganz bestimmten Einsatzzweck um _Größenordnungen_ besser sein, nicht nur an einigen Stellen ein bisschen.
-
Azgul schrieb:
Was spricht dagegen D für die Spieleprogammierung einzusetzen?
Was spricht gegen C++? D ist nicht soviel anders, als das es den Umstieg rechtfertigen würde. Die großen Probleme von C++ löst es jedenfalls nicht. Zum Beispiel den Mangel an dynamic dispatching, wodurch es absolut ekelhaft wird Reflection in C++ zu nutzen.
-
nman schrieb:
[1] Der Vollständigkeit halber: PHP wurde offensichtlich von einer Horde betrunkener Affen mit verschiedenen schwerwiegenden Lernschwächen geschrieben...
Das scheint keinen zu stören. Schliesslich ist PHP doch ziemlich erfolgreich. :p
-
Z schrieb:
Das scheint keinen zu stören. Schliesslich ist PHP doch ziemlich erfolgreich. :p
Tja. “Millionen Fliegen können nicht irren. Fresst Scheiße.”
-
nman schrieb:
Z schrieb:
Das scheint keinen zu stören. Schliesslich ist PHP doch ziemlich erfolgreich. :p
Tja. “Millionen Fliegen können nicht irren. Fresst Scheiße.”
Hey, der ist ja schwach. Die anderen Fliegen orientieren sich ja tatsächlich daran. Da fällt dir sicher noch etwas besseres ein
MfG SideWinder
-
@SideWinder
Wer orientiert sich an PHP?
-
Azgul schrieb:
Was spricht dagegen D für die Spieleprogammierung einzusetzen?
Was spricht für D? Ich würde nicht sagen, dass ich mich wie ein fanboy gegen Alternativen querstelle. Ich lass mich gerne überzeugen. Vielleicht ist D ja doch was ganz tolles. Aber das, was ich da bisher so von gesehen habe -- man sollte doch meinen, die Erfinder haben überzeugende Argumente auf ihren Webseiten -- hat mich kalt gelassen. Es reichte zumindest nicht dafür, dass ich es selbst ausprobieren wollte. Bin ich blind, dass ich die überzeugenen Argumente nicht sehe?
~john schrieb:
Was spricht gegen C++? D ist nicht soviel anders, als das es den Umstieg rechtfertigen würde.
So kommt mir das auch vor. Es sieht wie ein C++/C# Mischmasch mit eingebauten Typen für dynamische/"assoziative" Arrays und Slices.
~john schrieb:
Die großen Probleme von C++ löst es jedenfalls nicht.
Zum Beispiel den Mangel an dynamic dispatching, wodurch es absolut ekelhaft wird Reflection in C++ zu nutzen.Das -- was immer Du auch damit genau meinst -- soll ein großes Problem sein? Das sehe ich anders. Zumindest war es wohl nicht groß genug, dass Proposals zu dem Thema beim/vom C++ Standardisierungs-Komitee eingereicht wurden. Ich würde behaupten, all das, was sie für C++0x gemacht haben, war wichtiger -- auch der Versuch, direkte Sprachunterstützung für "concepts" einzuführen.
-
Concept sind kein Teil von C++0x mehr. Und andere Teile von C++0x sind in der letzten Treffen(März 2010) auch gefallen.
IMO ist D ein richtig gut Mischung, allerdings ist die Implementierung eher dürftig. Daher denk ich nicht, dass D mehr Akzeptanz bei Entwickler finden wird.
-
krümelkacker schrieb:
[...] auch der Versuch, direkte Sprachunterstützung für "concepts" einzuführen.
Zeus schrieb:
Concept sind kein Teil von C++0x mehr.
Ich habe nicht das Gegenteil behauptet.
Zeus schrieb:
Und andere Teile von C++0x sind in der letzten Treffen(März 2010) auch gefallen.
Ja und?
-
SideWinder schrieb:
Hey, der ist ja schwach. Die anderen Fliegen orientieren sich ja tatsächlich daran. Da fällt dir sicher noch etwas besseres ein
Ich verstehe nicht, was Du damit sagen willst. Keine mir bekannte Sprache orientiert sich an PHP.
Falls Dir das Statement oben zu der war: Verbreitung ist kein Indikator für Qualität, egal wie gerne das manche PHP-Fans hätten.
-
nman schrieb:
Verbreitung ist kein Indikator für Qualität, egal wie gerne das manche PHP-Fans hätten.
Es kommt drauf an, was Qualität für Dich bedeutet. Dein Vergleich mit dem Lieblingsessen der Fliegen könnte bedeuten, dass Dein Qualitätsbegriff ein anderer ist. Vielleicht möchtest Du ihn uns erläutern?
-
Z schrieb:
nman schrieb:
[1] Der Vollständigkeit halber: PHP wurde offensichtlich von einer Horde betrunkener Affen mit verschiedenen schwerwiegenden Lernschwächen geschrieben...
Das scheint keinen zu stören. Schliesslich ist PHP doch ziemlich erfolgreich. :p
Aber nur weil jeder Billig-Webhoster in seinem Angebot PHP drin hat...
*
"Ehm, ich will jetzt mal ein Gästebuch für meine Homepage proggen. Ah, da schau her! Für 99 cent ist da ein Angebot, auf dem ich dynamische Seiten mittels PHP frickeln kann. Cool, wird mein Gästebuch doch noch was!".*PHP ist nicht erfolgreich, weil es so toll ist, sondern weil die User das Zeug vorgesetzt bekommen.
-
Ich finde D eigentlich als C++-Alternative theoretisch interessant. Aber halt nur theoretisch und nicht praktisch interessant. D wird es schwierig haben, weil es nicht offen und vorallem auf zu wenig Plattformen verfügbar ist.
C++ hat seine Haken und Ösen, aber ich kann C++ auf jeder verdammten Plattform programmieren. Egal ob auf Spielekonsolen, Mobile-Telefon oder exotischen Systemen wie den Amiga oder RISC OS. Gerade auf diesen letzt genannten Systemen ist C und C++ die letzt verbliebene ernsthafte Sprache. Aber das zeigt sehr schön die Verbreitung und das unermüdlich Durchhaltevermögen von C und C++!
Wer kennt REBOL? Das ist eine Sprache die auch theoretisch sehr interessant ist. Aber sie ist nicht offen und auch nur auf (zu) wenig Plattformen verfügbar. Also irgendwie ist das doch alles nicht sehr motivierend, außer das man da "reinschnuppert".
Wenn ich C++ lerne, kann ich mein Wissen auf jeder Plattform anwenden. Wenn ich D lerne, bin ich auf zwei oder drei Plattformen beschränkt. Ich kann nicht mal einfachste Algorithmen von Plattform A auf B portieren, weil auf B der D-Compiler fehlt.
Andere Sprachen, wie Lua und Python sind sogar auf RISC OS und Amiga verfügbar. Sie sind offen, und wurden portiert. Wenn ich Lua auf dem PC kann, kann ich das auch auf exotischen Systemen anwenden.
-
Qualitätsmanager schrieb:
Es kommt drauf an, was Qualität für Dich bedeutet. Dein Vergleich mit dem Lieblingsessen der Fliegen könnte bedeuten, dass Dein Qualitätsbegriff ein anderer ist. Vielleicht möchtest Du ihn uns erläutern?
Eigentlich nicht. Ich kenne keine sprachinteressierte Person, die PHP für eine gut entworfene Programmiersprache hält und das Internet ist voll mit Gründen, warum PHP furchtbar ist.
PHP ist leicht oberflächlich lernbar und leicht deploybar. Das sind natürlich nach einer gewissen Metrik Qualitäten, die auf die Verbreitung eine spürbare Auswirkung haben. Allerdings ziehe ich gerne nicht nur derartige Kriterien heran, um die Qualität einer Sprache zu beurteilen. Dabei möchte ich es auch schon wieder belassen, wer große Lust hat, über das Thema zu sprechen, möge mal in #c++ vorbeischaun und mich darauf anquatschen, ich schreibe hier einfach sehr ungerne über derartige Themen.
-
Artchi schrieb:
Z schrieb:
nman schrieb:
[1] Der Vollständigkeit halber: PHP wurde offensichtlich von einer Horde betrunkener Affen mit verschiedenen schwerwiegenden Lernschwächen geschrieben...
Das scheint keinen zu stören. Schliesslich ist PHP doch ziemlich erfolgreich. :p
Aber nur weil jeder Billig-Webhoster in seinem Angebot PHP drin hat...
*
"Ehm, ich will jetzt mal ein Gästebuch für meine Homepage proggen. Ah, da schau her! Für 99 cent ist da ein Angebot, auf dem ich dynamische Seiten mittels PHP frickeln kann. Cool, wird mein Gästebuch doch noch was!".*PHP ist nicht erfolgreich, weil es so toll ist, sondern weil die User das Zeug vorgesetzt bekommen.
Ich denke, PHP ist so erfolgreich, weil auch Leute ganz schnell damit etwas hinbekommen, die vorher nie programmiert haben. Das halte ich für eine gute Sache. PHP erhebt nicht den Anspruch, C++ zu ersetzen. Beide Sprachen haben ihre Anwendungsgebiete.
Ich habe mal einen zweiwöchigen PHP-Kurs mitgemacht. Vorher war ich auch voller Vorurteile, gegen alles was interpretiert wird und nicht direkt auf dem Prozessor läuft. Aber hinterher war ich positiv überrascht, wie einfach und schnell man PHP verwenden kann. Das einzige, was mir immer noch an PHP missfällt, sind die Dollarzeichen vor den Variablen.
-
Artchi schrieb:
PHP ist nicht erfolgreich, weil es so toll ist, sondern weil die User das Zeug vorgesetzt bekommen.
PHP hat das richtige Konzept mit der falschen Sprache. Aber das Konzept ist einfach genial.
Weg von dem CGI Blödsinn den es vorher gab (Scripte in dem cgi-bin ordner) und den Code direkt in den HTML Seiten. dazu das geniale Konzept eines include() und fertig.
Dass dann der rest furchtbar ist, nimmt man dann halt in kauf. Aber integrier mal in eine webseite interaktive teile mit perl oder python. ist ne katastrophe.
diese richtigen webanwendungen kamen ja viel später. und auch da steht php nicht so schlecht da, da du einfach tools für alles hast. cpan-light quasi :p
das sind sachen die man nicht vergessen darf. trotz schlechter sprache ist eben die plattform genial. im prinzip gibts nur 3 sachen die an php schlecht sind:
die sprache
die library
der interpreterder rest ist super
-
Z schrieb:
Ich habe mal einen zweiwöchigen PHP-Kurs mitgemacht. Vorher war ich auch voller Vorurteile, gegen alles was interpretiert wird und nicht direkt auf dem Prozessor läuft.
Uh, "nicht direkt auf dem Prozessor"? Egal.
Ich verwende zahlreiche Sprachen gerne, die nicht in Maschinencode kompiliert werden, habe da weder Vorurteile, noch Berührungsängste. Ich finde auch Sprachen gut, die anfängerfreundlich sind. Das sind nicht die Gründe, aus denen PHP Mist ist.