![]() |
Weg mit Delphi her mit Java, für die Zukunft sicher?
Hallo,
ich wollte mal eine Frage in die Runde werfen wie ihr dazu steht oder was ihr dazu denkt. Und zwar: auf der Arbeit verwenden wir (noch) zum großteil Delphi und die aktuelle Software ist auch in Delphi geschrieben, aber nun soll nach und nach alles neue in Java Entwickelt werden und die alten sachen in Java umgestellt werden. Was denkt ihr zum Thema Java? Ist das der richtige Weg und vor allem ist es Zukunftssicher in zeiten von Vista und .NET2? Grüße, Daniel |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Ich glaube:
Java wird für den Desktop sterben, wenn Microsoft erstmal mit .Net durch ist. Grund: 1.) MS is der Monopolist, die bekommen fast alles durch, sogar schrottige sachen, die nichts taugen.. 2.) Das .Net framework ist um längen besser als das Java-Environment 3.) Oberflächenprogrammierung unter JAVA ist einfach nur noch schrott. Ich sehe Java mittlerweile nur noch als Versuchsprojekt. .NET greift alles gute auf, und lässt den schlechten rest weg ^^ // Edit: Was allerdings für JAVA spricht: alle anderen Branchenriesen verwenden es (SAP, Oracle, IBM, SUN...) |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Also bitte schlagt mich nicht, wenn ich jeztt nen Schmarrn daherbrabbel, aber soviel ich weiß, muss man ja bei Java dem User immer eine Umgebung mitliefern.
Ja, eigentlich hat das schon jeder, aber die, die es nicht haben, werden es sich schon zweimal überlegen, das Programm in Delphi oer Java zu nehmen, also daher stehe ich eher auf Seiten Delphis ;) Wie gesagt, kann auch sein, dass ich jetzt über Java Schmodder gesagt hab, ich kenn mich mit Java nur sehr wenig aus... |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Templates, Operatorüberladung, Inline Funktionen, Mehrfachvererbung, rein virtuelle Methoden gemischt mit normalen Methoden in einer Klasse - all das ist in Java nicht möglich. Ich habe zumindest ein paar dieser Features bereits vermisst in Java, und das obwohl ich erst seit einem halben Jahr damit arbeite - und das sind auch nur kleinere Schulprojekte. Aber es hat bestimmt einen Grund dass Java auch für riesige Softwareprojekte eingesetzt wird. Zur Ursprungsfrage kann ich nichts sagen da ich zwar Erfahrungen mit Java, aber keine mit .NET habe. Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Java ist kompliziert. Ich sag nur get und set-methoden anstatt properties. und die GUI-programmierung mit inneren klassen als events und lauter so sachen machens einem auch nicht leichter...
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
@Master_RC: Dafür ist eine .NET exe keine 900 KB gross ;)
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Zitat:
Aber du hast IMHO völlig Recht, Swing und AWT finde ich beide ein wenig... nunja, seltsam. Eine weitere Merkwürdigkeit von Java ist dieses dumme .equals... wenn es mal Operatorüberladung in Java gibt (falls es mal eingeführt wird), dann geht das besser. Andererseits bleibt dann die Frage wie man die Referenzen auf Gleichheit prüft - equals vergleicht ja die kompletten Daten das Objekts, was vielleicht nicht immer gewünscht ist. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Und mann kann doch auch 30 kb-Echsen mit Delphi haben :angel2: Und wenn man überflüssige VCL-Units entfernt, bekommt man seine .exe mit Delphi auch kleiner ;) |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Java in Verbindung mit "kompliziert" in bezug auf die Sprache zu bringen, verwirrt mich etwas.
Rein als Sprache ist es IMHO einfacher zu kapieren als die DelphiLanguage und C#. Von C++ braucht man gar nicht zu reden, das spielt in einer eigenen Klasse. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Ich würde erstmal Hinterfragen wieso Delphi nicht sicher sein soll? Die Auswahl einer Plattform sollte immer von den geforderten Anforderungen getrieben werden. Wenn man primär Application-Getrieben z.B. Browser-Basierte Anwendungen schreibt die auf jedem x-Beliebigen Server laufen soll so ist Java 1a, da es App-Server für Linux/Sun/Windows/BS2000 usw. gibt. Können Windows (oder mit Mono Linux oder ähnliches Vorrausgesetzt) werden kommt noch .NET ins Spiel. Sind die Anwendungen primär Fat- bzw. positiv Ausgedrückt Rich-Clients so ist Delphi voll im Spiel (Auf dem Server würde ich es nur im Rahmen von .NET sehen). Selbst bin ich an Lösungen beteiligt die Zweikleisig Fahren Delphi für Clients und Java für den Server. Alle "sonstigen" Anforderungen wie Datenbankanbindung, XML-Support, Web-Anbindung u.ä. können von Delphi und Java abgedeckt werden. Also verrate uns mal was deine Anforderungen sind: - Soll es auf PC oder auf dem Server laufen - Installier/Verteilbarkeit (XCopy-Installation nötig) - DB-Support - Lauffähig auf Mobile Devices/Manager-Spielzeugen (sprich Pocket-PC's) |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Moin moin,
also die Komplexität der Sprache ist dann irrelevant, wenn die Ausbildung in dem Bereich gut war. Viele Mathematiker haben sich in ihrem Informatikstudium sehr ausführlich mit Java beschäftigt. Delphi würde ich eher als Ingenieursprache sehen, auch wenn diese Aufteilung sicher nicht besonders scharf ist. Bei Java-Entwicklungen scheint mir die Zielrichtung eine andere als bei Delphi/Delphi-Net. Während Java Anwendungen mehr bei PcC-Netzen mit Großrechneranbindungen und deren abweichenden Betriebssystemen zu finden sind liegt der Schwerpunkt von Delphi bei PC Anwendungen und PC-Serveranwendungen auch mit Internetanbindung. PRAKTISCH: Wenn ich im Bankenbereich arbeite mit zentraler Großrechneranbindung, dann wird Java ins Blickfeld geraten. Bei einem Maschinenbauer, wo Entwickler-PC´´s mit den Produktionsmaschinen verbunden sind, hat Delphi die Nase vorn. So würde ich das derzeit einschätzen. Viele Grüße // Martin |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Hi,
ich muss mschaefer mal total recht geben, dass die Komplexität der Sprache irrelevant ist (sorry, zu faul zum zitieren). Wichtig ist es einzusehen, dass alle Sprachen (weitestgehend) gleichmächtig sind, es geht nur darum wie einfach man etwas machen kann. Sicherlich hat Java eine Rechtfertigung (schaut euch an wie lange es Java gibt und wie verbreitet es ist, so zu sagen quasi empirischer Beweis). Java ist natürlich eine Netzwerksprache bedingt durch die Entwickler (bzw. das Augenmerk eben dieser) und damit nicht wirklich geschrieben wurden um GUIs zusammen zu klicken. Was Java aber für den Unternehmensbereich nützlich macht liegt weniger an der Eigenschaft der Netzfähigkeit als vielmehr schon an der Typsicherheit. An sich kennt Java (sehen wir von native Code ab) keine expliziten Zeiger. Ein wichtiger Fakt. J2EE (dass dann für Großrechner mit .Net konkurriert und klar vorne liegt) sollte eigentlich nicht direkt mit J2SE verglichen werden. Aber ich mache es mal trotzdem :mrgreen: Also bei J2EE muss man sich nicht mehr um Threading kümmern, dass macht alles die Umgebung in der J2EE-Objekte sich befinden. Diese sehr starke Kapselung (möchte hier nicht in die Details von J2EE gehen), ermöglicht ein sehr leichtes und mächtiges skalieren und ein hohes Maß an Sicherheit (Genau genommen noch ein paar Dinge mehr). Aber das sind Anforderungen die in der Softwaretechnik wirklich wichtig sind. Und da MS nicht dumm ist, versuchen sie natürlich auch ein eigenes Konzept in der Richtung zu etablieren (das wahre Geld kommt nun mal von großen Firmen mit große Budgets und großen Aufträgen). Ob .Net sich etablieren wird oder nicht wird sich erst zeigen, noch ist es einfach zu jung. Nebenbei bemerkt ist Einfachheit einer Sprache (mathematisch) anders definiert als ich glaube ihr es meint. Die Sprache der Universellen Turingmaschine ist z.B. sehr sehr einfach (man liest ein Zeichen, schreibt ein Zeichen und wandert entweder nach links oder rechts, darf vielleicht auch stehen bleiben. Zudem merkt man sich noch den aktuellen Zustand und der kann natürlich auch in jedem Schritt geändert werden). Aber mit dieser Sprache etwas zu implementieren kann sehr sehr anstrengend werden (schon für kleine Probleme). Gruß Der Unwissende |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Also ich würde die 'Einfachheit' der Sprache mit dem benötigtem Einlernaufwand messen.
Und da muss ich doch Chewie eindeutig widersprechen. Delphi / ObjectPascal ist deutlich einfacher zu lernen als Java. Schliesslich war Pascal ursprünglich genau dafür entwickelt worden, um eine möglichst einfache Lernsprache einzuführen. Und man kann keinem intuitiv-logisch denkendem Menschen Java vorsetzen, ohne dass dieser rein intuitiv den Java-typischen Fehler macht, einen String ersteinmal direkt mit einem String zu vergleichen, was natürlich voll in die Hose geht:
Code:
Allein solche simplen Sachen machen es dem Entwickler schwer (und kosten Zeit), und machen es vor allem auch der QS (die eh schon zu sehr vernachlässigt wird) zu schwer als es sein müsste. Das Ergebnis ist eine Software die auf Entwicklerseite teurer ist als es sein müsste wenn man das richtige Werkzeug dafür gewählt hätte.
string str = "abc";
if (str == "abc" ) { // warum zum Teufel geht der hier nicht rein? } An Eurer Stelle würde ich sagen: Wenn ein Plattformwechsel notwendig ist, dann nicht hin zu Java sondern hin zu .NET. 1.) .NET kann alles was auch Java kann, und es kann es performanter. 2.) Wenn ihr Euren alten Programme portieren wollt ist es einfacher Euren Delphi-Source durch den Delphi.NET-Compiler zu jagen und dort ein wenig nachzuarbeiten (Pointerverwendung umgehen) als alles wegzuwerfen und in Java nochmal neu zu programmieren (das ist ein Kostenfaktor, der je nach Komplexität ganze Mannjahre verschlingen kann, und der vollkommen unnnötig ist). 3.) .NET ist, das wurde oben schon mehrfach angesprochen, Zukunftssicherer als Java. Es steht dort eine Firma dahinter, die den Clientbereich noch Jahrelang beherrschen wird, und die den Entwicklern alles Mögliche an Informationen, Werkzeuge und Hilfestellungen in den Hintern bläst dass es nur so kracht. Als Entwickler '(em)powered by Microsoft' zu sein ist ein Wettbewerbsvorteil den ich mir nicht mehr wegdenken möchte. Zumal man im richtigen Partnerprogramm wirklich alles an Material zu einem Spottpreis erhält. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Also sorry, aber wie leicht eine Sprache zu erlernen ist, ist nach Definition schon nicht Objektiv. Da mich subjektive Messungen nicht interessieren würden, ist dass also vollkommen egal.
Natürlich schon aus der Tatsache heraus, dass ich nicht Chef von jmd. bin, aber wenn mein Chef beschließt die Programmiersprache zu wechseln, dann könnte ich sagen dass die neue Sprache schwerer zu lernen ist und er würde sich wohl Fragen was ich im Studium gelernt habe (ob man das verallgemeinern kann?!) Aber ich kann dir gerne auch nochmal die Turing-Maschine erklären, ist eine wirklich einfache Überführungsfunktion. Da kannst du nicht viel falsch verstehen. Aber die Programmierung einer TM wäre schon für einfache Probleme so aufwendig, dass du es nie benutzen würdest. Das Chefs zu neuen Programmiersprachen greifen ist durchaus üblich. Die Gründe können jedoch komplett Verschiedene sein. Einerseits folgen Fachfremde Chefs gerne Tipps von Bekannten oder glauben halt irgendwelchen Botschaften die von Schlagworten suggerieren dass sie toll sind (Java zählte ein Weilchen dazu). Ein anderer Grund ist einfach zu überlegen, Kosten/Nutzen abzuschätzen und danach zu handeln. Ziemlich sinnvoll und einfach. Wie auch immer, es gibt auf jeden Fall Gründe auf Java umzusteigen, aber es geht doch eher darum ob es für den Fragensteller (bzw. die Firma) auch sinnvoll ist. Und diese Frage lässt sich (wie hier schon gesagt wurde) nicht pauschal beantworten. Es gibt Fälle wo es sinnvoll ist und andere wo dies nicht zutrifft. Wie zukunftssicher eine Sprache ist lässt sich genauso wenig beantworten. Aber natürlich ist Java zukunftssicherer als Delphi. Delphi erzeugt (für Win32) gelinkten Code. Dass heißt nicht, dass es Java in x Jahren noch gibt und Delphi nicht, aber ändert sich die Rechnerarchitektur total (was ständig der Fall ist), hat man irgendwann mal Delphi Code der für eine 32-Bit CPU (x86 kompatibel) unter dem Betriebssystem Windows (mit der Win32 API) lauffähig ist, aber eben nicht mehr unter einer neuen Umgebung. Den Ansatz den Sprachen wie Java, alle .Net Sprachen und alle anderen interpretierten Sprachen verfolgen ist es, Code nicht direkt zu linken sondern zu interpretieren. Ob es nun Objektcode ist, der schon vorübersetzt wurde oder echt interpretierte Zeichen, dass ist eigentlich egal. Du hast immer den Vorteil, nur den Interpreter portieren zu müssen, aber keines der Programme. Hast du also nur genug Programme (die du immer brauchst) lohnt sich die Portierung des Interpreters (muss sich aber halt nicht immer lohnen). |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Aber es gibt auch C++ in .Net, VB, ASP, ... (wäre mir jetzt nicht sicher, dass die nicht genauso Quelltextkompatibel sind wie Delphi). Falls du nur meinst, dass es einen Compiler gibt der Delphi Code in Win32 Code linkt und einen der diesen Objektcode erstellt, auch da gibt es andere Sprache (z.B. kann sogar Java Code in eine .exe gepackt werden, mit allen einhergehenden Einschränkungen) |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Java ist alles in allem doch um einiges schlüssiger. Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Delphi .Net ist 100% abwärtskompatibel (vcl.net) zu Delphi32, solange man keine kryptischen API Rufe im Code drin hat (Habe bisher einen gefunden, dens in .net nicht meht gibt).
Man kann sogar reine vcl Units nach .Net portieren und mit C# nutzen (allerdings sind hierbei einige Delphi.net pakete mit zu verlinken). Einziges Problem hierbei ist die Parent geschichte (Align funktioniert nicht) und die Events. Wenn man .net events neben die vcl events stellt spart man sich auch das Einbinden der Delphi.net dlls, die Parent geschichte kann man mit ner .net Containerklasse erschlagen. Zu Java: Imho ist die einzige Bedingung, die für die Verwendung von Java überhaupt spricht, dass man den compilierten Code auf eine neue Plattform übertragen muss. Sobald eine Neucompilierung auf einer anderen Plattform möglich ist, ist Java schon hinfällig. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
/edit: So sieht's dann aus:
Code:
Wenn man das dann in 50 Dateien wiederfinden darf...
addWindowListener(New WindowAdapter()
{ public vois windowsClosing(WindowEvent e) { System.Exit(0); } }); //Erst hier ist der ursprüngliche Funktionsaufruf zu Ende |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Ja, anonyme Klassen sind für mich das kryptischte Sprachfeature an Java.
Klar, es erspart einem Tipparbeit, aber besonders, wenn sie länger sind, sind sie schwer zu erkennen. Aber für die meisten Listener wären benannte Klassen auch nicht gerade übersichtlich. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Hallo Ihr,
danke für Zahlreichen Informationen und Meinungen. Also die Software um die entwickelt wird ist eigentlich oder eher überwiegend "dumm" der großteil passiert auf der Datenbank, die Software ist dann eigentlich nur zum Visualisieren oder Erfassen von Daten da, obwohl da auch schon einiges an Code hintersteckt nur mit speichern, anzeigen und ausgeben ist es ja nicht getan. Den Vorteil den ich in Java sehen "könnte" ist der der Platformunabhängigleit aber das ist bei uns auch hinfällig das das mehr so ein WinJava gewusel ist, sprich es läuft wohl nur unter Windows, wie mir andere Entwickler erzählten die von der Java idee nicht so begeißtert scheinen. Ich persönlich habe noch nie etwas mit Java gemacht, aber dennoch bekomm ich immer Angstzustände wenn ich ein Java Programm offen habe und mal die Speichernutzung im Taskmanager sehe. Bin mal auf euer weiteres Feedback gespannt, ist recht interessant, vor allem wenn man sich damit nicht nicht so auseinander gesetzt hat oder weiß was auf einen zukommen wird. Grüße, Daniel |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Es gibt große Unterschiede zwischen C# und Java. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
length ist (zumindest bei Arrays, nicht aber bei Strings Vektoren etc...) keine Methode sondern tatsächlich ein public Attribut!
Es gibt keine Properties in Java. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
.length (man beachte die Kleinschreibung) bei einem Array ist ein Feld, das öffentlich (public) und unveränderlich (final) ist. Da Arrays in ihrer Größe unveränderlich sind, ist dieses Feld quasi eine Konstante, die zur Instantiierung des Arrays gesetzt wird. |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
|
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
C# ist eigentlich ein Java Derivat, nur mal so am Rande... ;)
Das aus einem gehörigen Krach bei MS<-> Sun aus J++ 6,7,.... C# wurde und gleich noch .Net kam ist eine ganz andere Gechichte. C# baute in seiner "Embryonalzeit" noch nicht einmal auf .Net auf. Die Sprache an sich tut es das heute auch nicht, nur die bisherigen Implementierungen bauen auf den CLR Specs von MS auf (also C# von MS, Mono und pNet) |
Re: Weg mit Delphi her mit Java, für die Zukunft sicher?
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz