Geschwindigkeit vs. Sicherheit



  • java anhänger schrieb:

    rüdiger schrieb:

    Damit haben wir aber immer noch nicht gezeigt, warum wir uns ausgerechnet Java antun sollten, um sichere Programme zu schreiben.

    Gregor schrieb:

    Zeig mir doch mal eine Meldung, dass in einem Javaprogramm eine Sicherheitslücke aufgetreten ist. ...die JVM ist kein Javaprogramm.

    Du bist dran.

    gerne, aber wie ihr ja selbst sagt

    java anhänger schrieb:

    Aber das C++ die optimale Wahl ist, wird ja auch beispielsweise ersichtlich durch die überwältigende "Marktherrschaft" von C++ CGI Anwendungen gegenüber JSP, JSF, etc..

    Gregor schrieb:

    Javaprogramme sind momentan zugegebenermaßen eher weniger auf Desktops von privaten Nutzern zu finden. Die meisten Javaprogramme laufen wohl in Firmen entweder auf Servern oder auch auf Desktops. Es gibt aber natürlich einige Javaprogramme, die sich auch an den privaten Nutzer richten. Zum Beispiel Filesharing-Programme, wie Limewire oder auch Azureus (das allerdings nicht 100% Java ist).

    müsste ich dafür ja irgend welche Firmensoftware oder Webseitencodes kennen. Das ist wirklich zu speziell um sich da nennenswert nach Sicherheitslücken umzugucken.

    Also bitte, kommt mir nicht damit das ich eine Programmiersprache benutzen sollte, weil die nicht öffentlich vorhandene Software keine Sicherheitslücken hätte.



  • dabei hat php an meistens sicherheitslöcher 🤡



  • Es gibt mehr als Java, C# und C++. Aber es wundert mich nicht, das dein Horizont auf diese drei Programmiersprachen beschränkt ist.

    Wie kann ich es mir auch nur anmaßen mich als Java Programmierer zu bezeichnen ohne fundamentale Kenntnisse von Lisp, Haskell, etc.. zu haben. Aber ich kann ja schon förmlich riechen, dass die nächste Aussage in etwa behaupten wird, dass man Programmierung lediglich verstanden hat wenn man ideologisch motivierter Lisp Anhänger ist, da ja auch sämtliche Mainstream-Sprachen immer mehr Konzepte aus dem funktionalen Paradigma übernehmen, blabla .. Derartig theoretisches und vor allem unbegründetes Gelaber interessiert mich nicht.

    Ich geb gerne zu, dass ich mich von Marketing Strategien von Microsoft & Co. ein wenig blenden lasse, es stört mich allerdings überhaupt nicht, denn "ihr" werdet es ja genau so, nur eben anders.



  • @rüdiger: Um nochmal ein ganz anderes Thema anzuschneiden...

    Du bist doch so ein OSS-Verfechter, oder? Wie stehst Du dann eigentlich zur Öffnung von Java? Ein großer Teil von Java wird wohl innerhalb von 2 Monaten unter der CDDL verfügbar sein. Die CDDL wird von der OSI als OSS-Lizenz angesehen, aber es gibt auch einige Stimmen, die darauf hinweisen, dass die CDDL nicht komplett zur GPL kompatibel sein soll. Würdest Du das als großes Hindernis ansehen?

    ...um das etwas in den Thread einzubetten: Weiter oben ging es ja darum, ob man im Java-Umfeld auf die Schwächen der Sprache reagiert. Es wurde in der Vergangenheit oft genug kritisiert, dass Java nicht OSS sei. Sun hat das gehört und hat es inzwischen wohl auch als Schwäche von Java erkannt, so dass dort ein Politikwechsel stattgefunden hat.



  • Zeus schrieb:

    dabei hat php an meistens sicherheitslöcher 🤡

    ja, PHP ist wirklich übel.

    Gregor schrieb:

    Du bist doch so ein OSS-Verfechter, oder? Wie stehst Du dann eigentlich zur Öffnung von Java? Ein großer Teil von Java wird wohl innerhalb von 2 Monaten unter der CDDL verfügbar sein. Die CDDL wird von der OSI als OSS-Lizenz angesehen, aber es gibt auch einige Stimmen, die darauf hinweisen, dass die CDDL nicht komplett zur GPL kompatibel sein soll. Würdest Du das als großes Hindernis ansehen?

    Ich bin nicht "so ein OSS-Verfechter" und ich kenne die CDDL und die genauen Details der GPL auch nicht, um das beureilen zu können.

    java anhänger schrieb:

    Es gibt mehr als Java, C# und C++. Aber es wundert mich nicht, das dein Horizont auf diese drei Programmiersprachen beschränkt ist.

    Wie kann ich es mir auch nur anmaßen mich als Java Programmierer zu bezeichnen ohne fundamentale Kenntnisse von Lisp, Haskell, etc.. zu haben. Aber ich kann ja schon förmlich riechen, dass die nächste Aussage in etwa behaupten wird, dass man Programmierung lediglich verstanden hat wenn man ideologisch motivierter Lisp Anhänger ist, da ja auch sämtliche Mainstream-Sprachen immer mehr Konzepte aus dem funktionalen Paradigma übernehmen, blabla .. Derartig theoretisches und vor allem unbegründetes Gelaber interessiert mich nicht.

    Ich geb gerne zu, dass ich mich von Marketing Strategien von Microsoft & Co. ein wenig blenden lasse, es stört mich allerdings überhaupt nicht, denn "ihr" werdet es ja genau so, nur eben anders.

    hahaha

    klar, das jemand der nicht programmieren kann Java bevorzugt.



  • klar, das jemand der nicht programmieren kann Java bevorzugt.

    Klar, das jemand der Programmieren nur vom Hörensagen her kennt nicht weiß inwiefern Java das Leben vereinfachen kann. oder anders gesagt: Spar dir solche Hiebe unter der Gürtellinie.



  • rüdiger schrieb:

    Ich bin nicht "so ein OSS-Verfechter" und ich kenne die CDDL und die genauen Details der GPL auch nicht, um das beureilen zu können.

    Schade. Ich dachte, du wärst da der richtige Ansprechpartner. Ich glaube, Du hattest mich vor ganz langer Zeit mal gefragt, was ich von solchen offenen Java-Nachbauten wie Kaffe und so halte. Deshalb dachte ich, Dir würde die Offenheit von Software wichtig sein.



  • hab' jetzt nicht alle seiten gelesen, aber hat schon einer geschrieben, dass coden in java viel mehr spass macht als in c++? mir jedenfalls...

    zum thema:
    man kann in java übelsten frickelcode schreiben, der trotzdem super-stabil ist und erstaunlich viel funktionalität hat. beispiel: http://www.saschaseidel.de/testdir/wettbewerb_02/MiB.zip
    entstand an einem langweiligen nachmittag. mit c++ hätt's sicher viel länger gedauert und stabilität wär gleich 0 gewesen...



  • hab' jetzt nicht alle seiten gelesen, aber hat schon einer geschrieben, dass coden in java viel mehr spass macht als in c++? mir jedenfalls...

    ne, es ist genau umgekehrt.



  • java anhänger schrieb:

    klar, das jemand der nicht programmieren kann Java bevorzugt.

    Klar, das jemand der Programmieren nur vom Hörensagen her kennt nicht weiß inwiefern Java das Leben vereinfachen kann. oder anders gesagt: Spar dir solche Hiebe unter der Gürtellinie.

    Ich hab schon mit Java gearbeitet. Im Gegensatz zu dir, bin ich kein Sprach-Dogmat und schaue auch über den Tellerrand.

    Gregor schrieb:

    rüdiger schrieb:

    Ich bin nicht "so ein OSS-Verfechter" und ich kenne die CDDL und die genauen Details der GPL auch nicht, um das beureilen zu können.

    Schade. Ich dachte, du wärst da der richtige Ansprechpartner. Ich glaube, Du hattest mich vor ganz langer Zeit mal gefragt, was ich von solchen offenen Java-Nachbauten wie Kaffe und so halte. Deshalb dachte ich, Dir würde die Offenheit von Software wichtig sein.

    Offenheit von Software ist mir schon wichtig oder sagen wir es so, ich bevorzuge als Programmierer natürlich Software dessen Quellcode ich einsehen kann.



  • Artchi schrieb:

    Wenn dir Smartpointer auch nicht reichen, nimm Hans Boehms Garbagecollector. Dann biste mit C++ auf Java-Level.

    Genau, Java-Niveau! Ich bin gleich wieder da, muss mich nur schnell
    noch fertig totlachen.... Der GC für C++ ist n netter Hack, der
    vieleicht für ein Hallo-Welt-Prog. reicht - für mehr aber auch nicht...
    Zudem kommt da das Argument, das anderer Code als der selbstgeschriebene
    (im Java-Fall die VM) unkrontrollierbar sei wie ein Bummerang zurückgeflogen!

    Also echt, manchmal frag ich mich, wie verbohrt und beschränkt man sein
    muss, um C++ auch noch gut zu finden - in manchen Bereichen (embedded) ists
    vieleicht die beste Alternative, aber von "gut" ists bei objektiver
    Betrachtung noch 100000 km entfernt.

    Böhms GC auf Java-Level... Ich lach mich tot!



  • Artchi schrieb:

    Das spiegelt sehr schön wieder, was wir in der C++ Welt eigentlich haben: die wenigsten kennen C++ und ihre Designmöglichkeiten. Ich habe mal einem Java-Kollegen, der seit Jahren auch C und C++ kennt, mal ein paar Hinweise bzgl. Templates u.ä. gegeben. Er selber kannte kein Boost, keine Namespaces ("warum hat mir das keiner gesagt?") und vorallem hat er 3D-Engines wie Irrlicht benutz. Mit dem Hinweis auf Templates und das diese nützlich sind und vorallem eine andere Denkweise als Java bedürfen, meinte er "Ja, aber die ganzen Frameworks wie Irrlicht werden von erfahrenen C++lern entwickelt, und ich habe noch nie Templates oder sowas darin gesehen! Die werden es ja wohl wissen?"

    herrlich!!

    nur damit irrlicht nicht in verruf kommt, sonder das schlechte licht bei deinem kollegen bleib der irrlich verwendet aber nix ueber die exestenz von templates weiss, namespaces usw

    erste zeile von irrlicht bsp code
    (die anscheinend ohne nachdenken was da steht und getan wird verwendet wird)

    // start up the engine
    IrrlichtDevice *device = createDevice(video::EDT_DIRECT3D8,
                    core::dimension2d<s32>(640,480));
    


  • net schrieb:

    hab' jetzt nicht alle seiten gelesen, aber hat schon einer geschrieben, dass coden in java viel mehr spass macht als in c++? mir jedenfalls...

    Geht mir ähnlich. Das führe ich allerdings darauf zurück, dass ich zu wenig mit C++ programmiere, um da eine entsprechende Routine zu bekommen. Für mich läuft "mit C++ programmieren" meistens darauf hinaus, dass ich viel Zeit mit dem Debugging verbringe. Wenn ich mit Java programmiere, dann läuft das darauf hinaus, dass ich die meiste Zeit programmiere. Ich muss da nicht so viel debuggen.

    Aber wie schon gesagt: Ich denke, dass das subjektive Erfahrungen sind, die sich vermutlich relativieren würden, wenn ich häufiger etwas mit C++ machen würde.



  • Ich verstehe gar nicht, warum irgendjemand, dem Sicherheit wichtig ist, noch Java programmieren soll, wo Cobol doch all die Dinge verbietet, die man selbst in Java noch falsch machen kann ?

    Gregor schrieb:

    ...
    ...Für mich läuft "mit C++ programmieren" meistens darauf hinaus, dass ich viel Zeit mit dem Debugging verbringe. Wenn ich mit Java programmiere, dann läuft das darauf hinaus, dass ich die meiste Zeit programmiere....

    Schau an... wenn ich C++ programmiere, dann verbringe 2 Stunden damit, Compilefehler zu beheben ... und danach läuft mein Programm und tut, was es soll.
    Wenn ich Java programmiere, compiliert der erste Versuch gleich durch und ich bin 2 Wochen mit Testen und Korrigieren beschäftigt. 😉

    BTW: Schonmal einen Treiber in Java programmiert ?
    Wer "die Macht" haben will, darf sich nicht darüber beschweren, dass sie ihm zu stark sei. 😉
    Es ist schon lustig (wenn auch verständlich), dass Javaprogrammierer immer wieder durch die "Spanne an Möglichkeiten", die C++ bietet, irritiert sind. Einerseits auf rohem Speicher rumfrickeln, andererseits generische typsichere Programmierung .... sich da für das rechte Maß zu entscheiden ist natürlich schwierig.

    Gruß,

    Simon2.



  • BTW: Schonmal einen Treiber in Java programmiert ?

    Würde nicht unbedingt den Satz "die richtige Sprache für die richtige Aufgabe" erfüllen. Weil du aber von der Macht von C++ sprichst: Genauso ist es dann ja falsch für eine kleine WebApp die Fliege mit der Kanone zu erschießen?!

    MfG SideWinder



  • SideWinder schrieb:

    [...Genauso ist es dann ja falsch für eine kleine WebApp die Fliege mit der Kanone zu erschießen?!

    MfG SideWinder

    Ich weiß nicht welche Kanone Du meinst (und mit dem Bild "Fliege/Kanone" definierst Du ja schon die einzig richtige Antwort), aber für "eine kleine WebApp" würde ich mir definitiv die aktuelle Toollandschaft (Java, PHP, ...) vorurteilsfrei ansehen.

    Im Umfeld "kleine WebApp" ist Java entstanden und da hat es (zu Recht) seine größte Verbreitung gefunden ... leider verstellt das manchem Javaentwickler die Sicht darauf, dass "kleine WebApp" beileibe nicht das einzige Anwendungsfeld von Programmiersprachen ist. Und bedauerlicherweise entwickelt sich da dann auch die Ignoranz für die Grenzen des eigenen Horizonts bzgl. Programmiertechniken, -feldern und -sprachen.

    Ich habe gar kein Problem mit Java - unsere Firma ist vor einigen Jahren strategisch auf Java umgestiegen und ich halte diese Entscheidung für absolut richtig. Trotzdem werden verschiedene Projekte bei uns in C++, C, Cobol, ASM, .... entwickelt - eben solche, für die eine andere Sprache/Umgebung/... sinnvoller sind.
    Lediglich den Absolutheitsanspruch einer Sprache kann ich nicht teilen.

    Gruß,

    Simon2.

    P.S.: Es gibt einige Dinge an Java, die ich bei C++ vermisse oder zumindestens gute Ideen finde (strenge excep-spec., Vererbungsverbot via final, ....) andere wiederum schätze ich an C++....



  • Simon2 schrieb:

    BTW: Schonmal einen Treiber in Java programmiert?

    Nö. Ich stell ja auch keine Hardware her. Warum sollte ich dann nen Treiber programmieren? Abgesehen davon wurde schon auf der ersten Seite des Threads hier geklärt, dass Java für solche Dinge weniger geeignet ist. Wobei es durchaus Leute gibt, die sich daran versuchen, Betriebssysteme in Java zu programmieren. Siehe zum Beispiel JNode. Es scheint also nicht völlig unmöglich zu sein.



  • In diesem Thread scheints aber eher um den Absolutheitsanspruch von C++ zu gehen. Und dieser ist genauso einfach nur falsch und aus wirtscahftlichen Gründen absolut nicht zu empfehlen.

    BTW: Derzeit ist Java eher im Enterprise-Web-Markt unterwegs als bei "kleinen WebApps". J2EE ist ein sehr mächtiger Standard der derzeit eben mit Java am besten umsetzbar ist. Enterprise Beans in Verbindung mit Servlets und JSP machen eine sehr mächtige 3-Tier-Kombination aus die nicht zu unterschätzen ist.

    MfG SideWinder



  • Gregor schrieb:

    Simon2 schrieb:

    BTW: Schonmal einen Treiber in Java programmiert?

    Nö. Ich stell ja auch keine Hardware her. Warum sollte ich dann nen Treiber programmieren? Abgesehen davon wurde schon auf der ersten Seite des Threads hier geklärt, dass Java für solche Dinge weniger geeignet ist. Wobei es durchaus Leute gibt, die sich daran versuchen, Betriebssysteme in Java zu programmieren. Siehe zum Beispiel JNode. Es scheint also nicht völlig unmöglich zu sein.

    Sorry, dass ich nicht die Nerven hatte, mich durch 16 Seiten durchzuwühlen. Ich habe die ersten 3 Seiten (mit "bulls***-skip") überflogen und da schien mir das Thema noch nicht abschließend behandelt zu sein.

    Gruß,

    Simon2.



  • Gregor schrieb:

    Simon2 schrieb:

    BTW: Schonmal einen Treiber in Java programmiert?

    Nö. Ich stell ja auch keine Hardware her. Warum sollte ich dann nen Treiber programmieren? Abgesehen davon wurde schon auf der ersten Seite des Threads hier geklärt, dass Java für solche Dinge weniger geeignet ist. Wobei es durchaus Leute gibt, die sich daran versuchen, Betriebssysteme in Java zu programmieren. Siehe zum Beispiel JNode. Es scheint also nicht völlig unmöglich zu sein.

    Mit Java ein Betriebssystem zu programmieren ist geistig aber nicht so der Knüller.

    MfG SideWinder


Anmelden zum Antworten