PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : welche programmiersprachen werden heute gefragt (also beruflich) (bitte mit meinung)



doomcalyptica
03-11-2004, 21:07
hallo, ich habe eine frage die mich schon etwas beschäfftigt. aber erstmal zum verständnis ;)
in meiner schule steht in programierung C++ auf der speisekarte, ich programmiere mit C. (ist kein problem)
aber alle sagen, C++ ist die erweiterung und damit besser.
hmm stimmt zum teil, aber hardware nahes programmieren hat man eben nur mit C mit C++ sind viele sachen zu anderen dingen wie klassen und funktionen oder streams zusammengefasst, damit ist das programmieren stärker eingeschränkt als in C. also C++ == programmieren nach baukastenprinzip. (siehe printf zu cout ... wo steckt da die formatierte ausgabe ?)
und andere sachen wie HTML, man klickt sich nur noch seine seite zusammen, jeder kann im prinzip so etwas machen. damit kann kein "fachmann" geld verdienen, wenn jeder sowas kann.
also was denkt ihr, welche sprache wird die meiste berufliche zukunft haben,
assembler, C, C++, oder andere (bitte nennen) ? :rolleyes:

fs111
04-11-2004, 10:37
Das kommt immer darauf an, was die Firma genau macht. Ich denke, wenn man C++, Java und eine Skriptsprache beherrscht ist man gut bedient. Ich z.B. mache auf der Arbeit alles in Python, da es einfach viel schneller zu entwickeln ist, als bspw. C oder C++. Einen Kernel-Treiber würde man damit sicherlich nicht schreiben, aber für fast alles andere ist es ideal. Das liegt aber immer daran, wie die Firma, in der man arbeitet, das sieht.

Sicherlich ist es auch gut, wenn man sich im J2EE-Bereich auskennt, also Servlets/JSP, Web-Services, XML, (EJB) etc. Das ist wichtiger als nur das Beherrschen der Sprache Java an sich. Das ist z.B. auch ein Punkt, wo man mit C/C++ nicht weiterkommt, da es solche Technologien in einer solchen Ausprägung in deren Umfeld gar nicht gibt.

Es gibt nicht _die_ Programmiersprache, es gibt für jeden Zweck eine gute Lösung, und ein Programmierer sollte immer bereit sein eine neue Sprache zu erlernen, da sie ihm aufgrund neuer Konzepte neue Lösungsansätze aufzeigt, und seinen Horizont erweitert. Insgesamt ist C/C++ aber nicht alles, denn es kommt immer darauf an, was man macht.

fs111

Matflasch
04-11-2004, 11:10
Du kannst in C++ aber komplett alles machen, was du in C auch machen würdest ;)

Daher kannst du, auch wenn du Klassen etc verwendest, trotzdem genau so hardware nah programmieren wie mit c. C++ ist ja das komplette C, erweitert mit OOP.

Ich würde fs111 mal zustimmen.
Wenn man C/C++, Java und ne Scriptsprache kann (meist wahrscheinlich Perl, sonst Python, Bash, Batch, Ruby etc..), dann ist man schon sehr gut bedient.
PHP ist evtl auch recht interessant bei einigen Firmen... kommt halt drauf an.

Was ich auch in Verbindung mit Programmieren wichtig finde, sind die Datenbanken. Man sollte sich schon mit Datenbanken auskennen..., zumindest halt ANSI SQL beherrschen, bei einigen Datenbanken ist ja einiges anders (AS/400 ist ja mit Slash statt mit Punkt und sowas...), aber wer ANSI SQL kann, kann praktisch innerhalb kurzer Zeit jede DB bedienen...

Ansonsten wären Dinge wie XML für Datensicherung oder ähnliches und LaTeX, um z.B. ein Diagramm oder so zu erzeugen, gar nicht schlecht...

Insgesamt gesehen sollte man doch schon eine Menge können ;)

dark_red
04-11-2004, 13:16
Afaik hat C++ nicht exakt C inne. Wahrscheinlich muss man auch die verschiedenen Versionen der Sprachen ansehen.

