Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » Die Programmiersprache D

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ] [ 6 ]
020
16.05.2006, 12:40 Uhr
Bruder Leif
dances with systems
(Operator)



Zitat von (un)wissender:
Früher dachte ich, C++ sein das Non Plus Ultra, weil mächtig. Heute finde ich die Sprache immer noch gut, aber mittlerweile versuche ich Projekte so zu gestalten, dass sie so schnell und einfach wie möglich über die Bühne gehen.


Full ack. Ich steh gerade vor dem selben Problem:

Eigentlich würde ich das neue System gerne in C++ hochziehen (weil schlank, schnell und kostenlos), mit FLTK als GUI (weil schlank, schnell und kostenlos), und PostgreSQL als Datenbank (weil schlank, schnell und kostenlos).

Aber das ganze soll dieses Jahr noch fertig werden, also wird wahrscheinlich Python (weil kürzere Entwicklungszeiten), GTK (weil mehr Widgets und "kundenverträglicheres" Aussehen) und MS-SqlServer (weil Kundenwunsch einfachere Interoperabilität mit MS-Office und vorhandene Tools) draus.

Was die "bessere" zweier Sprachen ist, kommt immer auf die Situation an. Analog für Datenbankserver, GUI-Toolkits und so weiter...
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
021
16.05.2006, 13:56 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)


Ich halte es für sehr wichtig, neue Technologien zu beherrschen, und auch ich programmiere sehr gerne in C#, aber man verliert meiner Meinung nach die Wurzeln aus den Augen. Wenn man vergisst, worauf all diese Säulen, heißen Sie nun Java, .Net oder Garbage Collection, errichtet sind, dann stürzen Sie eines Tages ein und man fängt da an, wo man Jahre zuvor glaubte, etwas besseres gefunden zu haben.

Wenn der durchschnittliche Programmierer glaubt, es reicht, wenn er in VC# ein Formular zusammenklickt und auf Button-Klicks eventmäßig reagiert, so ist das schön für ihn. Er wird jedoch nie die Zusammenhänge im System, die Technik, auf der dies alles basiert, verstehen. Er wird niemals in der Lage sein, native Anwendungen zu schreiben, die frei und unabhängig von irgendwelchen Pseudomonopolen gesteuert werden. In dem Moment, in dem keine Garbage Collection mehr da ist, in dem Moment, wo man seine Verantwortung als Programmierer nicht mehr auch die fehlerträchtige Software irgendwelcher Redmonder und Konsorten abschieben kann, da wird der "programmierer" sich viel eher als ein "bastler" herausstellen, der zwar die vorhandenen Klöpse zu einem brauchbaren Ergebnis zusammenwürfeln kann, jedoch niemals wirklich selbst programmieren wird.

Ihr denkt, Garbage Collection ist ein Schritt in die Zukunft? Ich denke, es ist der Anfang vom Ende, denn der Programmierer schiebt die Verantwortung von sich weg! Früher hieß es: "Etwas funktioniert nicht - Behebe den Fehler!". Nach dieser neuen Moral wird es bald heißen "Etwas funktioniert nicht - Behebe den Fehler", und dann hat er behoben zu sein. Und wenn er trotz einiger Einstellungen in den VMs immer noch da ist ... Tja, dann ist der Programmierer wohl am Ende mit seinem Esperanto. Es ist bequemer, durchaus, es ist der einfachste Weg, durchaus, aber es beraubt mich, auch wenn viele das nicht einsehen wollen, Teile meiner Möglichkeiten, und damit ist ein ein Schritt zurück!

Das die Firmen ihre teuren Angestellten lieber halbfertige Software oder irgendwelche PE-Module ausliefern lässt, als gut getestete, native und überlegte Anwendungsprogramme, ist klar, aber teilen muss man diese Einstellung nicht.

Dieser Post wurde am 16.05.2006 um 13:56 Uhr von Reyx editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
022
16.05.2006, 15:18 Uhr
(un)wissender
Niveauwart


