Hallo Zusammen
Wäre es
nicht einfacher alles in einer Sprache nur einmal zu machen, das dann auch auf allen Systemen
läuft?geht das oder warum es manchmal günstiger oder auch notwendig,ein
Projekt in verschiedenen Sprachen oder auch für mehrere Plattformen zu entwickeln?
Gruß Manfred
Hi,
das gleiche sagen auch Sprachforscher „wieso gibt es hunderte von Sprachen?“, es hat sich so entwickelt. Die verschiedenen Plattformen hängt damit zusammen das sowohl Mac als auch Windows kostenpflichtig sind, daher hat sich eine Gruppe gebildet die selber Betriebssysteme schreiben, die Linux Communities. Diese waren anfangs recht klein sind nun aber auch recht groß geworden. Die verschiedenen Sprachen habe sich, soweit ich weiss, alle aus ein/zwei Sprachen entwickelt. Und du hast recht es wäre einfacher wenn man alles in einer einheitliche Sprache machen würde, aber wie gesagt die Entwickler der Sprachen haben die unabhängig von einander entwickelt, denn als die Programmierung entstanden ist gab es noch kein Internet oder ähnlich schnelle Kommunikationssysteme.
Ich hoffe das hilft dir.
Lg der einzigware
OK danke
du hast mir den Arsch gerettet xD
Gruß Manfred
Noch mals danke
Hallo Einzigwarer,
das ist so richtig nicht. Ich habe Fortran, Assembler, Cobol 1977 erlernt. Da gab es weder Windows, noch MACS und Linus war knappe 9 Jahre alt.
Hier findest Du einen - zugegebenermaßen nicht sehr guten - Artikel zur Entwicklung der Porgrammiersprachen:
http://de.wikipedia.org/wiki/Programmiersprache
http://de.wikipedia.org/wiki/Fortran
Damals, als alle Welt geschätzet wurde - gab es Sprachen wie Fortran
http://de.wikipedia.org/wiki/Fortran
(habe ich gehaßt!)
Cobol:
http://de.wikipedia.org/wiki/COBOL
(lecker)
und noch manch andere, die heute in (relative) Vergessenheit geraten sind.
Forth (fand ich toll):
http://de.wikipedia.org/wiki/Forth_%28Informatik%29
Um die Frage des Ursprungspostern zu Beantworten:
Abgesehen von dem „technischen Fortschritt“ hat jede Sprache ihre Stärken und Schwächen.
Mikroprozessoren programmiere ich in Assembler oder z.B. der Arduino-IDE.
Schnell mal ein Programm zur grafischen Manipulation von Daten zu schreiben:
Processing.
Komplexere und objekt-orientierte Programme: Ruby (andere dies oder das …)
Datenbanken: Natürlich kennt man SQL
Was ich sagen will: Es gibt hubderte von Werkzeugen (Programmiersprachen) für Tausende von Anwendungen.
Zurück zum Ursprungsposting:
Stärker noch als bei „der menschlichen Sprache“ ist die Entwicklung und Umsetzung der Programmiersprachend sehr zweckbestimmt.
Es gibt viele Argumente zur „Verzweigung“ zwischen „Fortan“ und „Cobol“, es gibt wenig wissenschaftlich belegte Aussagen bezüglich der Notwendigkeit der Verzweigung zwischen q-und p-gaelic.
mfg
tf
Hallo,
Wäre es
nicht einfacher alles in einer Sprache nur einmal zu machen,
das dann auch auf allen Systemen läuft?
Das Problem ist, dass Programmieren eine sehr komplexe Angelegenheit ist. Und eine Programmiersprache kann zwar ein paar Sachen einfacher machen, macht aber gleichzeitig anderes komplizierter.
Stell dir das vor wie ein Wasserbett: Du kannst zwar einige Stellen eindrücken (= einfacher machen), aber an anderen Stellen steigt es dadurch wieder (= wird komplexer).
Deswegen gibt es für verschiedene Aufgaben verschiedene Programmiersprachen. Z.B. ist Fortran gut für numerische Simulationen geeignet (weil sehr schnell), aber es wäre ein riesen Aufwand, damit log files auszuwerten. Dafür wiederum eignet sich Perl ganz toll, was aber für Numerik zu langsam wäre. Und so weiter.
Wenn man einen Gerätetreiber schreibt, will man genaue Kontrolle über den Arbeitsspeicher. Wenn man einen Textprozessor schreibt, will man sich nicht um Speicher kümmern, das soll die Programmiersprache übernehmen. Wie sieht jetzt die ideale Programmiersprache aus? Hat sie automatische Speicherverwaltung oder nicht?
Grüße,
Moritz
Was für die allermeisten Systeme verfügbar ist ist C(++).
Allerdings muss man aufpassen, dass keine Sachen benutzt, die auf ein Betriebssystem gebunden ist. So wird z.B. sehr gerne die Windows-Bibliothek verwendet, um z.B. Fenster zu verschieben/killen/Größe ändern usw.
Das ganze wird dann nämlich unter Linux nicht mehr laufen. Ausserdem sollte man sein Programm so einrichten, dass es sich unter den verschieden GUIs möglichst gleich verhällt (Sprich Win, LXDE, GNOME, XCFE usw.). Am besten via Kommandozeile kommunizieren^^
Also ist C(++) sehr gut auf so gut wie allen OSs benutzbar, aber 100% ist es eben nicht gleich.
Allerdings benutze ich unter Win/Lin allermeistens FreeBASIC (jaja, kennt hier keiner^^ Wird aber mal Zeit dass das Teil bekannter wird, hätte es echt verdient)
Das kommt darauf an wer Du bist. Bist Du Endanwender, dann bestimmt, verdienst Du hingegen in der IT Dein Geld, dann nein.
Warum ist Microsoft erfolgreich? Weil Sie drittfirmen eine Grundlage für weitere Entwicklungen bieten. So entsteht ein Markt.
Wenn es nur eine Programmiersprache geben würde, würde diese gegen die Kartellgesetze und die Monoplherschaft verstosen. Sie hätte keine Konkurrenz und würde dadurch nicht den nötigen Druck für die Weiterentwicklung haben.
Warum fahren wir nicht alle das gleiche Auto, gleiche Kleider, gleiche Häuser, gleiches Telefon?
Weil wir alles individualisten sind…
Das Problem mit den Einheitswerkzeugen
Hallo,
Wäre es nicht einfacher alles in einer Sprache nur einmal zu machen,
das dann auch auf allen Systemen läuft?
Sehr gute Idee.
geht das
Ja, das geht schon, aber nur wenn sich absolut nix mehr weiter entwickelt,
was natürlich in der Computertechnik sowieso der fall ist, nicht wahr.
oder warum es manchmal günstiger oder auch notwendig,ein
Projekt in verschiedenen Sprachen oder auch für mehrere
Plattformen zu entwickeln?
Das ist so, als ob du allen Handwerkern ein Einheitswerkzeug für alle
ihre Arbeiten und für alle Zeiten vorschreibst.
Also z.B. einen richtig großen Hammer, den der Schmid braucht, um
große Teile zu schmieden und damit arbeiten dann alle Maurer,
Zimmerleute, Uhrmacher, Bäcker, Köche, Elektriker und KFZ-Schlosser.
Kannst natürlich auch den kleinsten Schraubendreher vom Uhrmacher als
Einheitswerkzeug deklarieren, aber damit kommen auch nicht alle so
richtig klar
Also, da gibt es nur eine Lösung: Das universelle
Hammer-Dreh-Bohr-Schneid-Schlüssel-Mess-Schipp-Drück-Löt-Schweiß-Werkzeug,
in dem die ca. 500 einzelnen Spezialwerkzeuge aller Handwerker
integriert sind.
Diese tolle Teil nur ein paar kleine Macken:
1) Wiegt knapp 600 Kilo, was dem etwas schwächlichen Uhrmacher
etwas Kopfzerbrechen macht.
2) Kostet 20.000€, was allen nicht so toll gefällt, weil jeder nur
höchstens 3% aller Möglichkeiten nutzt.
3) Die Suche nach dem richtigen Werkzeug in diesem wirklich universellen
"Schweizer-Taschemmesser" dauert oft 30 Minuten, was die Kunden etwas
nervt, weil die Werkzeugsuche zu An- und Abfahrtzeiten hinzukommt
4) Irgend was ist an dem Teil immer gerade nicht einsatzbereit, weshalb
die Reparaturen unbezahlbar sind und das Teil eigentlich nie benutzbar
ist, weil gerade beim Herstellerservice.
5) Die Messfunktionen leiden beim Hämmern doch erheblich, so dass selbst
der Schmied nicht unter 10mm Genauigkeit hin bekommt.
6) Die jährliche Sicherheitsüberprüfung z.B. der VDE-Sicherheit
dauert 14-Tage und bringt auch wieder einen Haufen Reparaturaufträge.
8) Der Hersteller geht bald Pleite, weil es nach kurzer Zeit keine
Handwerker mehr gibt, die das Ding kaufen könnten.
So ähnlich ist es auch mit den Programmierwerkzeugen.
Da gibt es richtig großer Hammer-Compiler mit paar hunder MB für die
ganz großen Projekte zu den Super-Duper-Prozessor-Befruchtern und
dann gibt es so mittelgroße Zangen-Compiler für die Desktop-Softis
und dann gibt es so ganz kleine Minidreher-Interpreter für die
Mikrocontroler-Fuzzis und ein Haufen weiteres Werkzeuge
für Datenbankheinis, Internetfreaks, Scriptkidis, …
Und natürlich ist ein Werkzeug, das mal zu Zeiten von einer
Großrechenanlage der 60iger Jahre entwickelt wurde (das Teil hatte
etwa die Rechenleistung eines heutigen Taschenrechners, wurde aber
nicht mit Tasten bedient, sondern mit Lochkarten) nicht mehr ganz
so gut nutzbar für einen heutigen 64-Bit-Prozessor, mit etwas
der 10Mdr-fachen Rechenleistung und dem 100Mio-fachen Speicher.
Gruß Uwi