Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Ich bin schon ein wenig älter und wollte meine grauen Zellen mal wieder aktivieren. Ich habe mich entschlossen, entweder C++ oder Java zu lernen. Java wäre schon ok, allerdings liest man immer über gravierende Sicherheitsmängel. Ich müsste das Java Kit auf meinem Rechner installieren, und genau da liegt mein Problem. Bringe ich meinen Rechner damit in Gefahr, nur um eine Programmiersprache zu erlernen? Sollte ich deshalb lieber C++ anfangen.
Das ist so stark vereinfacht gesagt, dass es eigentlich falsch ist. Java ist extrem komplex und bietet deshalb eine riesige Angriffsfläche. Trotzdem zwingt einen ja niemand, diese Angriffsfläche auch zu präsentieren (außer beim Browserplugin halt). Deshalb sehe ich kein Problem darin, das zu installieren. Zumindest wenn man ausschließlich Sicherheitsbedenken hat.
Und C++ ist weniger komplex und "unsicher"? Der war aber gut! Den Lacher heute morgen hab ich gebraucht
Eine Programmiersprache ist nie "unsicher". Die Programme die man damit schreibt, die Laufzeitumgebung, die VM, aber nicht die Sprache.
Ein Javaprogramm welches lokal läuft ist genau gleich wie jedes andere Programm inkl. C++ Programme.
Habe auch nirgendwo behauptet, irgendeine Sprache wäre unsicher oder sogar Java wäre unsicher. Ich habe gesagt, komplexe Systeme bieten eine große Angriffsfläche und Java ist unzweifelhaft extrem komplex.
Edit:
Ein Javaprogramm welches lokal läuft ist genau gleich wie jedes andere Programm inkl. C++ Programme.
Und ich habe auch gesagt, dass man nicht gezwungen ist, die Angriffsfläche nach außen zu präsentieren. Und mit einem lokal laufenden Programm ohne Verbindung nach außen, tut man das auch nicht.
Was ist jetzt dein Problem genau? Habe ich gesagt, dein Supermanpüppchen ist voll doof und mein Batman ist viel cooler und dich dann mit Sand beworfen?
Unsicher lässt sich im Englischen in insecure und unsafe übersetzten. Diese beiden Konzepte meinen etwas vollkommen verschiedenes. Ein Programm, welches beispielsweise einen Speicherzugriffsfehler enthält (also eine Runtime-Exception) ist unsafe. Die Sicherheit des fehlerfreien Betriebs ist also nicht gewährleistet. Dieses Form von Sicherheit kompromittiert dein Entwicklersystem aber vorerst mal gar nicht. Es kommt irgendwann an, was du damit machst. Beispielsweise, wenn du beliebig viel Speicher belegst kann dein System irgendwann abschmieren. Aber das sind Probleme bei der Programmierung als solche.
Die Insecurity ist ein anderes Problem: In dem Moment wo du zum Beispiel eine Passwortauthentisierung, oder einen FTP Server selbst implementierst, musst du entsprechende Sicherheitsvorkehrungen treffen, sodass man diene Zugangskontrollmechanismen nicht aushebeln oder umgehen kann. Dies kommt aber erst zum Tragen, sobald du deine Software produktiv oder ungeschützt (öffentlich im WWW) betreibst.
Solange es dir ums Programmieren und das Erlernen der Sprache geht, gibt es keine Gefahren in diesem Sinne. Die gekapseltere Form ist hier jedoch Java: Die Virtuelle Maschine in der der Bytecode ausgeführt wird bietet dir z.B. die Sicherheit in die oben genannten Probleme bei z.B. Speicherlecks nicht laufen zu können. Es bleibt Geschmackssache.
und bitte nicht die Köpfe einschlagen. Ich wollte einfach nur wissen, wenn ich Java installiere, ob mein PC wesentlich unsicherer wird, als er vielleicht sowieso ist. Ich werde also Java installieren und das Browser PlugIn deaktivieren.
Ich gebe dir Recht. Aber Op sollte auch bedenken welche Ziele er mit der neu erlernten Sprache verfolgt. Webentwicklung, Grafische Implementierungen...?
Ich gebe dir Recht. Aber Op sollte auch bedenken welche Ziele er mit der neu erlernten Sprache verfolgt. Webentwicklung, Grafische Implementierungen...?
Da rüber habe ich noch nicht wirklich Gedanken gemacht. Wie oben bei der Eröffnung geschrieben, will einfach meine grauen Zellen auffrischen. Man wird im Alter sonst noch senil. Ich würde z.B. Gerne einen nach meinen Vorstellungen, einen Taschenrechner, ein Memoryspiel usw. Kleine Programme halt.
Da rüber habe ich noch nicht wirklich Gedanken gemacht. Wie oben bei der Eröffnung geschrieben, will einfach meine grauen Zellen auffrischen. Man wird im Alter sonst noch senil. Ich würde z.B. Gerne einen nach meinen Vorstellungen, einen Taschenrechner, ein Memoryspiel usw. Kleine Programme halt.
Dann würde ich dir eindeutig Java empfehlen (Meine Meinung!). Der Einstieg ist (imo) leichter. Und die Sprache eignet sich auch super für die von dir genannten kleinen Programme.
Das sag ich immer wenn hier Leute ankommen die Java lernen wollen, also hier nochmal. Für einen schnellen und bequemen Einstieg in OOP und Java kann ich "Java von Kopf bis Fuß" sehr empfehlen! Hat mir im Studium (erstes Semester) sehr geholfen!
Übrigens würde ich mir in deinem Fall keine Gedanken über Sicherheit machen! Frag mal lieber wer kein JDK auf seinem Rechner installiert hat
Man sollte sich nur überlegen ob man nicht C# lernt, ist praktisch wie Java.
Ist ja nun Quelloffen und könnte in den nächsten Jahren einen Boom erfahren.
Für Java sind meine Buchempfehlungen:
1. "Jetzt lerne ich Java..." (Markt & Technik) - simpel gehalten, vermittelt Grundwissen, reicht sogar für die ersten Monate im Studium
2. "Java als erste Programmiersprache" - taugt nach dem obigen Buch, aber nichts für wirkliche Einsteiger
3. "Java Kompendium" - kein wirkliches Lehrbuch, beleuchtet nur mit kurzem Beispiel die Möglichkeiten in Java, top Ideen Geber was man noch lernen sollte
Man sollte sich nur überlegen ob man nicht C# lernt, ist praktisch wie Java.
Ist ja nun Quelloffen und könnte in den nächsten Jahren einen Boom erfahren.
Man sollte sich nur überlegen ob man nicht C# lernt, ist praktisch wie Java.
Ist ja nun Quelloffen und könnte in den nächsten Jahren einen Boom erfahren.
Wieso sollte man sich überlegen lieber C# zu lernen, wenn es praktisch wie Java ist?
Java hat schon einen "Boom" und ist dazu nicht nur für Windows verfügbar.
Ich denke man fährt besser erst Java zu lernen. Wenn man dann noch C# lernen will, ist es fast nur noch eine Eingewöhnung.
Wieso sollte man sich überlegen lieber C# zu lernen, wenn es praktisch wie Java ist?
Java hat schon einen "Boom" und ist dazu nicht nur für Windows verfügbar.
Ich denke man fährt besser erst Java zu lernen. Wenn man dann noch C# lernen will, ist es fast nur noch eine Eingewöhnung.
Jede Sprache hat Vor- und Nachteile. Weil schon sehr viele positive Sachen über Java gesagt wurden, hier ein paar negative Dinge über Java, die erst bei großen Projekten auffallen:
- Java und Performance bleibt ein Problem. Java frisst auch viel Speicher. Auf einem Rechner unter 4GB RAM würde ich nie ein größeres Java Projekt ausführen. Früher oder später erhälst du einen schönen "Java heap space out of memory" Error. Noch geiler ist der Error "GC overhead limit exceeded", der dich immer wieder daran erinnert wie geil C/C++ ist.
- Java und Versionen. Es gibt so viele unterschiedliche Versionen von Java, dass dein Code garantiert nicht auf allen Versionen gleich gut läuft. Offiziell sollte ein Java v6 Programm mit allen Java v6+ Versionen laufen. Bei großen Projekten kannst du das vergessen. Die Versionen sind einfach nicht kompatibel, so kommt es vor, dass auf einem Rechner mehrere Java Versionen installiert sein müssen. C# hat dieses Problem nicht!
Wieso sollte man sich überlegen lieber C# zu lernen, wenn es praktisch wie Java ist?
Java hat schon einen "Boom" und ist dazu nicht nur für Windows verfügbar.
Ich denke man fährt besser erst Java zu lernen. Wenn man dann noch C# lernen will, ist es fast nur noch eine Eingewöhnung.
Java hat einen Boom nach unten und zwar massiv. Siehe TIOBE Index.
Und das mit dem Heap hatte ich auch schon, liegt aber eher am Betriebssystem dass dem Prozess zu wenig RAM zuteilt und damit der Heap den Stack grüßt ;D