Also ich kann dir soweit zustimmen, als dass in Java und C# viele Trollo-Programmierer rumlaufen. In C/C++ aber auch, nur richten sie dort mehr Schaden an. Vielleicht soviel, dass das Programm nicht fertig wird.
Das Sprachen wie Java eine solche Menge kapseln und den Programmierer an die Hand nehmen hat sicherlich den Nachteil, dass dieser sich oft in einer (falschen) Sicherheit wiegt.
Trotzdem, in Java und C# kann man Allerweltsprogramme halt viel schneller und besser entwickeln. Und in diesem Bereich ist das Zukunft und Gegenwart.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
023
16.05.2006, 15:59 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)



Zitat von (un)wissender:
Trotzdem, in Java und C# kann man Allerweltsprogramme halt viel schneller und besser entwickeln. Und in diesem Bereich ist das Zukunft und Gegenwart.


Da kann ich dir nur zustimmen, da ich selbst beruflich ausschließlich mit Java arbeite, allerdings geht ein solcher Luxus momentan noch sehr auf Kosten der Performance. Die "perfekte" Programmiersprache wäre wohl High Performance auf Standard Systemen und eben die Möglichkeit, sehr schnell darin zu entwickeln. Das fehlt uns noch. Um nicht off-topic zu sein: Vielleicht wollte das der Entwickler von D erreichen
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
024
16.05.2006, 16:19 Uhr
~MarkusT
Gast



Zitat von (un)wissender:
Früher dachte ich, C++ sein das Non Plus Ultra, weil mächtig. Heute finde ich die Sprache immer noch gut, aber mittlerweile versuche ich Projekte so zu gestalten, dass sie so schnell und einfach wie möglich über die Bühne gehen.


C++ ist immer noch eine der ausgereiftesten, wenn nicht die ausgereifteste Sprache die existiert! Sie deckt eine dermaßen große Bandbreite in der Softwareentwicklung ab, wie kaum eine andere Sprache. Sie hat wesentliche Sprachelemente hinzugefügt die von vielen Programmiersprachen übernommen wurden. Alle beiden erfolgreichen Abkömmlinge, nämlich C# und Java orientierten und orientieren sich an C++.


Zitat von Bruder Leif:
Was die "bessere" zweier Sprachen ist, kommt immer auf die Situation an. Analog für Datenbankserver, GUI-Toolkits und so weiter...


Das ist wohl war! Die Auswahl der Programmiersprache richtet sich stark nach den Anforderungen und Gegebenheiten. Die Produktivität ist aber ein entscheidender Faktor in der Wirtschaft. C++ besitzt keine dermaßen große Standardbibliothek wie Java oder C#/.NET. Ich denke hier insbesondere an ein GUI Framework oder an eine Socket Bibliothek. J2EE und .NET sind riesige Frameworks die dem Entwickler für fast jedes Problem die fertigen Befehle zur Verfügung stellen. Allein die FCL des .NET Frameworks wächst in einer dermaßen rasenden Geschwindigkeit das einem Angst und Bange werden kann. Ständig kommen neue Methoden und Klassen hinzu.

Die C++ STL hingegen ist sehr allgemein gehalten. Keine Programmiersprache stellt einem jedoch effizientere und umfangreichere Algorithmen und Datenstrukturen zur Verfügung als C++. Man denke beispielsweise an Trees insbesondere an B-Trees. Viele große Projekte, wie SQLite, MySQL usw. setzen diese effektiv mit C/C++ um. Die Flexibilität und Performance von C/C++ ist unerreicht! Algorithmen werden so gut wie immer in C/C++ implementiert. Diese Komplexität und der Mangel an einem produktiven Framework haben jedoch ihren Preis gefordert. Projekte die darauf aus sind Standard-Applikationen schnell und solide umzusetzen werden C/C++ nur selten auswählen. Große Projekte werden aber immer noch oft mit C/C++ aufgezogen. Microsoft hat die komplette CLR in C/C++ implementiert. Das Unternehmen wird weiterhin seine Produktpalette nach eigenen Angaben zu über 50% in C/C++ realisieren.

