2009-03-28 10 views
25

Ich habe beschlossen, D zu lernen, und ich frage mich, welche Standardbibliothek ich verwenden soll. Sollte ich Phobos oder Tango benutzen? Was sind die Vor- und Nachteile von jedem?Sollte ich Phobos oder Tango verwenden?

+0

Werfen Sie auch einen Blick hier: dirkgently

Antwort

6

Tango. Es ist objektorientierter, wo es angebracht ist, es enthält Container (wie STL oder Java Collections), es hat ein aktives Entwicklungsteam, es hat mehr Dynamik (es könnte bald in den offiziellen Compiler aufgenommen werden), und es hat echte Dokumentation, einschließlich Learn to Tango with D .

Es sieht so aus, als könnte Tango bald in Walters Veröffentlichungen integriert werden.

+37

Während dieser Kommentar im Jahr 2009 wahr war, als dieser Beitrag geschrieben wurde, ist es nicht mehr der Fall. Tango existiert nicht einmal für D2 und hat jetzt sehr wenig Momentum. Die Entwicklung von Phobos hat sich sehr geöffnet und es wird viel Liebe empfangen. – Dwayne

+0

Es gibt das TangoD2-Projekt, das Tango in die D2-Welt bringt. Es lohnt sich, zumindest einen Blick darauf zu werfen, bis Phobos ein richtiges Stream-IO-Paket bekommt (die Stream-API in Phobos ist veraltet!). – DejanLekic

5
+0

Ich habe den Menschen lesbaren Titel Link – jfs

+0

@FeepingCreature hinzugefügt, kann ich vorschlagen, dieses Dokument irgendwo auf Wiki4D oder als Seite in der Google-Gruppe "D-Programmiersprache" hinzuzufügen? –

7

Ich habe wenig Erfahrung mit beiden hatte (ein bisschen ..)

Phobos ist flacher und Python-like, aber recht unvollständig.

Tango ist mehr Java-ähnlich, es macht einfache Dinge kompliziert.

Ich persönlich bevorzuge mit Phobos, es sei denn, Sie benötigen eine Bibliothek, die auf Tango (wie DWT) abhängt.

+1

Eine Sache, die ich an Tango hasse, ist, dass sie sich mit Phobos unvereinbar macht. – hasen

+0

Tango war ein erstaunliches Projekt. Dieser Kritiker, dass er Java-ähnlich ist, ist Unsinn. Wenn irgend ein Java-Einfluss Tango zur bestausgestatteten Bibliothek machte, die ich bis heute gesehen habe, wenn sie nicht aktiv entwickelt wird ... Phobos war jedoch immer die Standardbibliothek, und deshalb habe ich immer Phobos anstelle von Tango empfohlen ... – DejanLekic

10

Wenn Sie D2 verwenden müssen, dann sollten Sie Phobos verwenden, aber Tango für D2 ist in Entwicklung.

tangobos ermöglicht es, Tango und Phobos gleichzeitig zu verwenden. In D2 arbeiten beide sowieso zusammen, da beide die separaten druntime nutzen.

2

Wenn Sie D2 verwenden, verwenden Phobos

Wenn Sie D1 verwenden, Tango verwenden.

Und Sie müssen D2 lernen, also Phobos verwenden. Einfach, nicht?

Hinweis: Phobos für D2 ist viel leistungsfähiger und größer als für D1.

7

Tango ist derzeit veraltet. Es funktioniert nur mit der alten Version von D. Meiner Meinung nach ist Phobos der einzige Weg nach vorn.

Ich folgte nicht d, als alle Argumente der geteilten Bibliothek gingen, aber von dem, was ich sagen kann, verschwanden viele Gründe für Tango, als D2 veröffentlicht wurde.

Es gibt eine kleine Anstrengung, die darauf abzielt, Tango wiederzubeleben, aber eine Spaltung in der Standardbibliothek tut meiner Meinung nach nur D als Ganzes schaden.

Phobos wird auch bei jeder Veröffentlichung von D fast garantiert unterstützt. Auch wenn Tango erfolgreich auf D2 portiert wird, könnte es leicht wieder aufgegeben werden.

0

Meiner Meinung nach (ohne Boost tatsächlich benutzt zu haben), ist Tango eher Boost, und Phobos ist eleganter. Wie oben erwähnt, ist die Verwendung von Phobos wie Python.

6

Von Dispelling Common D Myths:

Phobos ist D's Standard-lib, period. Tango ist jetzt eine optionale, aber Phobos-kompatible Third-Party-Bibliothek. Das ist alles dazu.

Verwandte Themen