Lokführer - Fahrdienstleiter & ZUSI 3.0
- Hubert
- Beiträge: 2358
- Registriert: 15.07.2002 17:50:22
- Aktuelle Projekte: Es war einmal: Führerpult im Bau
- Wohnort: Baden bei Zürich
- Kontaktdaten:
@Carsten
Diesen Thread werde ich mal Arthurus-Rex bei seiner Rückkunft aus der Karibik ganz feste ans Herz legen.
Ich weiss, dass ich nicht übers Ziel hinausschiessen will, ich bin schon zufrieden wenn ich die Weichen stellen kann auch ohne Verriegelung
(bitte liebe Fdl erschlagt mich nun nicht, denn früher hat man auch so die Weichen gestellt)
Gruss Hubi
Diesen Thread werde ich mal Arthurus-Rex bei seiner Rückkunft aus der Karibik ganz feste ans Herz legen.
Ich weiss, dass ich nicht übers Ziel hinausschiessen will, ich bin schon zufrieden wenn ich die Weichen stellen kann auch ohne Verriegelung
(bitte liebe Fdl erschlagt mich nun nicht, denn früher hat man auch so die Weichen gestellt)
Gruss Hubi
Greife nie in's Wespennest, doch wenn Du greifst, dann greife fest !
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Hiho,
also ich würde mich echt herzlichst gern an dem Projekt beteiligen, aber vorerst geht bis 22.04. (Physikabi - und gleichzeitig die letzte schriftl. Prüfung) bei mir nichts, aber ob es sooo dringend ist, ist die andere frage.![zuzwinker ;D](./images/smilies/1bluewinky.gif)
Danach hab ich erstmal wieder Zeit bis zum 01.06. oder so, denn am 22.06. hab ich dann meine mündl. Abiprüfung...
Bye
Max Senft
also ich würde mich echt herzlichst gern an dem Projekt beteiligen, aber vorerst geht bis 22.04. (Physikabi - und gleichzeitig die letzte schriftl. Prüfung) bei mir nichts, aber ob es sooo dringend ist, ist die andere frage.
![zuzwinker ;D](./images/smilies/1bluewinky.gif)
Danach hab ich erstmal wieder Zeit bis zum 01.06. oder so, denn am 22.06. hab ich dann meine mündl. Abiprüfung...
Bye
Max Senft
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board
- Daniel Rüscher aka Merlin
- Beiträge: 2294
- Registriert: 23.01.2003 02:25:50
- Aktuelle Projekte: Aktuell keine
- Wohnort: Traunreut
- Kontaktdaten:
ICh hab da schon ne Idee im Kopf was die Realisierung angeht (einsatz von UML und evtl. Projektmanagement), dazu werd ich morgen mal nen Thread eröffnen. Nach der Idee dürfte es eigentlich kein Problem sein das Leute auch während der Entwicklung in das Projekt ein und Aussteigen können.
Mehr dazu aber Morgen.
Mehr dazu aber Morgen.
How to waste bits in a My SQL Database?
Like this.....
Like this.....
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Also ich will dir ja jetz nich deine ganzen Illusionen zerstören, aber meinst du nicht, dass das ein bisserl mit Kanonen auf Spatzen geschossen ist?
Ich mein UML ist schön und gut, aber für so ein Fanprojekt ist es meiner Ansicht nach doch schon etwas überzogen. Sicher ist OOP heutzutage Pflicht, aber man kanns schließlich auch noch auf die altmodische "ich schreibs per Hand" Methode machen!?
Byebye
Max Senft,
der irgendwie für so "Klicks zusammen - der Code kommt von selbst!" Zeugs irgendwie keine Sympathie entwickeln kann...
Ich mein UML ist schön und gut, aber für so ein Fanprojekt ist es meiner Ansicht nach doch schon etwas überzogen. Sicher ist OOP heutzutage Pflicht, aber man kanns schließlich auch noch auf die altmodische "ich schreibs per Hand" Methode machen!?
Byebye
Max Senft,
der irgendwie für so "Klicks zusammen - der Code kommt von selbst!" Zeugs irgendwie keine Sympathie entwickeln kann...
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board
- Daniel Rüscher aka Merlin
- Beiträge: 2294
- Registriert: 23.01.2003 02:25:50
- Aktuelle Projekte: Aktuell keine
- Wohnort: Traunreut
- Kontaktdaten:
Naja hab ich eigentlich auch am anfang gemeint. Aber wenn sag ich mal 10 leute an dem Projekt arbeiten, jeder an seiner eigenen Klasse wirds Ein bißchen Unübersichtlich wenn man so garkein abstraktes Modell hat das die ganzen Beziehungen und so grafisch Darstellt.
Also an OOP wird kein weg vorbeiführen(außer man will das ganze noch in VB6 programmieren). Dementsprechend wird das Programm auch aus vielen Klassen und Objekten bestehen. Es wird also etwas komplizierter werden. Was also spricht dagegen, das ganze in UML abzubilden damit die Orientierung leichter fällt? Ich mein, wenn es schon gute kostenlose Software für genau diese Problemstellung gibt kann man sie auch Nutzen.
Zum Thema Projektmanagement: Es gibt von der geleichen Firma auch ne Kostenlose Projektmanagementsoftware die auf Softwareentwicklung zugeschnitten ist (Todolisten, Aufgabenverwaltung, etc.). Kann man nutzen muss man nicht, is zwar reizvoll auch daa teilzuautomatisieren, aber nich nötig.
Achja, die Tools gibts unter http://www.objectif.de (ObjectiF und in-Step).
@ Max: Du hast da wohl was Missverstanden (oder dir die Anwendung nich richtig angeschaut): Du klickst dir nich deinen Code Zusammen sondern du beschreibst deine Anwendung nur grafisch
und ObjectiF generiert dr dadraus den Rahmen. Was die Anwendung dann machen soll in der Klasse musst du immernoch selbst Programmieren. Kleines Beispiel:Du zeichnest dir
![Bild](http://zusi.aixnetwork.de/fileadmin/zusi.aixnetwork.de/picup/IMG_1109421886_daniel_partysnetwork.de.gif)
und raus kommt
Nicht mehr und nicht weniger. Kein Komplettes Programm mit allen Aufrufen, Schleifen, Variablendeklarationen usw.
So, es darf gelyncht werden
Merrlin
Also an OOP wird kein weg vorbeiführen(außer man will das ganze noch in VB6 programmieren). Dementsprechend wird das Programm auch aus vielen Klassen und Objekten bestehen. Es wird also etwas komplizierter werden. Was also spricht dagegen, das ganze in UML abzubilden damit die Orientierung leichter fällt? Ich mein, wenn es schon gute kostenlose Software für genau diese Problemstellung gibt kann man sie auch Nutzen.
Zum Thema Projektmanagement: Es gibt von der geleichen Firma auch ne Kostenlose Projektmanagementsoftware die auf Softwareentwicklung zugeschnitten ist (Todolisten, Aufgabenverwaltung, etc.). Kann man nutzen muss man nicht, is zwar reizvoll auch daa teilzuautomatisieren, aber nich nötig.
Achja, die Tools gibts unter http://www.objectif.de (ObjectiF und in-Step).
@ Max: Du hast da wohl was Missverstanden (oder dir die Anwendung nich richtig angeschaut): Du klickst dir nich deinen Code Zusammen sondern du beschreibst deine Anwendung nur grafisch
und ObjectiF generiert dr dadraus den Rahmen. Was die Anwendung dann machen soll in der Klasse musst du immernoch selbst Programmieren. Kleines Beispiel:Du zeichnest dir
![Bild](http://zusi.aixnetwork.de/fileadmin/zusi.aixnetwork.de/picup/IMG_1109421886_daniel_partysnetwork.de.gif)
und raus kommt
Code: Alles auswählen
Public Class Test
Public ReadOnly Property Test() As Object
Get
Return Nothing
End Get
End Property
Public Sub Methode1()
End Sub
Public Sub Methode2()
End Sub
Public Event Ereigniss1( )
Private _a As Object
Public _o As Object
End Class
So, es darf gelyncht werden
Merrlin
Code: Alles auswählen
How to waste bits in a My SQL Database?
Like this.....
Like this.....
- Carsten Hölscher
- Administrator
- Beiträge: 33467
- Registriert: 04.07.2002 00:14:42
- Wohnort: Braunschweig
- Kontaktdaten:
- Daniel Rüscher aka Merlin
- Beiträge: 2294
- Registriert: 23.01.2003 02:25:50
- Aktuelle Projekte: Aktuell keine
- Wohnort: Traunreut
- Kontaktdaten:
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Hiho.
Das mit dem Source @ UML meinte ich ja, du "malst" irgendwie irgendwas zusammen, drückst nen Knopf und raus kommt der Source der Objekte.
Das mit dem unübersichtlich werden... ich weiß nicht. Es gibt soo viele große Projekte, an denen viele Leute mitarbeiten und ich kenne keines, das mit UML oder sowat arbeitet. Schließlich gibts in den Source-Editoren die entsprechenden Ansichten und die Codevervollständigung bringt einem den Überblick, was für die jeweiligen Objekte/Klassen für Eigenschaften/Funktionen/etc. gibt.
Nen ganz großen Überblick kann man vielleicht mal später für die Dokumentation machen, aber da gibts auch Programme, die einem das automatisch und AUS dem Source zusammenstellen.
Außerdem: wenn man sich am Anfang mal zusammen hinsetzt (muss man dann halt mal machen) und sich Stift+Zettel mitnimmt, bekommt man das Grundmodell, was wohl dieses allmächtige UML auch kann, ebenfalls zustande. Meist geht so ne Skizze mit Stift und Zettel auch schneller als das Rumgeklicke am Computer, so sind zumindest meine Erfahrungen.
Aber naja, man wird es wohl sehen.
Bye
Max Senft
Das mit dem Source @ UML meinte ich ja, du "malst" irgendwie irgendwas zusammen, drückst nen Knopf und raus kommt der Source der Objekte.
Das mit dem unübersichtlich werden... ich weiß nicht. Es gibt soo viele große Projekte, an denen viele Leute mitarbeiten und ich kenne keines, das mit UML oder sowat arbeitet. Schließlich gibts in den Source-Editoren die entsprechenden Ansichten und die Codevervollständigung bringt einem den Überblick, was für die jeweiligen Objekte/Klassen für Eigenschaften/Funktionen/etc. gibt.
Nen ganz großen Überblick kann man vielleicht mal später für die Dokumentation machen, aber da gibts auch Programme, die einem das automatisch und AUS dem Source zusammenstellen.
Außerdem: wenn man sich am Anfang mal zusammen hinsetzt (muss man dann halt mal machen) und sich Stift+Zettel mitnimmt, bekommt man das Grundmodell, was wohl dieses allmächtige UML auch kann, ebenfalls zustande. Meist geht so ne Skizze mit Stift und Zettel auch schneller als das Rumgeklicke am Computer, so sind zumindest meine Erfahrungen.
Aber naja, man wird es wohl sehen.
Bye
Max Senft
Zuletzt geändert von Max Senft am 26.02.2005 16:49:21, insgesamt 1-mal geändert.
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board
- Daniel Rüscher aka Merlin
- Beiträge: 2294
- Registriert: 23.01.2003 02:25:50
- Aktuelle Projekte: Aktuell keine
- Wohnort: Traunreut
- Kontaktdaten:
Was hast du gegen automatische Erzeugung von Sourcerümpfen? Nachdem du den 1000sten geschrieben hast wirds dir warscheinlich zum Hals raushängen...
Und ob man UML jetzt mahlt oder klickt bleibt wohl gleich. Natürlich ist UML keine Vorraussetzung damit große Projekte mit vielen Entwicklern gelingen, aber es ist wohl eine große Erleichterung. UML ist halt ne Notation die einheitlich ist, und damit auch von einem wesentlich gößeren Personenkreis verstanden wird, als wenn man seine eigene Notation entwickelt. Nochmal zum Verständniss: UML ist keine Entwicklung der Firma Microtools, sondern eine von der Object Management Group standardisierte Beschreibungssprache wie auch html. Und sie ist auch nicht nur auf Programmierung fixiert sondern man kann damit alle Abläufe des täglichen Lebens visuallisieren. Das kannste auch mit Zettel und Stift zeichnen, Tools vereinfachen das ganze nur eben. Es gibt ja so einige Sachen die dem Programmierer das Leben vereinfachen: PAP nach DIN 66001, die Nassi-Shneidermann Notation nach DIN 66261 oder eben UML sind eben einige davon. Man muss sie nicht verwenden, man kann auch eigenes Entwickeln, aber wenn man sie DIN-Gemäß verwendet kann sie jeder lesen.
Nochmal zusammengefasst: Wie du deine Klassen intern beschreibst und Programmierst is egal, extern wird halt in dei UML Notation ne Klassendefinition geschrieben und gut is. Nachdem du Delphi Programmierst kommst du so oder so nich in den Genuss von UML to Code. So der Sachstand.
Achso öhm Programme bei deren Entwicklung UML eingesetzt wird gibts genügend. Du benutzt (wenn man es denn so nennen will) eins davon eigentlich täglich.
Darfst mich jetz haun.
Merrlin
Und ob man UML jetzt mahlt oder klickt bleibt wohl gleich. Natürlich ist UML keine Vorraussetzung damit große Projekte mit vielen Entwicklern gelingen, aber es ist wohl eine große Erleichterung. UML ist halt ne Notation die einheitlich ist, und damit auch von einem wesentlich gößeren Personenkreis verstanden wird, als wenn man seine eigene Notation entwickelt. Nochmal zum Verständniss: UML ist keine Entwicklung der Firma Microtools, sondern eine von der Object Management Group standardisierte Beschreibungssprache wie auch html. Und sie ist auch nicht nur auf Programmierung fixiert sondern man kann damit alle Abläufe des täglichen Lebens visuallisieren. Das kannste auch mit Zettel und Stift zeichnen, Tools vereinfachen das ganze nur eben. Es gibt ja so einige Sachen die dem Programmierer das Leben vereinfachen: PAP nach DIN 66001, die Nassi-Shneidermann Notation nach DIN 66261 oder eben UML sind eben einige davon. Man muss sie nicht verwenden, man kann auch eigenes Entwickeln, aber wenn man sie DIN-Gemäß verwendet kann sie jeder lesen.
Nochmal zusammengefasst: Wie du deine Klassen intern beschreibst und Programmierst is egal, extern wird halt in dei UML Notation ne Klassendefinition geschrieben und gut is. Nachdem du Delphi Programmierst kommst du so oder so nich in den Genuss von UML to Code. So der Sachstand.
Achso öhm Programme bei deren Entwicklung UML eingesetzt wird gibts genügend. Du benutzt (wenn man es denn so nennen will) eins davon eigentlich täglich.
Darfst mich jetz haun.
Merrlin
How to waste bits in a My SQL Database?
Like this.....
Like this.....
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
Ich hatte mir ja eigentlich vorgenommen, im nächsten Semester (ab 18. April) mich mal als Streckenbauer zu versuchen, aber an einem Stellwerk-Modul für Zusi mitzuprogrammieren, würde mich auch stark reizen.
Delphi ist ja eine anständige Sprache (keine Spielzeugsprache wie Java oder VB, andererseits kann man nicht so leicht den Rechner abschiessen wie mit C). Viele sehen das anders (habe im Internet schon Seiten gelesen, auf denen Niklaus Wirth als "Quichefresser" bezeichnet wurde).
Ich habe zwar schon ewig nichts mehr in Delphi gemacht, aber das sollte schon gehen... UML halte ich bei einem solchen Projekt für unumgänglich. Einen zentrales CVS-Repository auch, aber das wird ja wohl bei allen Zusi-Projekten verwendet?
- Christopher
Delphi ist ja eine anständige Sprache (keine Spielzeugsprache wie Java oder VB, andererseits kann man nicht so leicht den Rechner abschiessen wie mit C). Viele sehen das anders (habe im Internet schon Seiten gelesen, auf denen Niklaus Wirth als "Quichefresser" bezeichnet wurde).
Ich habe zwar schon ewig nichts mehr in Delphi gemacht, aber das sollte schon gehen... UML halte ich bei einem solchen Projekt für unumgänglich. Einen zentrales CVS-Repository auch, aber das wird ja wohl bei allen Zusi-Projekten verwendet?
- Christopher
- Christian Gründler
- Beiträge: 2210
- Registriert: 04.10.2003 13:27:48
- Wohnort: Brühl (Baden)
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
In der Tat habe ich bereits verschiedentlich in Java programmiert. Zur Zeit schreibe ich in Java an einem kleinen Tool für den privaten Gebrauch (für BAHN).Christian Gründler hat geschrieben: ich glaube kaum, daß Du je in Java programmiert hast; sonst würde Dein Verdikt garantiert anders ausfallen.
Java ist unbestritten bequemer als C(++), allein schon wegen des GC -- für mich fällt es aber eher in die Kategorie der Sprachen, die ich für kleine private Projekte nutze. Andere nutzen es für Web-Applikationen (statt PHP).
Für eine komplexe Applikation würde ich jedoch eine andere Sprache wählen.
Gruß,
- Christopher
- Christian Gründler
- Beiträge: 2210
- Registriert: 04.10.2003 13:27:48
- Wohnort: Brühl (Baden)
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
Weil JAVA nur interpretiert, nicht kompiliert wird (genaugenommen wird Java in Bytecode kompiliert, der dann interpretiert wird) -- und aufgrund der daraus resultierenden Performance-Einbußen. C ist nun mal erheblich schneller.Christian Gründler hat geschrieben:Warum?Christopher Spies hat geschrieben:Für eine komplexe Applikation würde ich jedoch eine andere Sprache wählen.
Ich bestreite auch nicht, dass man mit Java komplexe Applikationen erstellen kann (z.B. ist Together (eine Java-IDE) selbst in Java geschrieben) -- aber ich persönlich würde eine andere Sprache wählen.
Außerdem hat Java noch ein paar andere Eigenheiten, die mich etwas stören -- aber das haben andere Sprachen auch, C(++) sogar noch in erheblich höherem Maße.
Gruß,
- Christopher
-
- Beiträge: 1040
- Registriert: 18.01.2004 12:51:32
- Aktuelle Projekte: Objektbau in LOD0, Fahrpult, new adventures in VHDL
- Wohnort: EPD
Wenn ich mal an dieser Stelle in diesem Glaubenskrieg mitmischen darf:Christopher Spies hat geschrieben:
Delphi ist ja eine anständige Sprache (keine Spielzeugsprache wie Java oder VB, andererseits kann man nicht so leicht den Rechner abschiessen wie mit C). Viele sehen das anders (habe im Internet schon Seiten gelesen, auf denen Niklaus Wirth als "Quichefresser" bezeichnet wurde).
Was meiner Meinung nach (vor allem im Gegensatz zu C) der größte
Nachteil von Delphi ist: was machen die Delphi-Programmierer, egal
ob zu privaten Zwecken oder für große & teure IT-Projekte im Firmen-
umfeld, wenn von heute auf morgen Borland Pleite geht? Gerade im
geschäftlichen Bereich sehe ich es als doch recht riskant an, eine Sprache
zu verwenden, die nur von einem einzigen Hersteller angeboten wird
und die nicht quelloffen ist. Diesbezüglich begibt sich Java ja langsam
auf den richtigen Weg. Für C gibts wohl die meisten Compiler, aber
C hat sprachlich doch ein paar größere Schwächen, die leider auch
immer noch in C# drin sind (da gebe ich Gosling völlig recht, wenn er
sagt, dass es hirnverbrannt war, .NET auf C aufzusetzen), so z.B.
unsichere Typ-Casts und die ganze Pointer-Arithmetik. Bei Java stört
mich, dass es meistens recht lange dauert und sehr viel Zuspruch
braucht, bis Sun neue Sprachelemente einbaut (wie alt ist Java jetzt
schon? Und wie lange wurden von den Anwendern schon Sachen
wie Generics gefordert und all das, was jetzt endlich in 1.5 drin ist?)
und dann aber noch ewig lange auf Kompatibilität zu den älteren
VM-Versionen besteht (sehr schönes Beispiel: die Date-Klasse. Wie
lange ist die jetzt schon deprecated? Und dann ist da noch das nio-
package: keiner traut sich, das alte io-package rauszuwerfen, denn es
wird ja noch verwendet, obwohl es eigentlich Mist ist). Zu Deinem
Beispiel mit Together: das ist schon deswegen so grottenlangsam,
weil es AWT/Swing verwendet, da würde ich doch lieber sowas wie
Eclipse als Positiv-Beispiel verwenden...
Es wird wohl also noch dauern, bis wir die perfekte Programmiersprache
haben, und bis dahin gibts ja noch Assembler...
- Oliver Lamm
- Beiträge: 3102
- Registriert: 04.01.2002 15:02:17
- Aktuelle Projekte: Aachen - Neuss für Zusi3
- Wohnort: Essen
- Kontaktdaten:
Es wird wohl also noch dauern, bis wir die perfekte Programmiersprache
haben, und bis dahin gibts ja noch Assembler...
Welch wahre Worte ...
Java und VB sind Tools der Klasse "Rapid Prototyping", ideal um mal eben einen horizontal prototype zu generieren - dann drag and drop ja sehr einfach. Wenn es performant werden soll ist man mit C/C++ doch besser beraten.
Oli
Oliver Lamm
mail(AT)oliverlamm(DOT)de
mail(AT)oliverlamm(DOT)de
-
- Beiträge: 775
- Registriert: 26.01.2005 16:10:18
- Wohnort: Darmstadt
Sehr gut formuliert, exakt diesen Sachverhalt wollte ich mit der zugegebenermaßen etwas provokanten Bezeichnung "Spielzeugsprache" zum Ausdruck bringen.Oliver Lamm hat geschrieben:Java und VB sind Tools der Klasse "Rapid Prototyping", ideal um mal eben einen horizontal prototype zu generieren - dann drag and drop ja sehr einfach. Wenn es performant werden soll ist man mit C/C++ doch besser beraten.
Das ist ein interessanter Aspekt, den ich noch nie betrachtet habe. Warum gibt es eigentlich Gibt es denn keine freien Delphi-Compiler? Freie Pascal-Compiler gibt's ja genug. Die Borland-Bibliotheken sind natürlich proprietär, könnten aber doch auch durch eine offene Standardbibliothek ersetzt werden.ImmoBirnbaum hat geschrieben:Was meiner Meinung nach (vor allem im Gegensatz zu C) der größte Nachteil von Delphi ist: was machen die Delphi-Programmierer, egal ob zu privaten Zwecken oder für große & teure IT-Projekte im Firmenumfeld, wenn von heute auf morgen Borland Pleite geht? Gerade im geschäftlichen Bereich sehe ich es als doch recht riskant an, eine Sprache zu verwenden, die nur von einem einzigen Hersteller angeboten wird und die nicht quelloffen ist.
- Christopher
Edit: Rhetorische Frage umformuliert
Zuletzt geändert von Christopher Spies am 27.03.2005 19:21:43, insgesamt 2-mal geändert.
- Daniel Schuhmann
- Beiträge: 1147
- Registriert: 21.04.2003 18:50:37
- Aktuelle Projekte: Nüscht
- Wohnort: Miesbach
- Kontaktdaten:
Es gibt FreePascal, das ist auch teilweise Delphi-Kompatibel. Und das Lazarus-Projektversucht die komplette Delphi-IDE nachzubilden, ist aber noch im Beta-Stadium und etwas instabil.
Daniel
Edit: Links hinzugefügt
Daniel
Edit: Links hinzugefügt
Zuletzt geändert von Daniel Schuhmann am 27.03.2005 19:20:32, insgesamt 1-mal geändert.
Signaturen können bis zu 50 Zeichen lang sein und
Komisch, wußte garnicht, daß ich mit Spielzeug meine recht anständigen Lenze verdiene...Christopher Spies hat geschrieben: (keine Spielzeugsprache wie Java oder VB
Wenn das meine Kunden auch so sehen würden, dann müßte ich mich wohl auch wieder mit Pointern, sinnloser Mehrfachvererbung und überschriebenen Heapadressen rumärgern.
Wieso riskant? Wo hat denn Delphi die weiteste Verbreitung? Neben einigen Oberflächenanwendungen vorallem im Bank- und Versicherungssoftwarebereich. Wenn es riskant wäre, dann würden die Banken und Versicherungen doch am lautesten gegen Delphi schreien oder?ImmoBirnbaum hat geschrieben: Gerade im geschäftlichen Bereich sehe ich es als doch recht riskant an, eine Sprache zu verwenden, die nur von einem einzigen Hersteller angeboten wird und die nicht quelloffen ist. Diesbezüglich begibt sich Java ja langsam auf den richtigen Weg.
und zum Thema Quelloffen:
1. was willst Du mit einer Sprache, in der jeder dahergelaufene 13jährige Programmierer, mit seinen WinAmps-Clones und Dateiverwaltungstools für Simulatorprogramme darin rumfuschen kann, nur weil er meint, einen Pointer auf ein Flag im Heap ist "ökonomischer" als das Flag direkt zu addressieren?
2. hier möchte ich nochmals auf die Softwarepatent-Diskussion verweisen.
Was glaubst Du eigentlich, wieviele Kunden sich vor den Kopf gestoßen fühlen, wenn Du denen mitteilst, sie sollen auf Java 1.5 migrieren, bloß weil Du mit dem Sprachumfang von 1.4 nicht zurechtkommst?ImmoBirnbaum hat geschrieben:
Bei Java stört mich, dass es meistens recht lange dauert und sehr viel Zuspruch braucht, bis Sun neue Sprachelemente einbaut (wie alt ist Java jetzt schon? Und wie lange wurden von den Anwendern schon Sachen
wie Generics gefordert und all das, was jetzt endlich in 1.5 drin ist?)
und dann aber noch ewig lange auf Kompatibilität zu den älteren
VM-Versionen besteht (sehr schönes Beispiel: die Date-Klasse. Wie
lange ist die jetzt schon deprecated?
Weißt Du, was es für einen Aufwand ist, in einer Firma mit ca. 250 Mitarbeitern ein dort auf jeden Rechner installiertes JRE zeitnah zu migrieren, um Dein Update (was natürlich nicht mehr mit der alten JRE läuft) zu verteilen?
Zum Thema Kompatibilität: SUN ist es eben wichtig, daß der Slogan "write once - run everywhere" erfüllt wird und das mit Recht. Wieviel Änderungen sind denn notwendig, bis eine W32-C++ Anwendung auf Linux tatsächlich läuft?
Ich wüßte auch nicht, wo in C++ und/oder Delphi und/oder VB irgendwo in den letzten Jahren tatsächlich Änderungen in der Grundsprache vorgenommen worden sind. Wenn, dann betrifft dies Änderungen in Zusatz-API's, aber nicht in den Sprachkonstrukten.
Das zeigt mir - und sicherlich allen anderen Java-Entwicklern, daß Du KEINE AHNUNG von Java hast. Das java.nio.* ist KEIN Ersatz für java.io.* und war auch nie so gedacht. Der Sinn, weshalb SUN das nio-package entwickelt hat, ist die Schwäche der Streams und Reader/Writer-Konzepte bezüglich Zeichensatz und Zeicheninformationsbreite.ImmoBirnbaum hat geschrieben:
Und dann ist da noch das nio-
package: keiner traut sich, das alte io-package rauszuwerfen, denn es
wird ja noch verwendet, obwohl es eigentlich Mist ist).
Daß mit dem nio-package nun auch irgendwelche Buffers etc. dazukam, ist eigentlich nur "Beiwerk"...
Wenn java.io.* Mißt wäre, dann möchte ich Dich bitten, eine Socketverbindung zum z.B. Zusi-Simulationsserver nur mit Hilfe des java.nio-Packages zu basteln oder eine XML-Datei einzulesen und - ohne die Anwendung des SAXParsers (denn der benutzt ja auch java.io) - in ein DOM zu wandeln.
AWT/Swing ist nicht langsam. Du bist nur unfähig, aus AWT bzw. Swing das rauszuholen, was wirklich drin steckt. Stattdessen möchtest Du zig Farbverläufe in Buttons, Millionen von Farben, umschaltbare Skins oder Look'n'Feels und tausende von Icons und Toolbarbuttons haben. Diese sollten dann auch noch ständig refresht werden und sich automatisch an die jeweilige Fenstergröße anpassen, damit die Anordnung der Komponenten immer gleich aussieht.ImmoBirnbaum hat geschrieben:
Zu Deinem Beispiel mit Together: das ist schon deswegen so grottenlangsam, weil es AWT/Swing verwendet, da würde ich doch lieber sowas wie Eclipse als Positiv-Beispiel verwenden...
Tja... und jetzt wirfst Du SWT ins Feld.
Wie lange hat es gedauert, bis SWT auch unter Linux mit Framebuffer lief? Wann kommt denn die erste SWT-Version, die auch unter Symbian OS so stabil läuft, daß ich meine Java-Anwendung ohne großen Aufwand (wie heute mit AWT möglich) auch auf das Handy/PDA portieren kann?
Wenn Du heute eine typische Anwendung nimmst, dann kannst Du zwar mit SWT super die verschiedenen Perspektiven/Views/Fenster abbilden und brauchst Dich nicht um deren Anordnung zu kümmern. Aber wenn es darum geht, einen TreeView so zu gestalten, daß ordentliches Drag'n'Drop möglich ist, sich die einzelnen Nodes entsprechend der Aktionen des Benutzers ordentlich darstellen oder per Tooltip z.B. eine "Kindervorschau" basteln willst, wirst Du mit SWT Schwierigkeiten bekommen.
Ok, es ist ein Glaubenskrieg. Entweder man hat alles in Java und kümmert sich ein wenig darum, keine unnötigen Objekte zu instanziieren oder Eventhändler offen zu lassen - oder man nutzt eben die API's der Betriebssystem auf Kosten der Plattformunabhängigkeit.
Das ist dann wohl der Widerspruch in sich!ImmoBirnbaum hat geschrieben:
Es wird wohl also noch dauern, bis wir die perfekte Programmiersprache
haben, und bis dahin gibts ja noch Assembler...
Einerseits kannst Du keine gescheit-schnelle Swing-Anwendung basteln, weil Du Dich eben nicht um die Speichernutzung Deines Programms kümmerst, andererseits propagierst Du hier eine Sprache, in der man schon von Grund darüber im Klaren sein muß, wann an welcher Stelle im Speicher welche Daten stehen und wie man diese Daten beeinflussen kann.
Merkwürdige Logik.
Nichtsdestotrotz: Auch hier wieder die Aufgabe: Versuche mal die sog. Double-Werte in Assembler abzubilden.
Oder verwalte einen x-beliebig-langen String MIT Formatierungen = RTF in Assembler. Viel Spaß! Achja. Bitte recht schnell und mit wenig Pagings und kleinem Overhead.
Wieder mal ein ob seiner Mitmenschen kopfschüttelnder
Robert