Leute die aber im Bereich der Mobile Devices entwickeln werden mit hoher Wahrscheinlichkeit kein C/C++ nehmen sondern Java. Das heißt wir kommen zu dem oben geschriebenen Satz. "Es kommt schlicht und ergreifend auf die Situation an!" . Wer jedoch eine Programmiersprache wirklich lernen will, der sollte zu C/C++ greifen. Nur so kann man wirklich lernen zu verstehen. Anschließend tritt man über zu C# oder Java usw.


Zitat von Reyx:
Ich halte es für sehr wichtig, neue Technologien zu beherrschen, und auch ich programmiere sehr gerne in C#, aber man verliert meiner Meinung nach die Wurzeln aus den Augen. Wenn man vergisst, worauf all diese Säulen, heißen Sie nun Java, .Net oder Garbage Collection, errichtet sind, dann stürzen Sie eines Tages ein und man fängt da an, wo man Jahre zuvor glaubte, etwas besseres gefunden zu haben.


Naja, ganz so drastisch sehe ich das nicht, obwohl ich zum großen Teil deiner Meinung bin. Das Hauptproblem besteht in der hohen Abstraktion! Der Programmierer wird vollständig von der Maschine entkoppelt. Java und C#/.NET sind verwaltete Programmiersprachen mit einem völlig anderen Konzept! Die virtuelle Maschine kontrolliert deinen Code. Sie ist es die entscheidet was, wann, wo und wie ausgeführt wird! Microsoft hat mit dem Prinzip der Assemblys auch ein neues Sicherheitssystem mit dem Namen "Code Access Security" eingeführt. In Zukunft werden Programme nur dann ausgeführt wenn die entsprechenden Rechte vom Programm geliefert werden - siehe "starker Name" in .NET. Dies eröffnet eine neue Ära in der Anwendungserstellung und Ausführung. DRM rückt näher und näher. Man sollte sich also klar machen das der eigene Code unter die indirekte Kontrolle großer Konzerne wie Sun und Microsoft fällt. Ohne installiertem .NET oder J2EE läuft dann nichts mehr. Natürlich ist bereits mit Windows NT und der Trennung von Kernel und User Mode eine Abspaltung vonstatten gegangen, aber längst nicht so wie das in Zukunft sein wird.


Zitat von Reyx:
Wenn der durchschnittliche Programmierer glaubt, es reicht, wenn er in VC# ein Formular zusammenklickt und auf Button-Klicks eventmäßig reagiert, so ist das schön für ihn. Er wird jedoch nie die Zusammenhänge im System, die Technik, auf der dies alles basiert, verstehen. Er wird niemals in der Lage sein, native Anwendungen zu schreiben, die frei und unabhängig von irgendwelchen Pseudomonopolen gesteuert werden. In dem Moment, in dem keine Garbage Collection mehr da ist, in dem Moment, wo man seine Verantwortung als Programmierer nicht mehr auch die fehlerträchtige Software irgendwelcher Redmonder und Konsorten abschieben kann, da wird der "programmierer" sich viel eher als ein "bastler" herausstellen, der zwar die vorhandenen Klöpse zu einem brauchbaren Ergebnis zusammenwürfeln kann, jedoch niemals wirklich selbst programmieren wird.


Das ist das Problem. Mir begegnen in Foren immer mehr Leute die gleich mit C# angefangen haben zu programmieren. Ich sehe das sehr kritisch, da man davon ausgehen kann das es in Zukunft mehr und mehr Programmierer geben wird die von der zugrundeliegenden Technik immer weniger verstehen. Jeffrey Richter, ein wichtiger .NET Berater und langjähriger Publizist bei Microsoft hat das selbst mal formuliert. Nur der der versteht wie die unterliegenden Schichten funktionieren wird seine eigenen Programme besser und effektiver schreiben können. Ich habe selbst C/C++ lange Jahre verwendet und lese mich derzeit durch das Standardwerk "Expertenwissen zur CLR und dem .NET-Framework" weil ich der Meinung bin man sollte sich mit der internen .NET Technik befassen wenn man schon das Framework verwendet. Ich bin kein .NET Gegner, im Gegenteil ich finde das .NET Framework sogar genial konzipiert und ich gönne jedem Unternehmen die Produktivität. Aber ein Softwareentwickler der nicht einmal weiß was genau Zeiger sind, wie der Speicher organisiert wird, wozu der Stack gut ist, wozu der Heap der wird meiner Meinung nach sein Leben lang ein Fachidiot mit begrenztem Horizont sein und hätte sich vielleicht ein anderes Tätigkeitsfeld aussuchen sollen.