Auf jedenfall ist es Müll zu behaupten, dass C++ besser als C ist. Man sollte die beiden Programmiersprachen am Besten komplet getrennt betrachten. C++ ist kein OOP C. C++ sieht nur stark nach C aus und kann OOP ;)

Geldverdienen lässt sich eigentlich mit allen Sprachen etwas. Gefragt ist heutzugtage aber - so wie ich das sehe - vor allem C, Java oder C#. C ist für den Embedded-Bereich, Java und C# sind im Serverbereich stark (mit den dazugehörenden Technologien: .NET, J2EE usw). Mit Stangensoftware ala Word und Excel verdienen die meisten Programmierer kein Geld. Schlagword: Individual Software.

Um ehrlich zu sein vermisse ich C++. Ich hatte einmal gedacht, dass es eine grössere Bedeutung im professionellen Umfeld hat.

Irgendwelche C++ Programmieren da, die mich eines besseren belehren wollen?

anda_skoa
04-11-2004, 15:05
Irgendwelche C++ Programmieren da, die mich eines besseren belehren wollen?

Ja :D

Ciao,
_

dark_red
04-11-2004, 15:07
Ich warte auf einen ausführlichen Erfahrungsbericht von dir... :D

mehlvogel
04-11-2004, 17:42
Ich denke er wird dich auf www.kde.org umleiten, afaik in C++ geschrieben. Eine Sprache die für überall benutzt wird gibt es nicht, aber die meisten werden wohl C, C#, C++, Java und diverse skriptsprachen benutzen. Aber gerade Java und C# gehört meines erachtens nach. Wenn ich mich so anner Uni umschaue (ja ich weis Universität != Industrie) ist die Entscheidung aber schon zugunsten von Java gefallen. :D

Lin728
04-11-2004, 19:55
Bei uns in der Schule auch von C++/MFC auf Java umgestiegen.

cybercrow
04-11-2004, 20:20
Ich denke C und C++ sind nach wie vor _die_ Kompilersprachen. Wenn man näher an der Harware ist nimmt man C wenn man mehr auf der Anwenderseite ist nimmt man C++. Was noch oft unterschätzt wird ist Ada95, Ada ist gerade in der Industrie auch sehr beliebt.
Daneben gibt es java und c#, welche gerade wenn es um Netzwerke, verteilte Systeme usw. geht ihre stärke ausspielen. Ob und wenn ja wer sich langfristig durchsetzt ist noch nicht klar, dazu ist c# zu jung.
Daneben kann es nicht schaden wenn man ein paar script-Sprachen kann, ich denke hier z.B. an python oder perl die sicher auch noch lange ihren Platz haben werden.

Alles andere denke ich ist mehr oder weniger interessante spielerrei oder wirklich nur in irgendwelchen nischen-Bereichen zu finden.

dark_red
04-11-2004, 21:57
Ich denke er wird dich auf www.kde.org umleiten, afaik in C++ geschrieben.
Wenn du mir jetzt noch sagst, wie ich damit Geld verdienen kann...

Bei uns wird hauptsächlich mit individual Software Geld verdient. Und da sehe ich die Verbreitung von C++ halt nicht so...

Trotzdem halte ich C++ für eine Sprache, die mehr als nur eine unter Vielen ist. Wie bereits geschrieben, habe ich vor einiger Zeit auch an eine grössere Verbreitung von C++ geglaubt...

cybercrow
04-11-2004, 22:05
Wenn du mir jetzt noch sagst, wie ich damit Geld verdienen kann...


einen Satz später gibst du dir schon selber die Antwort:



Bei uns wird hauptsächlich mit individual Software Geld verdient.


Mit individual Software auf der KDE/Qt Plattform...

dark_red
05-11-2004, 07:39
Gut... jetzt schreiten wir durch die hiesige Softwarefirmen-Landschaft, klopfen an jeder Tür und Fragen nach, ob sie C++/QT benutzen und ob sie Leute brauchen, die das können.

Dann machen wir das selbe, nur mit Java/.NET/C und vergleichen...



Vielleicht verstehst du jetzt, worauf ich hinaus will...

