Heute noch C++ für Unternehmenssoftware



  • tztz...
    ⚠ don't feeed ⚠



  • ok, ab jetzt nicht mehr 👍



  • Jester schrieb:

    rüdiger schrieb:

    Außerdem hoffe ich mal, dass es keine Uni gibt, wo man beim Informatik-Studium mit nur einer Programmiersprache durchkommt!

    Bei uns kommst Du ohne durch. 🙂 Zumindest theoretisch.

    Warum auch nicht? Wenn man die Informatik als wissenschaftliche Disziplin sieht und das Studium an der Uni als eine Art wissenschaftliche Ausbildung, dann spielen Programmiersprachen letztendlich maximal eine Nebenrolle. Wer sich in eine entsprechende Richtung entwickeln will, der braucht vor allem Theorie, Theorie und noch mehr Theorie. Warum sollte man da Zeit mit Programmiersprachen verschwenden? Wenn man so eine Sicht der Informatik hat, dann ist die Kenntnis von Programmiersprachen für den Studenten dieser Disziplin nicht wichtiger als für den Studenten eines anderen Fachs (das etwas technisch ist). Programmierfähigkeiten sind dann nur noch etwas, was sich der Student halt selbst beizubringen hat, wenn er es gerade braucht.



  • Hallo zusammen schrieb:

    Außerdem hat Java einen ganz klar höheren Speicher-Verbrauch und teilweise ein langsames verhalten. So sind zumindest meine Erfahrungen und wenn ich auf einem 1GB-Rechner warten muss, bis sich ein Dialog aufgebaut hat und ich ihn wegklicken kann, ist das sehr schlecht.

    Sorry, das ist das typische anti java gelaber, das jeder dau von sich gibt nachdem er den utnerschied zwischen c++ und java gepeilt hat. von dir hab ich eigentlich sowas nicht erwartet. soviel zum thema regs/unregs 👎

    Komisch. Die Java-Anwendungen die ich benutze sind spürbar träge. Naja, ist mein subjektives Empfinden. Aber vielleicht sind die einfach nur Scheisse programmiert. Für Java braucht man ja nicht so viele teure Experten.

    Hallo zusammen schrieb:

    Von Embedded muss man ja gar nicht erst anfangen.

    aha, deine oben genannten handy spielchen sind also nicht embedded? 👍

    Wow, mit der Handygeschichte ist natürlich der Bärenanteil an embedded Software agedeckt...



  • Hallo zusammen schrieb:

    Von Embedded muss man ja gar nicht erst anfangen.

    aha, deine oben genannten handy spielchen sind also nicht embedded? 👍



  • Bezüglich Desktop-Java ist auch immer ein Blick in die Swing Sightings interessant. Einfach um mal zu sehen, dass es doch jede Menge Beispiele dafür gibt.

    http://java.sun.com/products/jfc/tsc/sightings/



  • Ist leider die Wahrheit, dass Java zu viel Speicher verbraucht (wenn mehrere GB auch etwas übertrieben sind). Ist zwar ne schöne Sprache zum programmieren, mit ner größeren und besseren standard Library als die C++ STL, aber der Speicherverbrauch ist zuiel. Man hat einfach keine Kontrolle, wann der Speicher freigegeben werden soll. Wenn die VM sich einmal mehr Speicher geholt hat, dann gibt sie den nur ungern wieder her. Außerdem braucht die VM selber vom Start an auch immer noch ne ganze Menge Speicher und wenn man einmal mehrere Klassen geladen hat, dann brauch sie auch immer mehr Speicher. Oder gibt es nen Zeitpunkt ab dem Klassen wieder "entladen" werden?

    Was auch noch stört, ist dass man natürlich auch die JRE installiert haben muss, was doch einigen "normal" User zuviel Aufwand ist.



  • 4444444444444 schrieb:

    Ist leider die Wahrheit, dass Java zu viel Speicher verbraucht (wenn mehrere GB auch etwas übertrieben sind). Ist zwar ne schöne Sprache zum programmieren, mit ner größeren und besseren standard Library als die C++ STL, aber der Speicherverbrauch ist zuiel. Man hat einfach keine Kontrolle, wann der Speicher freigegeben werden soll. Wenn die VM sich einmal mehr Speicher geholt hat, dann gibt sie den nur ungern wieder her. Außerdem braucht die VM selber vom Start an auch immer noch ne ganze Menge Speicher und wenn man einmal mehrere Klassen geladen hat, dann brauch sie auch immer mehr Speicher. Oder gibt es nen Zeitpunkt ab dem Klassen wieder "entladen" werden?

    Wenn ein Programm so viel Arbeitsspeicher braucht, dass das bei einem Rechner mit 512MB RAM oder so relevant wird, dann wird dieser Speicherverbrauch normalerweise von den Daten dominiert, die das Programm verarbeitet. Das ist völlig unabhängig von der gewählten Programmiersprache. Durch die JVM kommt zwar ein gewisser Overhead zu Stande, dieser ist aber völlig zu vernachlässigen, wenn das Programm ein paar 100MB Speicher brauchen sollte. Auch die geladenen Klassen fallen dann nicht ins Gewicht.

    4444444444444 schrieb:

    Was auch noch stört, ist dass man natürlich auch die JRE installiert haben muss, was doch einigen "normal" User zuviel Aufwand ist.

    Größere Desktop-Anwendungen, die Java nutzen, bringen ihre eigene JRE mit. Bei Maple 11 habe ich bei der Installation letzt zum Beispiel in keinster Weise mitgekriegt, dass Java genutzt wird. Es wurde genau wie jedes andere Programm auch installiert.



  • Die SWING-Anwendungen, die mir untergekommen sind sind spührbar träge (Athlon XP 3000+ mit 1GB RAM, sollte nicht unterversorgt sein), Java hatte ich auch schon das ein oder andere Programm, das doch recht flüssig lief.

    Was mich an Java stört ist eigentlich nur dass es sich inkonsistent von C++ unterscheidet und ich nicht genug Zeit habe mich auch noch mit Java zu beschäftigen - ist ja nicht die Schuld von Java 😃



  • 4444444444444 schrieb:

    Man hat einfach keine Kontrolle, wann der Speicher freigegeben werden soll. Wenn die VM sich einmal mehr Speicher geholt hat, dann gibt sie den nur ungern wieder her. [...]

    Na und? Das ist doch der Witz an einer automatischen Speicherverwaltung, dass man sich um das Freigeben nicht kümmern muss. Wenn man nicht gerade auf Echtzeitfähigkeit angewiesen ist, ist ein GC das praktischste was es gibt.

    tfa



  • Gregor schrieb:

    Wenn ein Programm so viel Arbeitsspeicher braucht, dass das bei einem Rechner mit 512MB RAM oder so relevant wird, dann wird dieser Speicherverbrauch normalerweise von den Daten dominiert, die das Programm verarbeitet. Das ist völlig unabhängig von der gewählten Programmiersprache. Durch die JVM kommt zwar ein gewisser Overhead zu Stande, dieser ist aber völlig zu vernachlässigen, wenn das Programm ein paar 100MB Speicher brauchen sollte. Auch die geladenen Klassen fallen dann nicht ins Gewicht.

    Wenn man, wie viele Leute, 5 - 10 Programme offen hat und diese alle Java Anwendungen wären, dann würden die einzelnen VMs doch ne ganz Menge Speicher verbrauchen und schon ins Gewicht fallen. Wenn SUN oder sonst wer da mal was ändern würde, dann hätte Java auf Desktoprechnern mehr Chancen.



  • Der Projektleiter schrieb:

    C++ scheint nur im Bereich von Unternehmenslösungen und Informationssystemen im allgemeinen den Kampf langsam aber doch sicher zu verlieren. Was ich hierbei nur noch nicht ganz verstanden habe, warum wird C++ in diesen Bereichen kaum noch verwendet?

    Spielen da nur kaufmännische Gründe eine Rolle, oder auch technische? Mich interessiert das besonders, da ich mich beruflich viel mit Unternehmenslösungen und privat mit C++ auseinandersetze und bisher den Hype um andere Technologien bisher noch nicht verstehen konnte.

    Wie kommt es das die großen IT-Dienstleister neue Projekte zumeist in Java entwickeln? Das gleiche gilt für die riesige Softwarevertriebshäuser wie Oracle, SAP und IBM.

    Ich denke das wichtigste was C++ fehlt, sind Firmen die es nach vorne pushen, wie es Sun, IBM und Oracle mit Java gemacht hatten oder Microsoft mit C#. Wie seht ihr das, würdet ihr bei einer Neuinvestition heute noch auf C++ setzen?

    1. Nach Aussage bestimmter Beratungsunternehmen ist es Moment besonders schwer gute freiberufliche C++ Programmierer zu finden. Ein Typ meinte zu mir - von 320 C++ Programmierer in der DB wäre ich der 168te den er anruft. Und keiner hätte Zeit oder ist technologisch bereits ganz wo anders.

    2. Direkt code ich schon lange nicht mehr nativ. Bei mir ist heute alles modellgetrieben. C++, Java oder C# nur noch mit Codegenerator.

    3. Der Java Hype existiert schon seit 2000.

    4. C++ braucht nicht gepush werden. Im Embedded Bereich ist C++ immer noch die erste Wahl. Oder generell in der hardwarenahen Umgebung. Außerdem weiß ich es zu schätzen, wenn ein Fenster in Sekundenbruchteilen aufgeht und nicht wie bei Java oder C++ ich einen Minute warten muss ...

    5. Wie lange existiert jetzt C++? 1989?!



  • Prof84 schrieb:

    Der Projektleiter schrieb:

    C++ scheint nur im Bereich von Unternehmenslösungen und Informationssystemen im allgemeinen den Kampf langsam aber doch sicher zu verlieren. Was ich hierbei nur noch nicht ganz verstanden habe, warum wird C++ in diesen Bereichen kaum noch verwendet?

    Spielen da nur kaufmännische Gründe eine Rolle, oder auch technische? Mich interessiert das besonders, da ich mich beruflich viel mit Unternehmenslösungen und privat mit C++ auseinandersetze und bisher den Hype um andere Technologien bisher noch nicht verstehen konnte.

    Wie kommt es das die großen IT-Dienstleister neue Projekte zumeist in Java entwickeln? Das gleiche gilt für die riesige Softwarevertriebshäuser wie Oracle, SAP und IBM.

    Ich denke das wichtigste was C++ fehlt, sind Firmen die es nach vorne pushen, wie es Sun, IBM und Oracle mit Java gemacht hatten oder Microsoft mit C#. Wie seht ihr das, würdet ihr bei einer Neuinvestition heute noch auf C++ setzen?

    1. Nach Aussage bestimmter Beratungsunternehmen ist es Moment besonders schwer gute freiberufliche C++ Programmierer zu finden. Ein Typ meinte zu mir - von 320 C++ Programmierer in der DB wäre ich der 168te den er anruft. Und keiner hätte Zeit oder ist technologisch bereits ganz wo anders.

    2. Direkt code ich schon lange nicht mehr nativ. Bei mir ist heute alles modellgetrieben. C++, Java oder C# nur noch mit Codegenerator.

    3. Der Java Hype existiert schon seit 2000.

    4. C++ braucht nicht gepush werden. Im Embedded Bereich ist C++ immer noch die erste Wahl. Oder generell in der hardwarenahen Umgebung. Außerdem weiß ich es zu schätzen, wenn ein Fenster in Sekundenbruchteilen aufgeht und nicht wie bei Java oder C++ ich einen Minute warten muss ...

    5. Wie lange existiert jetzt C++? 1989?!

    inwiefern war das jetzt eine antwort auf die frage ?



  • C++ hat letztes Jahr offiziell seinen 20. Geburtstag gefeiert. Aber "ernst" nehmen kann man es meines Erachtens erst seit dem ISO-C++-Standard.



  • Prof84 schrieb:

    1. Direkt code ich schon lange nicht mehr nativ. Bei mir ist heute alles modellgetrieben. C++, Java oder C# nur noch mit Codegenerator.

    Sehr interessant! Ich setze mich derzeit auch ein wenig mit MDA auseinander, leider befinde ich mich noch im Anfängerstadium. Kannst Du Case-Tools empfehlen die Ihr Geld Wert sind? Hast Du gute Bookmarks bzw. Literatur zu diesem Thema?



  • Ein Projektleiter schrieb:

    inwiefern war das jetzt eine antwort auf die frage ?

    Ok!

    Die Wahl der Programmiersprache wird getroffen aufgrund von:

    1. technischen Anforderungen - Einsatzgebiet der Software, Toolunterstützung, verfügbare Experten, Entwicklungsdauer, Flexibilität bei der Änderung, ...
    2. Entwicklungsaufgabe - im Finanzsektor ist Java recht etabliert, für Steuerungssoftware C++ und im MS Umfeld ist c# der Hype.Dies aus technischen Gründen. Aber es existiert keine zwingende Signifikanz der Technologie.
    3. Altbestand - Existiert schon eine Lösung? In welcher Sprache ist die geschrieben? Können wir einen Sprachenwechsel vornehmen? Schnittstellen implemtieren?....
    4. Paradigmen - Objektorientierung, Serviceorientierung, Aspektorientierung, Produktlinien, Modell-getrieben, Ereignis-getrieben etc. Welches Paradigma wollen wir etablieren und in wieweit unterstützt dies unsere Sprache?
    5. Welche Fertigsoftware möchte ich im Unternehmen nutzen und in wieweit unterstützen diese die Sprachen?
      etc.

    D.h.: Die Entscheidung sollte nach einer sinnvollen Konzeption getroffen werden und nicht nach einer Umfrage im Internet. 😉



  • @Prof84 schrieb:

    Prof84 schrieb:

    1. Direkt code ich schon lange nicht mehr nativ. Bei mir ist heute alles modellgetrieben. C++, Java oder C# nur noch mit Codegenerator.

    Sehr interessant! Ich setze mich derzeit auch ein wenig mit MDA auseinander, leider befinde ich mich noch im Anfängerstadium. Kannst Du Case-Tools empfehlen die Ihr Geld Wert sind? Hast Du gute Bookmarks bzw. Literatur zu diesem Thema?

    Möchtest Du als Student den kommerzielle Lösungen einsetzen?

    Hier ist mal ein kleines Arbeitspaket
    http://modelware-ist.org/
    Schau Dir zuerst die Videos an. Brauchen Flash, xDSL und Ton.

    http://www.eclipse.org/modeling/
    http://www.eclipse.org/gmt/oaw/
    http://www.software-families.org/slides/voelter.pdf

    http://www.software-families.org/programm.html
    http://se-radio.net

    Aber vielleicht möchtest Du mit erst mal mit DSM anfangen:
    www.metacase.com
    Lade Dir mal Metaedit+ runter (30 Tage trial)
    oder
    http://www.isis.vanderbilt.edu/projects/gme/

    Kommt man schneller zu Resultaten.

    Reicht erst mal für den Anfang.



  • Prof84 schrieb:

    ... in der DB wäre ich der 168te den er anruft.

    In der Deutschen Bahn? 😕 😉



  • Prof84 schrieb:

    Im Embedded Bereich ist C++ immer noch die erste Wahl. Oder generell in der hardwarenahen Umgebung.

    wieder einer, der C nicht von C++ unterscheiden kann 🙄



  • vista schrieb:

    Prof84 schrieb:

    Im Embedded Bereich ist C++ immer noch die erste Wahl. Oder generell in der hardwarenahen Umgebung.

    wieder einer, der C nicht von C++ unterscheiden kann 🙄

    Wieder so einer, der nicht weiß, dass man C++ auch embedded einsetzen kann. 🙄


Anmelden zum Antworten