Zitat von Reyx:
Ihr denkt, Garbage Collection ist ein Schritt in die Zukunft? Ich denke, es ist der Anfang vom Ende, denn der Programmierer schiebt die Verantwortung von sich weg! Früher hieß es: "Etwas funktioniert nicht - Behebe den Fehler!". Nach dieser neuen Moral wird es bald heißen "Etwas funktioniert nicht - Behebe den Fehler", und dann hat er behoben zu sein. Und wenn er trotz einiger Einstellungen in den VMs immer noch da ist ... Tja, dann ist der Programmierer wohl am Ende mit seinem Esperanto. Es ist bequemer, durchaus, es ist der einfachste Weg, durchaus, aber es beraubt mich, auch wenn viele das nicht einsehen wollen, Teile meiner Möglichkeiten, und damit ist ein ein Schritt zurück!

Das die Firmen ihre teuren Angestellten lieber halbfertige Software oder irgendwelche PE-Module ausliefern lässt, als gut getestete, native und überlegte Anwendungsprogramme, ist klar, aber teilen muss man diese Einstellung nicht.


Wie gesagt, die Vorteile von .NET sind aber herausragend.

- Ich habe ein konsistentes Programmiermodell: Allen Anwendungsdiensten steht ein eiheitliches OO Modell zur Verfügung.
- Vereinfachtes Programmiermodell: Keine Registrierung mehr, keine GUID, keine HRESULTS usw.
- Was einmal läuft läuft überall: Ein .NET Programm läuft auf allen Systemen die das .NET Framework brereitstellen. Keine DLL-Hell mehr. Die Komponenten sind Teil der Assemblys.
- Vereinfachte Bereitstellung: Kein komplexer Installer ist mehr erforderlich. Die Anwendung läuft aus dem Verzeichnis heraus und schreibt sich nicht überall in das System. Dadurch ist die Deinstallation ein Kinderspiel.
- Plattformunabhängigkeit: Die Plattformunabhängigkeit ist wesentlich besser als die von Java. .NET realisiert ein Modell das vollständig ECMA standardisiert ist. Dagegen ist Java Sun's Eigentum und hat nie ein dermaßen konsistentes Modell dargestellt.
- Vollständige Intergration verschiedener Programmiersprachen: In .NET ist die Wahl der Programmiersprache vollkommen egal. Ob VB.NET, C# oder J#, alles wird in eine einheitliche IL kompiliert.
- Einfacheres Wiederverwenden von Code.
- Automatische Speicherverwaltung.
- Typsicherheit: Ein Integer ist auf einer 32 Bit Maschine auch wirklich genauso groß wie auf einer 64 Bit Maschine! Der Code springt whrend der Ausführung nur an bekannte Stellen. Auf diese Weise werden viele Fehler ausgeschlossen.
- Sehr komfortables Debuggen möglich: Übergreifendes Debuggen wird von der CLR unterstützt.
- Konsistente Fehlerverarbeitung: Komplettes Exception-Handling wird im gesamten .NET Framework zur Verfügung gestellt.
- Sicherheit: Der Codezugriff ermöglicht es schadhafte Programme leicht auszuschließen. Nur vertrauenwürdige Assmebly werden ausgeführt. Ähnlich dem heute schon realen WDM.
- Interop Fähigkeiten: Interop mit unmanaged Code wird von .NET sehr leicht ermöglicht. Viel besser als das JNI in Java. Ich kann eine performante DLL in C/C++ schreiben und aus C# heraus aufrufen.

u.v.m.

Man verliert einen beträchtlichen Teil der Verantwortung und Kontrolle, gewinnt aber zahlreiche Vorteile. Man muss sich also überlegen was die eigene Software leisten soll und was man erreichen möchte.

Gruß
Markus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
025
16.05.2006, 16:34 Uhr
~MarkusT
Gast



Zitat von J-jayz-Z:
Die "perfekte" Programmiersprache wäre wohl High Performance auf Standard Systemen und eben die Möglichkeit, sehr schnell darin zu entwickeln. Das fehlt uns noch. Um nicht off-topic zu sein: Vielleicht wollte das der Entwickler von D erreichen


.NET wird dich näher an so eine "Programmiersprache" bringen als jede bisherige Plattform. Und das um einiges besser als es Java getan hat .

BTW: Wir sind doch sowieso schon im OffTopic Bereich/Forum .

Gruß
Markus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
026
16.05.2006, 16:40 Uhr
virtual
Sexiest Bit alive
(Operator)



Zitat von Reyx:

Wenn der durchschnittliche Programmierer glaubt, es reicht, wenn er in VC# ein Formular zusammenklickt und auf Button-Klicks eventmäßig reagiert, so ist das schön für ihn. Er wird jedoch nie die Zusammenhänge im System, die Technik, auf der dies alles basiert, verstehen. Er wird niemals in der Lage sein, native Anwendungen zu schreiben, die frei und unabhängig von irgendwelchen Pseudomonopolen gesteuert werden.


Na ... und?
Ich fahre auch Auto, ohne wissen zu müssen, wie es funktioniert Und auch ich bin nicht in der Lage, kompliziertere Änderungen an einem solchen durchzuführen. Wirklich stören tut es mich im übrigen nicht.

Es ist schön, wenn jemand bis ins Detail weiß, was er/sie tut. Aber es ist nicht zwingend erforderlich, selbst nicht für einen C Programmierer. Ich habe oft den Eindruck, als würde C und C++ als die Sprache angesehen, welche denjenigen, der sie beherrscht in irgendeiner weise adelt. Interessanterweise wird dies insbesondere von C und C++ Programmieren auch am meisten propagiert.

C# und java sind eben einfach Fortschritt, was impliziert, daß C und C++ für den Löwenanteil der Softwareentwicklung das gestern darstellen. Das kann man recht einfach an der Nachfrage der jeweiligen Spezialisten in den Jobsuchmaschinen nachprüfen.

Die Frage nach Monopolen ist ein anderes Paar schuh, das hat erstmal nichts mit der Frage zu tun, ob eine Sprache sinnvoll ist oder nicht.



Zitat:

In dem Moment, in dem keine Garbage Collection mehr da ist, in dem Moment, wo man seine Verantwortung als Programmierer nicht mehr auch die fehlerträchtige Software irgendwelcher Redmonder und Konsorten abschieben kann, da wird der "programmierer" sich viel eher als ein "bastler" herausstellen, der zwar die vorhandenen Klöpse zu einem brauchbaren Ergebnis zusammenwürfeln kann, jedoch niemals wirklich selbst programmieren wird.



Tja, aber zB Java hat nun mal eine Garbage Collection, warum sollte sie nun plötzlich weg sein? Java ist eben eine Sprache, die dich bestimmte Fehler nicht mehr machen läßt. Dass Du das nicht gut findest, ist dein gutes Recht, nur würde ich es kompett anders sehen.


Zitat:

Ihr denkt, Garbage Collection ist ein Schritt in die Zukunft? Ich denke, es ist der Anfang vom Ende, denn der Programmierer schiebt die Verantwortung von sich weg! Früher hieß es: "Etwas funktioniert nicht - Behebe den Fehler!". Nach dieser neuen Moral wird es bald heißen "Etwas funktioniert nicht - Behebe den Fehler", und dann hat er behoben zu sein. Und wenn er trotz einiger Einstellungen in den VMs immer noch da ist ... Tja, dann ist der Programmierer wohl am Ende mit seinem Esperanto. Es ist bequemer, durchaus, es ist der einfachste Weg, durchaus, aber es beraubt mich, auch wenn viele das nicht einsehen wollen, Teile meiner Möglichkeiten, und damit ist ein ein Schritt zurück!