fs111
05-11-2004, 08:10
Was in meinen Augen noch viel wichtiger als das reine beherrschen der einzelnen Sprachen ist, ist das Verständnis für Software-Design, und das Wissen über die meistverbreiteten Designpattern (Singleton, Factory etc.). In welcher Sprache das nachher umsetzt, ist relativ egal, wichtig ist das vernünftige Design und die richtige Herangehensweise an die Software-Entwicklung.

fs111

Boron
05-11-2004, 09:16
fs111 bringt es auf den Punkt.
Was macht ein Schreiner (vgl. mit Entwickler/Programmierer) mit Holz und Werkzeugen (vgl. C/C++, Java ...), wenn er nicht weiß wie er daraus ein Schränkchen bastelt, das gut aussieht, praktisch und auch stabil ist.

Programmiersprachen sind nur Werkzeuge. Wie man diese benutzt kann man recht schnell lernen.
Aber das clevere "Drumherum" ist noch ein wenig wichtiger einzuschätzen.

cybercrow
05-11-2004, 13:12
Gut... jetzt schreiten wir durch die hiesige Softwarefirmen-Landschaft, klopfen an jeder Tür und Fragen nach, ob sie C++/QT benutzen und ob sie Leute brauchen, die das können.

Dann machen wir das selbe, nur mit Java/.NET/C und vergleichen...


Es war ja nur _ein_ Beispiel für C++ und ich denke spätestens wenn du bei ein paar GNU/Linux Firmen anklopfst findest du sicher auch einige Qt Entwickler.
Wenn dir das Beispiel nicht gefällt, dann streiche es. Das ändert nichts daran das du auch C++ häufig in der Industrie finden wirst.
Mit was wird denn die ganze Anwendungssoftware für windows geschrieben? Ich denke mal deutlich über 50% wird davon (MSV)C++ sein.

Ansonsten kann ich fs111 zustimmen. Wenn die die Konzepte Verstanden hast ist es kein Problem mehr eine andere Programmiersprache zu lernen.

peschmae
05-11-2004, 15:45
fs111 bringt es auf den Punkt.
Was macht ein Schreiner (vgl. mit Entwickler/Programmierer) mit Holz und Werkzeugen (vgl. C/C++, Java ...), wenn er nicht weiß wie er daraus ein Schränkchen bastelt, das gut aussieht, praktisch und auch stabil ist.

Und was macht ein Schreiner ohne Holz und Werkzeuge? ;)



Programmiersprachen sind nur Werkzeuge. Wie man diese benutzt kann man recht schnell lernen.
Aber das clevere "Drumherum" ist noch ein wenig wichtiger einzuschätzen.

Ich denke das eine kommt mit dem anderen. Wobei man allerdings - da muss ich euch recht geben - eine Programmiersprache ohne das "clevere "Drumherum"" lernen kann.

MfG Peschmä

dark_red
05-11-2004, 16:36
Man kann auch das "clevere Drumherum" ohne eine Programmiersprache lernen... das wird dann aber ziemlich trocken :D

anda_skoa
07-11-2004, 18:32
Ich warte auf einen ausführlichen Erfahrungsbericht von dir... :D

Inwiefern Erfahrungsbericht?

Du hast geschrieben, dass du einen C++ Programmierer suchst, der deiner Einschätzung widerspricht, dass C++ im professionellen Umfeld (was auch immer damit gemeint ist) wenig Verbreitung hat.

C++ drüfte nach C wahrscheinlich immer noch den weitesten Verbreitungsgrad in der SoftwareiIndustrie haben (wenn wir mal die großen Quantitäten alten Cobolcode vernachlässigen :D )

Natürlich wird C++ hauptsächlich auf PC- bzw PC-ähnlicher Hardware eingesetzt, also GUI-Applikationen, Dienste/Daemons, etc, (vorallem typische Endanwender Software)

Ciao,
_

anda_skoa
07-11-2004, 18:41
Und die wenigsten die jahrelang java gecodet haben, lassen sich noch gern auf ein großes c++ projekt ein *g*


Das ist noch stark von alten Erfahrungen mit C++ geprägt. Durch die mittlerweile durchaus gute Implementierung des Standards in den gebräulichen Compilern wird C++ mittlerweile von langjährigen Kritikern wieder besser bewertet.

Bei einem großen C++ Projekt hat man halt den Nachteil, dass man gute Leute braucht, die mit der Mächtigkeit der Sprache auch umgehen können. Simplifizierte Sprachen vergrößeren natürlich das Angebot an akzeptablen Entwicklern und oft genug sind die durch die Reduktion der Mächtigkeit erhaltenen Einschränkungen durchaus akzeptabel.

Ciao,
_

for_maniac
15-02-2006, 14:54
Ich habe den thread wieder ausgegraben weil es da um "clevere Drumherum" geht.
Gibt es dazu auch tutorials, denn das ist mein größtes Problem das ich dazu nichts finde.
Die meisten Tutorials zu irgendwelchen sprachen beschäftigen sich nur mit der Sprache selbst.
Um es mit der normalen Sprache zu vergleichen, es werden zwar Vokabeln und Grammatik gelehrt aber nicht wie man einen guten Aufsatz oder Roman schreibt.
Vlt. könnt ihr mir dazu ein paar gute Seiten (ggf. Bücher) zum Thema nennen.


Und zum Eigentlichen Thema habe ich auch noch eine Frage, momentan studiere ich E-Technik und ich möchte mir in den Semester Ferien noch eine andere Sprache beibringen als C/C++ (das wird bereits in den Info Vorlesungen behandelt), um bessere Chancen zu haben als Werkstudent bei SiemensVDO unterzukommen.
Kann mir da jemand einen Tip geben was ich mir am besten anschauen sollte und warum?
Ich dachte da evtl. an Python under Ruby, was haltet ihr davon?

MFG for_maniac

peschmae
15-02-2006, 15:02
Na das ganze Design-Patterns-Zeugs geht sicher in Richtung "cleveres Drumherum". Allerdings manchmal etwas gar zu clever ;-)

Sonst denke ich ist das clevere Drumherum hauptsächlich Erfahrung und die kriegt man beim Programmieren und Mitarbeiten an grösseren Projekten (wenn man denn Zeit hätte...).

Bzgl. andere Sprache: Python und Ruby sind beide ganz nett angeblich. Allerdings ists u.U. auch keine schlechte Idee C++ etwas zu vertiefen. Da gibts eigentlich immer noch jede Menge Zeugs was du nicht in der Vorlesung gesehen haben kannst - es sei denn die gehe 10 Jahre jeweils täglich 8 Stunden oder so :D

MfG Peschmä

