|
DocBriggs
Anmeldungsdatum: 7. April 2008
Beiträge: 335
|
Hello World schrieb: Lunar schrieb: Python, Smalltalk, Haskell, C#. Das waren vier, reicht das?
Was zur Low-Level-Programmierung wäre noch nett. C ist sehr eingeschränkt und hässlich, und C++ hat zu viel Mist von C übernommen.
Er sagt das Python, etc. qualitativ hitverdächtig wären...von daher raff ich die Antwort nicht 😉 Lunar schrieb: Qualitativ schlecht ist die Sprache auch nicht.
"Schlecht" lässt sich immer nur durch einen Vergleich mit anderem definieren. Und bei einem Vergleich zwischen Java und Python oder Java und C# verliert Java deutlich. Man kann also mit Recht sagen, dass Java schlecht ist.
Wäre gut, wenn du das ein wenig expliziter erläutern könntest.
|
|
Hello_World
(Themenstarter)
Anmeldungsdatum: 13. Juni 2006
Beiträge: 3620
|
DocBriggs schrieb: Wäre gut, wenn du das ein wenig expliziter erläutern könntest.
Äh, der Thread heißt "Java ist crap" und ist sechs Seiten lang. Meinst Du nicht, dass man da das eine oder andere Argument Java finden könnte?
|
|
DocBriggs
Anmeldungsdatum: 7. April 2008
Beiträge: 335
|
|
|
Lunar
Anmeldungsdatum: 17. März 2006
Beiträge: 5792
|
DocBriggs schrieb: Hello World schrieb: Lunar schrieb: Python, Smalltalk, Haskell, C#. Das waren vier, reicht das?
Was zur Low-Level-Programmierung wäre noch nett. C ist sehr eingeschränkt und hässlich, und C++ hat zu viel Mist von C übernommen.
Er sagt das Python, etc. qualitativ hitverdächtig wären...von daher raff ich die Antwort nicht 😉
Die erwähnten Sprachen sind alle nicht gut für Low-Level-Programmierung geeignet. Python und Smalltalk sind sehr abstrakt und dynamisch, Haskell ist funktional und C# vermisst ebenfalls wichtige Dinge für Low-Level-Programmierung (z.B. deterministische Destruktoren).
Lunar schrieb: Qualitativ schlecht ist die Sprache auch nicht.
"Schlecht" lässt sich immer nur durch einen Vergleich mit anderem definieren. Und bei einem Vergleich zwischen Java und Python oder Java und C# verliert Java deutlich. Man kann also mit Recht sagen, dass Java schlecht ist.
Wäre gut, wenn du das ein wenig expliziter erläutern könntest.
Java fehlen beispielsweise echte Eigenschaften, Methodenreferenzen und ein einheitliches Objektsystem. Details kannst du dir selbst anlesen, ich habe besseres zu tun, als die sechs Seiten dieses Threads für dich zu wiederholen.
|
|
Marc_BlackJack_Rintsch
Ehemalige
Anmeldungsdatum: 16. Juni 2006
Beiträge: 4735
|
@T-Virus: Wer Java mag soll es dann aber auch bitteschön für sich behalten. Und von wegen wissen wovon wir reden: Du hast anscheinend noch nicht verstanden wozu die XY ist crap Threads gut sind. Sonst hättest Du jetzt nicht danach verlangt wir sollten ernst werden. Das hiesse ja am Ende noch Java und die fadenscheinigen Argumente, warum diese mittelmässige Sprache für mittelmässige Programmierer, eine gute Sprache ist, ernst zu nehmen. 😉 @bremer: Das Java ist eine der dominierenden Programmiersprachen in Unternehmen ist, halte ich erstmal für eine gewagte These, und dann ist das wirklich kein Zeichen für Qualität. Das kann genau so gut bedeuten, dass Sun viel Geld in das Umwerben von Entscheidungsträgern gesteckt hat, die mit der Sprache selber am Ende gar nicht in Kontakt kommen, aber eben gehört haben, dass alle Java, XML, SOAP, SOA, <weitere Buzzwords>, verwenden, weil das alles sooo toll ist. Da kann man den alten IBM-Spruch abgewandelt anwenden: Es wurde noch niemand entlassen, weil er Java verwendet hat. Denn wenn man etwas anderes verwendet und das Projekt floppt, ist man alleine deswegen angreifbar, weil das Management nur Java kennt, äh ich meine über Java gelesen hat. Übrigens darf man nicht den Fehler machen den Stellenmarkt oder frischgebackene (Fach)Informatiker nach der in der "Realität" dominierenden Sprache zu befragen. Zum Jahrtausendwechsel gab's mal zwei Studien, die die Verbreitung von COBOL untersucht haben, weil das im Finanzbereich unter anderem die Systeme waren, die vom Y2K-Problem betroffen waren. Die haben nicht nur festgestellt, dass immer noch über 200 Milliarden COBOL-Zeilen im Einsatz sind, sondern dass diese Zahl immer noch im wachsen begriffen war. Und COBOL ist wirklich eine richtig hässliche Sprache. Es gibt da draussen Unmengen an Projekten, die in allen möglischen Sprachen geschrieben sind, die während der Jahrzehnte mal hip und modern waren, und die noch gepflegt und weiterentwickelt werden. Es wäre ja auch totaler Unsinn ein grösseres Projekt nur um der verwendeten Sprache wegen, komplett neu zu schreiben. Die meisten *neuen* Projekte im *Businessbereich* werden wahrscheinlich mit Java oder C# begonnen. Das aber auch nicht vorrangig wegen der Qualität der beiden Sprachen, sondern weil das die Sprachen sind, die gerade "in" sind und deshalb in Unis und Fachhochschulen verwendet werden. Und das sind sie nicht zuletzt durch die beiden grossen Firmen, die hinter den Sprachen stehen. Wenn zum Beispiel hinter D oder OCaml auch soviel Marketingkohle stehen würde, wären es vielleicht diese beiden Sprachen, in denen alles neue begonnen würde. Was wiederrum nichts über deren Qualität aussagt. @Senex: Und da verlieren die Javajünger eigentlich immer, denn ihrer implementiert zig Interfaces, ist gepflastert mit Boilerplate-Code, und total "over-engineer"t. 😉
|
|
Marc_BlackJack_Rintsch
Ehemalige
Anmeldungsdatum: 16. Juni 2006
Beiträge: 4735
|
@Hello World: Da würde ich sagen Lunar hat mich richtig eingeschätzt: Ich fänd D ganz nett, wenn (auch) Low-Level-Programmierung gefragt ist.
|
|
bremer
Anmeldungsdatum: 13. August 2006
Beiträge: 437
|
Ihr übergewichtet einfach Dinge wie Buzzwords und Marketing, dabei bedarf es eben auch an Qualität, um zu den dominierenden Sprachen zu werden. Wenn BMW keine guten Autos bauen würde, würde das Marketing auch nichts helfen. Allein Java mit Python zu vergleichen... Python wird auch übelst gehyped und kommt trotzdem nie an Java ran.
Und wie C# jetzt eindeutig besser sein soll, sehe ich auch nicht. Zumal Java sich ja auch weiterentwickelt.
|
|
Quivadis
Anmeldungsdatum: 13. Februar 2008
Beiträge: 142
|
Ich dachte immer man nimmt immer die Sprache in welcher man die Projekte am besten umsetzen kann. Und wenn das Management eine andere Sprache den Vorzug gibt nimmt man halt diese, mit der Garantie das das Projekt nicht richtig umsetzbar ist. Ich finde Java ist eine gar nicht so schlechte Sprache. ich verwende Linux und Windows, und ich will nur ein Projekt pflegen müssen. Das kann nur java so richtig ohne Aufwand.
|
|
Lunar
Anmeldungsdatum: 17. März 2006
Beiträge: 5792
|
bremer schrieb: Ihr übergewichtet einfach Dinge wie Buzzwords und Marketing, dabei bedarf es eben auch an Qualität, um zu den dominierenden Sprachen zu werden.
Java war mal neu und gut, nämlich vor 10 Jahren, als es kaum eine brauchbare Alternative gab. Leider hat Java den Punkt verpasst, an dem es sich hätte öffnen und weiterentwickeln sollen. Hätte Sun die JVM früher geöffnet, MS nicht verklagt, und Java so aktiv weiterentwickelt wie MS das heute mit C# tut, dann würden wir diesen Thread gar nicht führen. Heute hält sich Java vor allem, weil viele Firmen sich die Investitionen in den Umstieg nicht leisten können oder wollen, weil sie so viel in Java investiert haben, und weil Sun mehr Geld in Marketing als in Weiterentwicklung steckt.
Allein Java mit Python zu vergleichen... Python wird auch übelst gehyped und kommt trotzdem nie an Java ran. Und wie C# jetzt eindeutig besser sein soll, sehe ich auch nicht.
Ob du das nun siehst oder nicht, ist für die Faktenlage reichlich irrelevant. Vor allem, wenn du dich nicht im Geringsten bemühst, deine Aussagen mit Erklärungen und Argumenten hinterlegen. Ich kann deinen Satz ohne Probleme umdrehen und in "Java wird übelst gehyped und kommt trotzdem nie an Python heran", ohne das er an Überzeugungskraft verlieren kann.
Zumal Java sich ja auch weiterentwickelt.
In den letzten Jahren hat Java der Syntax nur statische Imports und generische Typen hinzugefügt. Ersteres ist trivial und nicht häufig von Nutzen. Letzteres kam komischerweise erst nachdem Microsoft C# 2.0 mit generischen Typen veröffentlichte. Leider war Sun nicht fähig, von Microsoft auch die korrekte Implementierung abzuschauen. Anstatt die generischen Typen bei der Kompilierung in statische Typen zu übersetzen, kompilieren die Generics bei Java zu Typcasts, so dass die so gewonnenen Typinformationen zur Laufzeit wieder verloren gehen. C# dagegen hatte schon bei seiner Veröffentlichung ein einheitliches Typsystem für primitive Typen, brachte Methodenreferenzen und bot echte Eigenschaften. Später kamen noch so nützliche Dinge wie das using-Statement für RAII hinzu, so dass man sich die umständlichen try-finally-Konstrukte bei der Arbeit mit Ressourcen spart. All das hat Java bis heute nicht. @Quivadis Plattformübergreifende Entwicklung ist auch mit Python, C++ oder C# möglich. Das ist schon lange kein Alleinstellungsmerkmal mehr (wenn es das denn je war). Das immer die beste Sprache für ein Projekt genommen wird, war und ist leider Wunschtraum.
|
|
Marc_BlackJack_Rintsch
Ehemalige
Anmeldungsdatum: 16. Juni 2006
Beiträge: 4735
|
@bremer: Man kann eindeutig auch qualitativ schlechte Autos verkaufen wenn das Marketing stimmt. Gerade bei Autos wo die Werbung sehr stark auf Image und Statussymbol ausgerichtet ist. Man kauft kein Auto sondern Freiheit und Fahrfreude. Was für ein Bullshit wenn man mit der Kiste dann täglich auf der Stadtautobahn im Berufsverkehr vor sich hintuckert und sich überlegt ob man sich das Benzin für die Freiheit überhaupt noch leisten kann. ☺ Ich finde den Vergleich Python und Java auch ein wenig daneben. Python ist eine viel schönere, agilere Sprache als das behäbige Java-Monstrum, das wie Du ja sagst, weiter entwickelt wird, also noch mehr statischen "cruft" und überentwickelte APIs ansammelt. In der Zeit in der man in Java mit der IDE, denn ohne geht's da nicht, Tonnen an Boilerplate-Quelltext generiert hat, hat man in Python ein paar Zeilen Quelltext geschrieben, bei dem man weiss das jede Zeile auch einen substantiellen Beitrag zur Problemlösung beisteuert und nicht nur irgend ein statisches Rahmenwerk glücklich macht. Freiheit und Programmierfreude. 😉 C# hat das gemacht, was Java bei C++ gemacht hat: Versucht aus den dort begangenen Fehlern zu lernen und sie nicht zu wiederholen.
|
|
Quivadis
Anmeldungsdatum: 13. Februar 2008
Beiträge: 142
|
Python ist doch eine Scriptsprache, welche doch noch nicht mal auf allen Plattformen einen einheitliche Oberflächenframework hat. Mit Java lassen sich zumindest mit swing Oberflächen erzeugen, welche fast gleich auf allen Plattformen aussehen. Java lässt sich auch auf Windowssysten einfacher installieren, so das damit auch Programme für normale Anwender erzeugt werden könenen, welche diesed auch bedienen können. C# hat bei der Oberflächengestaltung genausoviel overkill-code wie Java, wird besser dur VS2008 versteckt. Wenn ich richige Programme entwicklen bleiben eignetlich nur richtige Programmiersprachen wie zum Beispiel: c, c++, Delphi, c#, Java.... keine Scriptsprachen bitte.
|
|
stfischr
Anmeldungsdatum: 1. März 2007
Beiträge: 19197
|
Quivadis schrieb: Python ist doch eine Scriptsprache, welche doch noch nicht mal auf allen Plattformen einen einheitliche Oberflächenframework hat. Mit Java lassen sich zumindest mit swing Oberflächen erzeugen, welche fast gleich auf allen Plattformen aussehen.
Bäx, also diese hässliche Swing-Oberfläche kann ich echt nicht ausstehen. Entweder mein Programm integriert sich in das Vorhandene Layout (SWT/AWT) oder ich designe eine eigene Oberfläche.
C# hat bei der Oberflächengestaltung genausoviel overkill-code wie Java, wird besser dur VS2008 versteckt. Wenn ich richige Programme entwicklen bleiben eignetlich nur richtige Programmiersprachen wie zum Beispiel: c, c++, Delphi, c#, Java.... keine Scriptsprachen bitte.
http://de.wikipedia.org/wiki/Scriptsprache Skriptsprachen ... sind Programmiersprachen, ...
|
|
DasIch
Anmeldungsdatum: 2. November 2005
Beiträge: 1130
|
Quivadis schrieb: Python ist doch eine Scriptsprache[...]
Nein.
[...]welche doch noch nicht mal auf allen Plattformen einen einheitliche Oberflächenframework hat.
Doch.
Java lässt sich auch auf Windowssysten einfacher installieren, so das damit auch Programme für normale Anwender erzeugt werden könenen, welche diesed auch bedienen können.
Python etwa nicht?
|
|
Ferio
Anmeldungsdatum: 24. April 2007
Beiträge: 383
|
Lunar schrieb: Ich betreibe keine Low-Level-Programmierung, zumindest nicht freiwillig 😉. Aber wie wäre es mit D? Da ich D aber nicht wirklich kenne, müssen das andere beurteilen ...
Ich muss vorab bekennen, dass ich D auch nicht wirklich kenne. Aber von dem, was ich davon gelesen/gehört habe sieht mir so aus, als wäre da zu viel von C und C++ übernommen worden, so dass es wenig Vorteile gegenüber C++ bietet.
|
|
Quivadis
Anmeldungsdatum: 13. Februar 2008
Beiträge: 142
|
Phyton ist zumindest keine Compilersprache und laut Wikipedia, nach meiner Auslegung, eine Scriptsprache. Ich will/muss große Projekte machen, diese sollten dann bei Auslieferung in einer einzigsten ausführbaren Datei sein, und nicht in tausenden *.py - Dateien. Ich muss zugeben kenne mich mit Phyton nicht wirklich aus, kann aber Java. UNd ich finde Java gar nicht mal so schlecht. Man kann von einem kleinem bis zu einem wirklich großen Projekt alles damit erledigen. Das Phyton auch auf, anderen Platformen läuft ist mir bekannt, da er aber nicht den Quellcode verschleiert, kommt er nicht in Frage. Sind alles kommerzielle Projekte, welche verkauft werden sollen und wo Urheberrechte drauf sind. Und keinen Streit beginnen, bei mir zählen alle Sprachen welche nicht Compilieren zur Scriptsprachen.
|