Also erstens ist garbageCollection nicht das Ziel sondern einfach Mittel zum Zweck. Dh wenn eine Sprache eine andere technische Realisierung bietet, um einfach sicher und wartungsfreundlich zu sein, dann würde mich das nicht stören. Es würde mich aber nur dann freuen, wenn es smarter als ein GC wäre.
Deine Befürchtungen hinsichtlich der Fehlerbehebung teil ich nicht. Zum einen ganz einfach deshalb, daß ein C/C++ im Schnitt mehr Fehler enthält als ein Java Programm, zum anderen weil die Frage, wie hartnäckig man Fehler erforscht und behebt/workarounds entwickelt nicht von der Sprache, sondern von der Diziplin des Programmierers abhängt.



Zitat:

Das die Firmen ihre teuren Angestellten lieber halbfertige Software oder irgendwelche PE-Module ausliefern lässt, als gut getestete, native und überlegte Anwendungsprogramme, ist klar, aber teilen muss man diese Einstellung nicht.


Ob man testet und überlegt hat nun überhaupt nichts mehr mit der Sprache zu tun. Aus dem satz könnte man schließen, daß Du der Meinung bist, daß Programme, welche mit Java o.ä. geschrieben sind, nicht vorher designed wurden? - Da muß ich dich enttäuchen: ich mach den ganzen Tag nichts anderes als mir Designs für java programme auszudenken. Und wenn ich mir einfach mal die Bugreports von bereits realisierten Lösungen ansehe muß ich sagen: C/C++ sehen da einfach nur noch alt aus und das, obwohl die meisten Entwickler hier zwar 15 jahre C/C++ ehrfahrung, aber teilweise nur 1-5 Jahr Java erfahrung mitbringen.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
027
16.05.2006, 16:53 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn
(Operator)



Zitat von virtual:
zum anderen weil die Frage, wie hartnäckig man Fehler erforscht und behebt/workarounds entwickelt nicht von der Sprache, sondern von der Diziplin des Programmierers abhängt.

... was ebenfalls die ach so verhassten Zeiger betrifft ...



Zitat von virtual:
Ob man testet und überlegt hat nun überhaupt nichts mehr mit der Sprache zu tun. Aus dem satz könnte man schließen, daß Du der Meinung bist, daß Programme, welche mit Java o.ä. geschrieben sind, nicht vorher designed wurden? - Da muß ich dich enttäuchen: ich mach den ganzen Tag nichts anderes als mir Designs für java programme auszudenken. Und wenn ich mir einfach mal die Bugreports von bereits realisierten Lösungen ansehe muß ich sagen: C/C++ sehen da einfach nur noch alt aus und das, obwohl die meisten Entwickler hier zwar 15 jahre C/C++ ehrfahrung, aber teilweise nur 1-5 Jahr Java erfahrung mitbringen.

Falsch, das war nicht meine Aussage. Ich halte schlichtweg nichts von PE-Code, mehr wollte ich damit nicht aussagen; für mich ist das so, als wenn ich ein Word-Makro schreibe und als eigenes Programm vermarkte. Ohne .Net - Geht nicht. Was wenn MS irgendwann die .Net-Schiene schließt, z.B. für einen Nachfolger? Autsch! Was, wenn Sun irgend eine geniale neuerung in ihre JRE einbauen, die das verhalten bisheriger Programme ändert? Autsch! Mit nativem Code wird dies nie passieren! Spekulation, ok, aber alleine die Möglichkeit ist mir zuwieder.

Noch mal: Ich will .Net nicht schlecht machen, und Java auch nicht. Aber ich halte es schlichtweg für unsinn, C++ (oder auch C) immer überall als "Gestern" zu bezeichnen. Das ist es nicht und wird es auch nie sein. Das "modernere" Sprachen "modernere" Programmiermöglichkeiten bieten steht außer Frage, aber dass hat meiner Meinung nach nichts mit der Qualität einer Programmiersprache zu tun. Auch Fortran wird heute noch programmiert, und Assembler auch ... Und beides wird zwar als lowlevel bezeichnet (bzw. bei Fortran schon ein Stückchen höher), aber keinesfalls als Vergangenheit, Gestern etc.