for_maniac
15-02-2006, 15:18
Das mit den Softwarprojekten ist auch so ein Problem, ich habe keine Ahnung was ich da machen soll. Hab mir auch schon überlegt ob es nicht sinnvoll wäre an einen Opensource Projekt mitzuarbeiten aber zum einen weiß ich nicht welches und zum anderen kann ich dafür glaub ich zu wenig. ein Teufelskreis :(

Die weitere Sprache lernen ich unter anderem darum damit ich etwas in der Bewerbung zu Schreiben habe, ein hey da bin ich aber können tue ich nichts macht sich nicht besonders gut, vor allem weil ich erst das erste Semester beendet habe ist mein Kentnisstand noch relativ gering.

Mfg for_maniac

peschmae
15-02-2006, 16:28
Das mit den Softwarprojekten ist auch so ein Problem, ich habe keine Ahnung was ich da machen soll. Hab mir auch schon überlegt ob es nicht sinnvoll wäre an einen Opensource Projekt mitzuarbeiten aber zum einen weiß ich nicht welches und zum anderen kann ich dafür glaub ich zu wenig. ein Teufelskreis :(

Das Problem kann ich durchaus nachvollziehen und eine einfache Lösung gibts leider auch nicht.
Die einzige Möglichkeit ist halt mal *irgendwie* anzufangen irgendwo reinzuschauen (am besten mit einem konkreten Ziel irgend ein Feature hinzuzufügen oder so) oder auch ein eigenes Projekt zu starten (muss ja nichts grosses sein - du lernst schon dabei sehr viel).



Die weitere Sprache lernen ich unter anderem darum damit ich etwas in der Bewerbung zu Schreiben habe, ein hey da bin ich aber können tue ich nichts macht sich nicht besonders gut, vor allem weil ich erst das erste Semester beendet habe ist mein Kentnisstand noch relativ gering.


Du möchtest also eine Mogelpackung werden? Viele Sprachen drauf, nichts "cleveres Drumherum" drin? ;)
Klar, eine lange Sprachenliste tönt natürlich schon cool und möglicherweise hat das auch irgendwelchen Einfluss. Aber ich behaupte mal wenn man mal C++ gut kennt (inkl OOP, Templates, Exceptions und praktischer Erfahrung ...) dann kommt man mit den anderen Programmiersprachen (Scriptsprachen/Java/C#) recht schnell klar, vor allem weil die eigentlich alle einfacher (gewisse sagen eingeschränkter) sind.

MfG Peschmä

Mehlwurm
01-03-2006, 08:52
den beiträgen von fs111 und boron kann ich nur zustimmen.....

es gibt meiner unwichtigen meinung nach nicht DIE sprache.

wichtig ist, dass das prinzip verstanden wird und dann für das individuelle problem die am besten geeignete sprache ausfindig gemacht wird ... die dann noch zu erlernen, sollte doch wohl drin sein, da es zum grossen teil sehr vergleichbar ist, abgesehen oop und scripte ... es bis auf die syntax sehr vergleichbar

und dabei wollte ich garkein wort zum sonntag schreiben ;-)

pospiech
04-03-2006, 17:19
Passt ganz gut zu dieser Diskussion: Warum der Linux-Kernel nicht in C++ geschrieben ist: http://www.tux.org/lkml/#s15-3

Daraus folgt ganz gut warum man BS nicht in C++ entwickeln sollte. Umgekehrt ist C++ (und java) DIE Wahl für Anwendungen.

peschmae
04-03-2006, 18:04
Hmm, eigentlich sehe ich da nicht wirklich Gründe die gegen ein OS in C++ sprechen. Ich meine da stehen
a) Vorurteile (ich meine jetzt nicht das was da steht sondern es steht Kernelentwickler hätten was dagegen)
b) C++ sind/seien nicht zuverlässig und schlecht (sagt u.A. Linus)

Mal ganz abgesehen davon wird C++ durchaus auch für so Zeugs benutzt (zumindest irgend ein L4 ist in C++).

MfG Peschmä

Alex_K
06-03-2006, 09:03
Gibt es dazu auch tutorials, denn das ist mein größtes Problem das ich dazu nichts finde.
Die meisten Tutorials zu irgendwelchen sprachen beschäftigen sich nur mit der Sprache selbst.


genau das ist das problem an tutorials. sie halten sich in der regel recht kurz, und behandeln nur das nötigste. sie in vielleicht gut geeignet um einen überblick über eine unbekannte sprechte zu bekommen, oder um ein spezifisches problem zu behandeln, aber um von grundauf programmieren mit dem "cleverem drumherum" zu lernen sind sie meißtens nicht geeignet. das ist eben kein thema welches man sich in wenigen nachmittagen aneignen kann.

wenn du es wirklich lernen willst dann würde ich dir bücher empfehlen die speziell dieses thema behandeln. wie peschmae schrieb ist das alles was mit objektorientierter programmierung und design patterns zu tun hat.



Ich dachte da evtl. an Python under Ruby, was haltet ihr davon?


von den beiden kenne ich nur python. es ist eine recht interessante sprache, die viele vorteile hat. nur ob sie dazu geeignet ist das "clevere drumherum" zu lernen bin ich mir nicht sicher. die umsetztung der objektorientierung unterscheidet sich doch recht stark zu der von "großen" sprachen (C++, java, ..), vor allem durch vereinfachungen. der einstieg wird so vielleicht einfacher, aber ich vermute dass daufür die umstetzung des wissens auf eine andere sprache umso schwerer wird. im gegensatz dazu sollte der umstieg von C++ oder java auf python keine probleme bereiten.