wenn ihr heute nochmal von vorne anfangen müsstet, auf welche sprachen würdet ihr euch spezialisieren bzw. welche aneignen??
was hat zukunft, was is (bald) tot??
wär klasse wenn ihr einem anfänger wie mir auskunft geben könntet was der markt in zukunft so verlangt.
Wenn ich an die Prognosen welche vor ca. 20 Jahren gemacht wurden denke, dann kennt man COBOL und BASIC heute gar nicht mehr!
C wird, nur wenn unbedingt nötig, als komfortabler Assembler verwendet!
Und vom Video-Recorder bis zum Starwars-Projekt wird ALLES in ADA programmiert !!!
C# ist eine MS-Sprache welche Java ersetzten soll (Weil MS dann keine Lizenzprobleme mehr mit SUN hat) und MS versucht im Moment dieses C# dem Rest der Welt aufzuzwingen (IE 6 unterstützt Java nicht mehr, aber vieleicht ist in IE 6.1 Java wieder drin !!).
Auf Grund meiner Erfahrung werden diejenigen Sprachen welche Heute an den UNIs im Unterricht benutzt werden (heute vor allem C(C/C++) in den nächsten 10 bis 20 Jahren weiterleben.
aber es gibt auch private einrichtungen die fachinformatiker ausbilden und die den schwerpunkt hauptsächlich auf rpg auf der as/400 von ibm setzen. was ist davon zu halten???
aber es gibt auch private einrichtungen die fachinformatiker
ausbilden und die den schwerpunkt hauptsächlich auf rpg auf
der as/400 von ibm setzen. was ist davon zu halten???
RPG ist hauptsächlich auf IBM-Rechnern (AS/400 und aufwärts) gebräuchlich, nicht aber auf einem PC. Die AS/400 verwendet meist Unix (AIX oder Linux) als Betriebssystem und somit ist auch C/C++ installiert.
IBM hat schon immer sein „eigenes Süppchen“ gekocht und in der Mid- und Mainframe-Welt gelten ganz eigene Regeln.
Mittlerweile teilt sich die EDV-Welt in mehrere Hauptregionen auf:
Allgemeine Welt:
Procedurale Sprachen und klassische Betriebssysteme
Die Denkweise ist Mathematisch deterministisch.
1.a IBM:
Hat ein paar Eigenheiten: PL1, RPG und EBCDIC.
1.b Super- und Parallel-Computer:
Haben spezielle Probleme welche sich aus der Parallelisierung ergeben.
KI (Künstliche Intelligenz):
Hier herscht eine ganz andere Denkweise: Hier ist gar nicht so wichtig WIE der Computer die Lösung findet sondern es Zählt nur das RESULTAT (z.B. Neuronale-Netze).
MicroSoft:
Hier sind irgenwelche Chaoten Werk, welche nach dem Motto „Denn sie wissen nicht was sie tun“ arbeiten. Hier geht es vor allem ums Marketing: Es werden Dinge als NEU verkauft, welche in der „1. Welt“ schon lange üblich sind und dort, im Gegensatz zu MS, sogar stabil funktionieren. Um das ganze noch besser zu Tarnen werden zwar die Begriffe der „1. Welt“ verwendet bekommen aber eine andere Bedeutung, somit ist es den MS-Sklaven nicht mehr möglich sich mit den Leuten aus der „1. Welt“ zu unterhalten und dadurch das Ganze zu durchschauen.
z.B. der Coursor heisst bei MS Carret; ein Task ist bei MS ein Thread, ein Task bei MS ist aber etwas anderes.
Des Weiteren scheint MS nicht in der Lage zu sein Fehler in Ihren Programmen zu beseitigen z.B. werden einige Fehler in Word seit etwa 10 Jahren "mitgeschleppt. Ein kleiner Tipfehler im Code des Treibers für die Serielle-Schnittstelle in Windows 3.0 machte es unmöglich den Zustand einiger Statusleitungen über den normalen Treiber abzufragen. MS hat nun nicht etwa den Tippfehler behoben, sondern empfahl direkt auf die internen Variablen des Treibers zuzugreiffen. Gleichzeitig wurde garantiert, dass dies auch unter späteren Versionen noch funktionieren wird, tut es auch bis heute (Win2000)!!
Um auf deine ursprünliche Frage zurückzukommen: Zuerst musst du dich entscheiden in welcher „Welt“ du programmieren willst und dann kannst du entscheiden mit welcher Programmiersprache du das abdecken kannst.
Egal für welche „Welt“ du dich entscheidest, wirst du trotzdem mehrere Programmier-Sprachen lernen müssen.
Für Windows ist sicher VisualBasic (VB) die universellste Lösung, denn sobald du ein Macro für ein Office-Produkt schreiben willst, musst du dich mit VBA (VisualBasic for Applications und das ist eine Ab-Art von VB) rumschlagen.
…
ich würde sicherlich Basic und Pascal auslassen …mich nie mit VB auseinandergesetzt und stattdessen gleich C/C++/Asm/Perl/Python/Shell gelernt … evtl. noch Java (Servlets …)
bei C++ (GTK, QT, VCL, evtl. MFC)
Im Prinzip versuche ich heute das Ideale aus den Sprachen herauszuholen … je nach Einsatzgebiet versuche ich das Interface (die GUI) mit einer Interpretersprache zu programmieren (z.B. Python) und dann die Kernkomponenten in C/C++/Asm … je nach Einsatzgebiet
Die Kombination von allem verspricht ein Interessantes Einsatzgebiet … und nicht wie Golo meint die Fixierung auf eine Sprache (C# ist nicht ein Wundermittel für alles, desweitern muss der JIT erst noch beweisen was er kann … )
IE 6 unterstützt kein Java mehr? Das ist falsch!
Hi Peter,
dass der IE 6.0 kein Java mehr unterstützt, ist definitiv falsch! Die VM wird nicht mehr mitgeliefert, aber - sobald man die erste Seite, die Java benötigt, aufruft - wird die VM nachträglich heruntergeladen und installiert.
Ist genau das selbe Vorgehen wie bei allen anderen PlugIns wie beispielsweise Flash, was auch nicht immer dabei ist.
wär klasse wenn ihr einem anfänger wie mir auskunft geben
könntet was der markt in zukunft so verlangt.
Ich denke du solltest dich als Anfänger eher darauf konzentrieren welche Sprache sich eignet um das Programmieren zu lernen. Dazu hat es kürzlich eine Diskussion gegeben, ich glaube da gibt es nichts mehr hinzuzufügen.
Als geübter Programmierer fällt es relativ leicht eine neue Sprache zu lernen. Der mühsame Teil ist eher die Kenntniss der jeweiligen Klassenbibliotheken, Libraries, APIs etc., und das variiert nicht nur von Programmiersprache zu Programmiersprache sondern von Anwendung zu Anwendung, und das Wissen ist oft eher sprachunabhängig (z. B. sind die meisten APIs zur Datenbankprogrammierung ähnlich).
Auf jeden Fall sollte man zuerst in den Grundlagen des Programmierens sattelfest sein, bevor man sich mit sowas beschäftigt, und die lassen sich mit den meisten Sprachen erlernen (siehe wiederum die schon angesprochene Diskussion).
Also ich kann nur sagen nicht mit etwas anfangen was High_end-Programing ist um Zukunftssicher zu sein. Am besten fängt man wohl mit sowas wie Turbo Pascal an. Ich habe damit angefangen und gute Erfahrungen gemacht. Dies kann ich auch von anderen berichten. Ich kann nur davor warnen sich gleich in was komplexes zu stürzen, da man doch recht schnell den Mut verlieren kann.
Wie schon gesagt wurde: Wenn du das Kozept des Programierens an einer einfachen Sprache mal gelernt hat ist der Umstieg auf eine neue Sprache recht einfach.
Greetz
Martin
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
C++ und Java!!! Weil C++ die beste und Java die plattformübergreifenste ist, und weil beide sich sehr ähnlich sind und man damit die komplexesten Programme schreiben kann!
Das einzigste was ich anders machen würde:
Wenn ich wieder zurück gehen könnte, hätte ich damals einen Kurs für Programmieren besucht, dann wäre ich nicht so frustriert gewesen als Autodiktat! Man kann sich halt nicht alles selbst beibringen!
C++ und Java!!! Weil C++ die beste und Java die
plattformübergreifenste ist, und weil beide sich sehr ähnlich
sind und man damit die komplexesten Programme schreiben kann!
Zwei dumme Fragen, wieso ist C++ die Beste und wieso kann man mit beiden die komplexesten Programme schreiben (bzw. wie definierst du „komplex“)?
Das erklärt aber nicht warum C++ die beste ist (besser als z. B. Java) und auch nicht warum die zwei die besten für komplexe Anwendungen sind, weil es gibt auch andere objektorientierte Sprachen. Z. B. Delphi. VB hat auch schon objektorientierte Konzepte, in Version 7.0 soll alles drinnen sein was man von anderen OO-Sprachen gewöhnt ist.
Und es gibt noch viel mehr, auf die Schnelle fällt mir noch Smalltalk und Eiffel ein. Gegen die spricht für den Anfänger die Verbreitung, aber das heißt nicht, dass sie schlechter sind oder weniger für komplexe Anwendungen geeignet. Von Eiffel hört man z. B. recht wenig, aber von denen die es einsetzen meistens, das nie mehr was andres. :o)
Allgemeine Welt:
Procedurale Sprachen und klassische Betriebssysteme
ein beispiel für ein klassisches betriebssystem aus der allg. welt? wo prozedural programmiert wird? atari st mit omikron basic?
Die Denkweise ist Mathematisch deterministisch.
na, dann kann ja nix mehr schiefgehen.
1.a IBM:
Hat ein paar Eigenheiten: PL1, RPG und EBCDIC.
1.b Super- und Parallel-Computer:
Haben spezielle Probleme welche sich aus der Parallelisierung
ergeben.
KI (Künstliche Intelligenz):
Hier herscht eine ganz andere Denkweise: Hier ist gar nicht so
wichtig WIE der Computer die Lösung findet sondern es Zählt
nur das RESULTAT (z.B. Neuronale-Netze).
ganz anders! vollig neu! das resultat zählt. eine revolutionäre denkweise.
MicroSoft:
Hier sind irgenwelche Chaoten Werk, welche nach dem Motto
„Denn sie wissen nicht was sie tun“ arbeiten. Hier geht es vor
allem ums Marketing: Es werden Dinge als NEU verkauft, welche
in der „1. Welt“ schon lange üblich sind und dort, im
Gegensatz zu MS, sogar stabil funktionieren. Um das ganze noch
besser zu Tarnen werden zwar die Begriffe der „1. Welt“
verwendet bekommen aber eine andere Bedeutung, somit ist es
den MS-Sklaven nicht mehr möglich sich mit den Leuten aus der
„1. Welt“ zu unterhalten und dadurch das Ganze zu
durchschauen.
aha. daher resuktieren also die diversen probleme mit win.
…1.welt?.. irgendwann konnte ich nichmehr folgen.
z.B. der Coursor heisst bei MS Carret; ein Task ist bei MS ein
Thread, ein Task bei MS ist aber etwas anderes.
aber du weisst’s ja. könntest ja ne art dolmetscher werden.
Um auf deine ursprünliche Frage zurückzukommen: Zuerst musst
du dich entscheiden in welcher „Welt“ du programmieren willst
und dann kannst du entscheiden mit welcher Programmiersprache
du das abdecken kannst.
danke für diese tiefschürfende einführung in die welten der edv. danke für diesen schönen morgen…
pd.: 'tschuldigung…
es war aber doch alles so absurd.
folgendes ist beim erlenen des programmierens meiner meinung nach wichtig:
versuche unbedingt, dich ueber objektorientierte konzepte schlau zu machen - wenn du das verstanden hast, kannst du spaeter mit java/c++/c# umgehen!
nichts desto trotz sind kenntnisse des prozeduralen programmierens unumgaenglich (zb. pascal, basic).
mein konkreter vorschlag: setze dich mit zuerst mit einer „einfacheren“ sprache auseinander (visual basic, fuhert schnell zu erfolgen), halte dich dann spaeter an oo-sprachen (java, c#). auch mit visual basic 6 kann man bestimmte dinge oo realisieren!
fuer die zukunft ist sicherlich der umgang mit java wichtig, wenn man mal die entwicklung verfolgt (zb. java enterprise beans steht in fast jeder stellenanzeige!). nichts desto trotz wird c# ein grosser konkurrent werden, aber die sprache bzw. die entwicklungsumgebung ist noch im beta-stadium.