Ich halte nur manche der "revolutionären" Erfindungen, die so hoch propagiert werden, für schlecht.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
028
16.05.2006, 16:57 Uhr
ao

(Operator)



Zitat von Reyx:
Wenn der durchschnittliche Programmierer glaubt, ... jedoch niemals wirklich selbst programmieren wird.

Ach was. Genau dasselbe kann man über C++-Entwickler sagen, die "nur noch" C++ können, aber nicht mehr Assembler oder Maschinensprache. Man muss nicht alle Grundlagen mit sich rumschleppen, um auf der höheren Schicht klarzukommen.

Zitat:
Ihr denkt, Garbage Collection ist ein Schritt in die Zukunft?

Für die Mainstream-Anwendungen eindeutig ja. Kernelmode-Treiber müssen wohl leider auch weiterhin ohne auskommen, obwohl es nicht ganz verkehrt wäre, wenn man sich hier den einen oder anderen Bluescreen ersparen könnte.

Zitat:
Ich denke, es ist der Anfang vom Ende, denn der Programmierer schiebt die Verantwortung von sich weg!

Das ist nicht neu, das tun sie schon seit Erfindung der statischen Bibliothek.

Zitat:
Früher hieß es: "Etwas funktioniert nicht - Behebe den Fehler!".

... was viel zu oft hinauslief auf "Kannst du irgendwie dran vorbeiprogrammieren?" und nicht "Wir sorgen dafür, dass es an Ort und Stelle repariert wird" - wie es richtig gewesen wäre.

Zitat:
Das die Firmen ihre teuren Angestellten lieber halbfertige Software oder irgendwelche PE-Module ausliefern lässt, als gut getestete, native und überlegte Anwendungsprogramme

Jetzt klingst du wie die Microsoft-Trolle im Heise-Forum: "... meine Profi-Kollegen und ich setzen lieber auf die exzellenten Produkte des Weltmarktführers aus Redmond als auf die Frickelware von langhaarigen Kiffern mit Taxischein ..."

Gruß,
ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
029
16.05.2006, 17:12 Uhr
ao

(Operator)



Zitat von Reyx:
Was wenn MS irgendwann die .Net-Schiene schließt, z.B. für einen Nachfolger? Autsch! Was, wenn Sun irgend eine geniale neuerung in ihre JRE einbauen, die das verhalten bisheriger Programme ändert? Autsch!

Gegenfrage: Warum sollten sie das tun? Indem sie bestehenden Applikationen das Fundament absägen, schaden sie nur sich selbst.

Bisher hat jede Einführung einer neuen Technologie dazu geführt, dass der alte Code mitgenommen werden konnte:

Assembler -> C mit Inline-Assembler -> C++ (weitestgehend C-kompatibel)

WinAPI (C) -> MFC (C++-Kapselung drumrum, native WinAPI-Aufrufe funktionieren weiterhin)

COM -> .NET (COM-Objekte mit Interop-Assembly funktionieren wie gewohnt)

Du machst dir Sorgen, wo keine sind.

Zitat:
Mit nativem Code wird dies nie passieren!

Sobald du auch nur printf einsetzt, machst du dich abhängig! Was, wenn es deinem Compilerhersteller einfällt, printf durch "format c:" zu ersetzen?


Zitat:
Aber ich halte es schlichtweg für unsinn, C++ (oder auch C) immer überall als "Gestern" zu bezeichnen.

Ich nicht. C ist bereits eine Nischensprache (für Treiber, Betriebssysteme und Microcontroller), C++ wird es auch bald sein (für Pflege von Alt-Applikationen).

Ich würde Neuentwicklungen nur noch in C++ angehen, wenn es aus irgendeinem unverrückbaren Grund in C# (oder Java) nicht geht.

ao


Bearbeitung von ao:
quote-Tag fehlte.

Dieser Post wurde am 16.05.2006 um 17:13 Uhr von ao editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ] [ 6 ]     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: