Dennis Wronka
Soulcollector
Was ist denn an Assembler bitte sicherer als an Hochsprachen? Es ist dort doch im Grunde noch wesentlich komplizierter ordentlich zu ueberpruefen was vom User uebergen wurde, eben aufgrund der sprachlichen Beschraenkungen. Natuerlich kann man so einiges in Assembler loesen, aber heutzutage ist der Nutzen von Assembler wohl darauf reduziert sehr sehr nah an der Hardware (also abhaengig von einer bestimmten Architektur, ich verweise hier mal auf den Source-Code des Linux-Kernels) zu programmieren. Portabilitaet geht dabei vollkommen abhanden. Wenn Du bei der Assembler-Programmierung bestimmte CPU-Extensions nutzt kann es Dir sogar passierne, dass ein Programm wirklich nur auf einer CPU-Reihe laeuft. Wenn Du z.B. auf SSE2 setzen wuerdest dann wuerden wohl heutzutage noch so einige User dumm aus der Waesche schauen da viele gaengige CPUs diese Extension nicht haben. Ich denke mein AthlonXP 3000+ ist noch nicht wirklich veraltet und dieser bringt die Extension nicht mit.
Zusaetzlich sollen bei Dir Uebertragungen ueber ein Netzwerk stattfinden. Willst Du wirklich einen kompletten TCP-Stack integrieren, saemtliche Moeglichkeiten (direkte Internet-Verbindung, Verbindung ueber einen Router, ...) bedenken muessen und und und... Dabei musst Du selbst die Netzwerkhardware ansprechen, und da gibt es durchaus unterschiede. Willst Du fuer jede moegliche Netzwerkkarte (etc.) Deinen eigenen Treiber schreiben und das Programm somit zusaetzlich aufblaehen?
Weiterhin waere zu bedenken, dass ein Programm der Dir gewuenschten Art in Assembler wahrscheinlich 50 mal so lang (wenn nicht noch laenger) waere als aequivalenter C-Code.
Diese ganze Aufblaehung fuehrt zwangslaeufig dazu, dass die Geschwindigkeitsvorteile von Assembler floeten gehen und auch dazu, dass die von Dir genannte Sicherheit den Bach runter geht.
Uebrigens, es gibt nicht das GUI von Java und C++. Wenn ich z.B. in C++ ein GUI programmieren moechte stehen mir da diverse Bibliotheken zur Auswahl, z.B. GTK oder WxWindows, um mal lediglich 2 zu nennen.
Dass ein User eigene Rubriken erstellen kann kann fuer den User attraktiv sein, aber auch fuer einiges an Unordnung sorgen. Und damit geht dann die Uebersicht verloren, was auch den Spass und Nutzen verringert.
Zusaetzlich sollen bei Dir Uebertragungen ueber ein Netzwerk stattfinden. Willst Du wirklich einen kompletten TCP-Stack integrieren, saemtliche Moeglichkeiten (direkte Internet-Verbindung, Verbindung ueber einen Router, ...) bedenken muessen und und und... Dabei musst Du selbst die Netzwerkhardware ansprechen, und da gibt es durchaus unterschiede. Willst Du fuer jede moegliche Netzwerkkarte (etc.) Deinen eigenen Treiber schreiben und das Programm somit zusaetzlich aufblaehen?
Weiterhin waere zu bedenken, dass ein Programm der Dir gewuenschten Art in Assembler wahrscheinlich 50 mal so lang (wenn nicht noch laenger) waere als aequivalenter C-Code.
Diese ganze Aufblaehung fuehrt zwangslaeufig dazu, dass die Geschwindigkeitsvorteile von Assembler floeten gehen und auch dazu, dass die von Dir genannte Sicherheit den Bach runter geht.
Uebrigens, es gibt nicht das GUI von Java und C++. Wenn ich z.B. in C++ ein GUI programmieren moechte stehen mir da diverse Bibliotheken zur Auswahl, z.B. GTK oder WxWindows, um mal lediglich 2 zu nennen.
Dass ein User eigene Rubriken erstellen kann kann fuer den User attraktiv sein, aber auch fuer einiges an Unordnung sorgen. Und damit geht dann die Uebersicht verloren, was auch den Spass und Nutzen verringert.