Javas Zukunft?
-
Wer hat die heise-Trolle hier hin geholt?
-
nimmersatt schrieb:
Kammerjäger schrieb:
Nur weil etwas viel benutzt wird, ist es noch lange nicht gut. Schließlich kreisen auch viel Fliegen um Scheiße ...
Falsch. In der IT Branche setzt sich nun mal das in seinem Bereich beste Produkt durch. Unnütze Technologien scheitern eben. Dass Java heutzutage extrem beliebt und erfolgreich ist, ist nur die logische Konsequenz.
Naja, das würde ich nicht sagen. Es gibt schon noch eine ganze Menge andere Dinge, die im IT-Bereich für den Erfolg eines Produktes relevant sind. Da zählt nicht nur technische Überlegenheit, stattdessen ist zum Beispiel auch der Zeitpunkt des Erscheinens relevant. Und da ist .NET zum Beispiel ein paar Jahre zu spät. Das ist eigentlich der zentrale Punkt, warum es .NET gegenüber Java schwer hat: Rund um Java hat sich inzwischen eine riesige Infrastruktur, Community usw. gebildet. Das gibt man nicht einfach so auf, nur um vielleicht in einer Sprache wie C# "Properties" zur Verfügung zu haben. Natürlich gibt es auch noch eine ganze Menge andere Faktoren, die im IT-Bereich zum Erfolg eines Produktes beitragen: Marketing, Preis und so weiter. Zumindest geht es nicht nur um das technisch gesehen beste Produkt. ...andererseits ist IMHO auch der Schluss richtig, dass es sich bei einem Produkt, das sich durchgesetzt hat, nicht um einen völligen technischen Fehlgriff handeln kann.
-
nimmersatt schrieb:
Falsch. In der IT Branche setzt sich nun mal das in seinem Bereich beste Produkt durch. Unnütze Technologien scheitern eben. Dass Java heutzutage extrem beliebt und erfolgreich ist, ist nur die logische Konsequenz.
LOL. Du scheinst noch nicht in der Wirklichkeit angekommen zu sein.
-
Hallo zusammen,
nachdem ich weder per Suche etwas von C++0x bzw. C++xx0
noch auf den ersten 20 Seiten gefunden habe, kann mir jemand mal nen
Link dazu schicken?Danke,
Frank
-
C++ Zukunft schrieb:
nachdem ich weder per Suche etwas von C++0x bzw. C++xx0
noch auf den ersten 20 Seiten gefunden habe, kann mir jemand mal nen
Link dazu schicken?"C++0x" ist mehr oder weniger ein Arbeitsname für den nächsten C++ Standard. Dabei steht das 0x für das Jahr, in dem der Standard erscheinen soll. ...also "noch in diesem Jahrzehnt". Solche Kreationen wie "C++xx0" kommen zu stande, wenn Leute nicht mehr so ganz daran glauben, dass das noch etwas in diesem Jahrzehnt wird.
-
Huhu,
mich würde mal interresieren wer sich diesen neuen C++0x Standard ausdenkt... soweit ich weiß gibt es dafür keine eigene Institution...
.Net ist Microsoft und Java von Sun...
Bei C++ seh ich immer nur viele Firmen die ihren eigenen Kuchen backen und am Ende wird dies dann zusammengeschustert... das sieht man schon an der Standard librabry
eidgruß! Sieben!nv iM nov
-
Sieben schrieb:
Huhu,
mich würde mal interresieren wer sich diesen neuen C++0x Standard ausdenkt... soweit ich weiß gibt es dafür keine eigene Institution...
.Net ist Microsoft und Java von Sun...
Bei C++ seh ich immer nur viele Firmen die ihren eigenen Kuchen backen und am Ende wird dies dann zusammengeschustert... das sieht man schon an der Standard librabry
eidgruß! Sieben!nv iM nov
Huhu dich selbst, schon mal was vom ANSI Komitee gehört (in dem sitzt im Übrigen auch MS und andere Firmen)?
-
Wenn man mal nach dem neuem C++0x Standard sucht, bekommt man nur recht diffuse Informationen darüber, wie C++ in der Zukunft aussehen soll (Was ich finde sind meist nur irgendwelche Wünsche, die geäußert wurden).
Gibt es eigentlich irgendwo eine konkretere Zusammenstellungen, wie C++ in Zukunft erweitert wird. Schließlich möchte man den Standard noch in diesem Jahrzehnt veröffentlichen und da sollte man langsam etwas konkreter werden.
-
ANSI ist falsch, da ANSI eine nationale Organisation ist -> USA. Also das amerikanische DIN.
Definiert wird der C++ Standard im ISO (International) den dann die nationalen Organ. übernehmen.
Das C++ Standard Kommittee ist eine Ansammlung von Personen, z.B. Herb Sutter (Microsoft), Bjarne Stroustrup (AT&T) u.v.a. die das ganze organisieren. Meetings gibts alle zwei Monate, die letzte war glaub ich in Berlin, die davor in bei Washington DC.
Bei diesen Meetings kann jeder (ihr und ich!) einen Vorschlag einbringen, für den Standard. Z.B. eine neue Klasse oder neue Sprachfeatures oder oder... Dieser wird dann von den Mitgliedern des Kommittees entweder angenommen oder abgelehnt.
So, wie ist der aktuelle Stand?
Vorschläge für neue Sprachfeatures und Standard-Lib-Erweiterungen werden NICHT mehr angenommen. Soll heißen, hier läuft die letzte Phase wo alles fest gezurrt wird.
Der TR1 (Technical Report 1) ist auch schon fertig und dokumentiert. TR sind Libraries die eine Art optinale Lib sind, neben der Minimal-Lib (so wie wir sie heute kennen). In der TR1 sind z.B. die ganzen Boost-Smartpointer rein gekommen. Die gehören also ab sofort zum TR1 des ISO-C++ Standards!
Vorschläge für den TR2 werden noch bis zum Oktober 2006 angenommen. Für den TR2 hat das Kommittee den Wunsch geäußert, XML-Libs, Socket-Libs und andere Libs zu sehen. Zur Zeit liegen für den TR2 boost::filesystem vor und noch eine andere Lib, die mir entfallen ist. Wobei Vorschläge für TRs keine fertige Implementierung sein müssen.
So, wenn TR2 fertig ist, kanns 2009 mit dem neuen Standard los gehen. Bis dahin soll der ganze Papierkram fertig sein, der ja bei der ISO festgeschrieben werden muß.
Wer jetzt sagt, das bei C++ nichts passiert, hat keine Ahnung. :p
Übrigens, MS-C++-Compiler-Chefin hat schon in ihrem Blog geschrieben, das die MS-Compiler TR1 unterstützen werden.
Wo kann man den aktuellen Stand einsehen?
Hier, auf der Website des Kommittees:
http://www.open-std.org/jtc1/sc22/wg21/Viele Dokumente kann man einsehen, einige sind mit Passwort gesperrt. Viel Spaß beim Stöbern!
-
Artchi: Das mit ISO - ANSI verwechsel ich immer
Wer jetzt sagt, das bei C++ nichts passiert, hat keine Ahnung.
Aber es geht ein wenig langsam voran, findest nicht?
-
Das will man bei C++ so. Im Grunde find ich es auch nicht verkehrt, wenn dafür alles ordentlich designed ist. (Ich finde die Standardbibliothek zwar nicht ordentlich designed, aber das geht wahrscheinlich nur mir so. )
-
Lest nochmal die Überschrift. Dann merkt ihr das ihr Offtopic seid.
-
GPC schrieb:
Wer jetzt sagt, das bei C++ nichts passiert, hat keine Ahnung.
Aber es geht ein wenig langsam voran, findest nicht?
Langsam nicht unbedingt. Denn neue Sprachfeatures vermisse ich nicht gerade, das kann ruhig bis 2009 dauern. Aber was man versäumt hat, waren solche Ideen wie die TRs viel früher aufzugreifen. Jetzt und heute wären die beiden TRs bereits nötig, also die offizielle Verfügbarkeit. Das haben die tatsächlich zu spät in Angriff genommen. Naja, vielleicht wird der nächste VC++ den TR1 beinhalten. Die VC++-Produktchefin von MS hat da jedenfalls sowas angedeutet. Sie meinte, das die nächsten VC++-Version die TRs supporten werden. Hoffe sie meint damit auch wirklich, das die dann dabei sind und nicht nur kompatinel sind, und man sich die noch besorgen muß.
Da der TR1 ja fertig definiert ist, wäre es gut möglich, das er noch vor dem C++0x den Compilern beiliegt. Hoffe MS wird da mächtig dran arbeiten.
-
Was mir am meisten fehlt, sind Netzwerkpackete und ne GUI. SmartPointer hab ich eh schon lange selber programmiert, aber gut, dass jetzt die von boost reinkommen.
Optimizer schrieb:
Das will man bei C++ so. Im Grunde find ich es auch nicht verkehrt, wenn dafür alles ordentlich designed ist. (Ich finde die Standardbibliothek zwar nicht ordentlich designed, aber das geht wahrscheinlich nur mir so. )
Was genau gefällt dir denn daran nicht? IIRC gefiel dir das Design der Java Standardlib sehr gut, nicht?
-
GPC schrieb:
Was mir am meisten fehlt, sind Netzwerkpackete und ne GUI. SmartPointer hab ich eh schon lange selber programmiert, aber gut, dass jetzt die von boost reinkommen.
Wie gesagt, werden wir wohl im TR2 bekommen. Die asio Lib wird wahrscheinlich beim Kommittee vorgeschlagen. Weiß jetzt leider nicht ob sich da jemand dessen aus der Boost-Gemeinde angenommen hat. War aber in der Mailingliste jedenfalls die Rede von.
-
Wie wärs wenn ihr eure parallele Diskussion in den Hauptthread im RUDP-Forum verlegt, damit alle was davon haben?
MfG SideWinder
-
GPC schrieb:
Optimizer schrieb:
Das will man bei C++ so. Im Grunde find ich es auch nicht verkehrt, wenn dafür alles ordentlich designed ist. (Ich finde die Standardbibliothek zwar nicht ordentlich designed, aber das geht wahrscheinlich nur mir so. )
Was genau gefällt dir denn daran nicht? IIRC gefiel dir das Design der Java Standardlib sehr gut, nicht?
Ja, das gefällt mir. Ich kann in der C++ stdlib aber keine großen Ähnlichkeiten dazu erkennen. Punkte, die mich persönlich besonders stören, sind:
- affige Namen für Methoden wie begin() und end(), good(), bad(), what(), string macht es mit length() und size() schließlich komplett unintuitiv
- Das Erkennen von EOF bei streams ist affig. Und nach jedem lesen muss man entweder auf Fehler prüfen oder schaltet Exceptions an, die dann auch bei EOF fliegen. Frägt man nach what(), um herauszufinden, wieso eine Datei nicht geöffnet werden konnte, steht dann was hilfreiches wie ios_base::failure da
- Die Iteratoren gefallen mir nicht. In vielen anderen Bibliotheken ist der Iterator nicht bei one-past-end ungültig, sondern am Anfang. Dann braucht man keine for-schleife mit Vergleich auf end() (was ich mir auch einen Tick ineffizienter vorstelle), sondern man kann schreiben while( it.hasNext() ) { ... }
- Die Datenstrukturen sind IMHO unglücklich benannt (und zu wenige gibt es davon). Aus dem Namen std::map kann ich nicht erkennen, dass die map die Elemente sortiert. Ich könnte dahinter genauso gut eine Hashtabelle vermuten. TreeMap oder SortedMap wären IMHO bessere bezeichnen. Das selbe gilt für std::list.
-
Ich kann in der C++ stdlib aber keine großen Ähnlichkeiten dazu erkennen.
Na ja, C++ verfolgt wohl einen anderen Ansatz...
Aber Python kann man z.T. mit Java vergleichen, die lib finde ich auch klasse.Das Erkennen von EOF bei streams ist affig. Und nach jedem lesen muss man entweder auf Fehler prüfen oder schaltet Exceptions an, die dann auch bei EOF fliegen. Frägt man nach what(), um herauszufinden, wieso eine Datei nicht geöffnet werden konnte, steht dann was hilfreiches wie ios_base::failure da
Yup, das ist mir auch schon mehrmals übel aufgestossen, folgender Code ist eigentlich unsicher:
ifstreamf ifs("test.txt"); if (!ifs) return 1; while (ifs.good()) { /*blub*/ }
Hinterher weiß ich aber immer noch nicht, ob's jetzt ein eof war, irgendein fail oder ein bad!
Was ich auch ein bisschen unschön finde (eher kosmetischer Natur), ist die Kleinschreibung der Klassen.
-
Der C++0x Standard wird garnicht sooo wichtig sein, obwohl er schon ziemlich coole Features bekommen wird (Active und Future Objects werden ein neues Zeitalter einleiten). Interessanter wird eher der TR1 und TR2 von C++.
Also Future-Objects kenne ich schon aus anderen Sprachen. Hierbei muss es sich jedoch um etwas anders handeln, da es ohne lazy evaluation keinen Sinn macht. Hast du vielleicht einen Link?
-
Ich hatte mir damals den PDC-Vortrag von Herb Sutter per Video-Stream angesehn, da hatte er das alles angerissen. Hab im Netz seine Powerpoint-Präsi gefunden:
http://216.55.183.63/pdc2005/slides/TLN309_Sutter.pptHier noch der Boost-Mailingthread durch den ich überhaupt auf den Sutter-Vortrag aufmerksam wurde:
http://lists.boost.org/Archives/boost/2005/10/96080.phpHier das Video (dauert sehr lange, glaub mind. eine Stunde!):
http://microsoft.sitestream.com/PDC05/TLN/TLN309_files/Default.htm#nopreload=1&autostart=1