Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 02:39

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Ist C++ noch aktuell?

Discussion on Ist C++ noch aktuell? within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
V8II's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 475
Received Thanks: 130
Ist C++ noch aktuell?

Hi,
Zahlt es sich noch aus mit C++ anzufangen? Habe lange gezögert, zwei meiner Programmierprofessoren meinten es ist mittlerweile veraltet und haben mir in richtung C#, java geraten. Wie seht ihr das?
V8II is offline  
Old 04/16/2012, 19:11   #2
 
Tyrar's Avatar
 
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
natürlich ist c++ aktuell, mit c++ kannst du u.a. die schnellsten programme schreiben und grundsätzlich auch cross kompatiblen code!
c# lässt sich nur auf windows ausführen (oder mindestens einem emulator), java hat auch nur eine vm die (bei aufwändigen sachen) auch extrem leistung benötigt (siehe minecraft)
Tyrar is offline  
Thanks
1 User
Old 04/16/2012, 19:42   #3
 
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
Wenn man sich an aktuelle C++ Standards hält ist C++ keineswegs veraltet.
Java und C# sind, meiner Meinung nach, pefekt für Anwendungssoftware geeignet. Sie bieten schon im Standardumfang Möglichkeiten für GUI- und Datenbankprogrammierung an. Im Falle von C++ müsste man hierbei schon auf Bibliotheken von dritten zurückgreifen.
jacky919 is offline  
Old 04/16/2012, 20:17   #4


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
C++ > C# >>>>>>> Java (> C @Coxxy :P)


C++ ist nicht veraltet, es bekommt andauernd Aktualisierungen und versuch mal mit C# oder Java Treiber zu schreiben.
Finds jedes Mal lustig, wenn irgendwelche Pseudo-Wahrsager meinen, C++ würde langsam aber sicher verschwinden und Platz für virtuelle Sprachen wie C# oder Java machen

Quote:
c# lässt sich nur auf windows ausführen (oder mindestens einem emulator), java hat auch nur eine vm die (bei aufwändigen sachen) auch extrem leistung benötigt (siehe minecraft)
C# und Java sind dafür aber crossplattform, C++ Code musst du jedes mal neukompilieren und das klappt auch nur, wenn du standardkonform programmierst.
MrSm!th is offline  
Thanks
2 Users
Old 04/16/2012, 21:58   #5
 
Tyrar's Avatar
 
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
Quote:
Originally Posted by MrSm!th View Post
C++ > C# >>>>>>> Java (> C @Coxxy :P)


C++ ist nicht veraltet, es bekommt andauernd Aktualisierungen und versuch mal mit C# oder Java Treiber zu schreiben.
Finds jedes Mal lustig, wenn irgendwelche Pseudo-Wahrsager meinen, C++ würde langsam aber sicher verschwinden und Platz für virtuelle Sprachen wie C# oder Java machen

C# und Java sind dafür aber crossplattform, C++ Code musst du jedes mal neukompilieren und das klappt auch nur, wenn du standardkonform programmierst.
C# is crossplatform? kein windoof emu?
und java ist klar, nur da wären wir wieder beim thema, was ist wirklich crossplattform? darauf hätte ich jetzt keine lust, passt ausserdem nicht hier rein!

wie du schon sagst, wenn man c++ nach dem standard coded hat man zwischendrin nur einige extra zeilen, die man per ifdef oder ifndef je nach platform verwenden kann! allerdings ist es diese extra arbeit für das endergebnis wert
Tyrar is offline  
Old 04/16/2012, 22:38   #6
 
Dr. Coxxy's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 1,206
Received Thanks: 736
wurde praktisch schon alles gesagt, nur dass mrsmith wohl versehentlich c ans ende verschoben hat...
__asm shl c, 3;

für geschwindigkeit-/platzoptimiertes programmieren ist C/C++ immer "noch" die sprache(n) der wahl.

kürzlich hat C auch wieder java im tiobe sprachindex überholt
(C++ dümpelt da eh "nur" auf platz 3 rum )

Stimme aber smith zu, Sprachen wie C/C++ werden nie verschwinden, da man immer geschwindigkeitsoptimierte programmierung brauchen wird.
asm ist ja auch noch nicht weg und wird auch nie vollständig verschwinden.
C wird sich aufgrund der einfachheit (von der sprache her, nicht unbedingt vom code) gegenüber C++ halten.
Merken die Leute jetzt zu zeiten der Cloud wieder, dass laufzeit auch noch zählt^^
Dr. Coxxy is offline  
Thanks
1 User
Old 04/17/2012, 16:52   #7
 
elite*gold: 5
Join Date: Sep 2006
Posts: 385
Received Thanks: 218
Quote:
Originally Posted by HeavyHacker View Post
C# is crossplatform? kein windoof emu?
und java ist klar, nur da wären wir wieder beim thema, was ist wirklich crossplattform? darauf hätte ich jetzt keine lust, passt ausserdem nicht hier rein!
C# ist zumindest theoretisch Plattformunabhängig. Es muss nur eine CLR für das entsprechende System erstellt werden.


@TE:
C++ ist aktueller denn jeh! Auf Channel9 wird sogar von einer C++ Revolution gesprochen, die zur Zeit stattfindet! Du bist also nicht alleine und darfst davon ausgehen, dass auch noch in 20 Jahren C++ eine der aktuellen Sprachen ist!
Nightblizard is offline  
Thanks
1 User
Old 04/18/2012, 21:22   #8


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
C# is crossplatform? kein windoof emu?
Für Mac und Linux gibts Mono.
Quote:
und java ist klar, nur da wären wir wieder beim thema, was ist wirklich crossplattform? darauf hätte ich jetzt keine lust, passt ausserdem nicht hier rein!
Ähm ja. Nach meiner Definition theoretisch nicht, da es nur auf der JVM läuft, aber nach der allgemein gültigen Definition selbst verständlich. Java läuft überall, wo Java installiert ist. C++ kannste immer neukompilieren, du brauchst natürlich auch einen entsprechenden Compiler und nebenbei können APIs sich unterscheiden.
Quote:
wie du schon sagst, wenn man c++ nach dem standard coded hat man zwischendrin nur einige extra zeilen, die man per ifdef oder ifndef je nach platform verwenden kann! allerdings ist es diese extra arbeit für das endergebnis wert
Wenn man standardkonform programmiert, braucht man gar keine #ifdefs.
Die brauchst du erst, wenn du systemabhängige APIs nutzt und die sich halt unterscheiden.
MrSm!th is offline  
Thanks
1 User
Old 04/26/2012, 19:46   #9
 
elite*gold: 37
Join Date: Apr 2012
Posts: 279
Received Thanks: 31
C++ ist alt , aber nicht veraltet!

Das meiste wurde ja gesagt, für Treiber, leistungsintesieve Anwendunge, vile Game Engines usw. ist C++ unerlässlich.

Auserdem finde ich ganz nebenebei erwähnt, dass man mit einem guten C++ Buch einen richtig Tiefen Einblick in die Methoden bekommt, wie ein computer überhaupt Arbeitet, was bei "neueren" Sprachen oftmals verloren geht...
-Chin- is offline  
Old 04/26/2012, 20:03   #10
 
Dr. Coxxy's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 1,206
Received Thanks: 736
wenn einen interessiert wie ein computer arbeitet -> ASM -> C.
Dr. Coxxy is offline  
Old 04/26/2012, 20:17   #11
 
Tyrar's Avatar
 
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
Quote:
Originally Posted by Dr. Coxxy View Post
wenn einen interessiert wie ein computer arbeitet -> ASM -> C.
was willst du mit c?
in dem fall nur asm
Tyrar is offline  
Thanks
2 Users
Old 04/26/2012, 20:25   #12


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by -Chin- View Post
C++ ist alt , aber nicht veraltet!

Das meiste wurde ja gesagt, für Treiber, leistungsintesieve Anwendunge, vile Game Engines usw. ist C++ unerlässlich.

Auserdem finde ich ganz nebenebei erwähnt, dass man mit einem guten C++ Buch einen richtig Tiefen Einblick in die Methoden bekommt, wie ein computer überhaupt Arbeitet, was bei "neueren" Sprachen oftmals verloren geht...
Das liegt daran, dass man mit ihnen ohnehin nicht auf die Hardware zugreifen kann und sie ja auch genau dafür entwickelt wurden, den PC zu abstrahieren.

Was Coxy sagt is Blödsinn :> Wer wissen will, wie ein PC funktioniert, lernt, wie ein PC funktioniert und ggf. ASM. C hat damit wenig (in Worten: gar nichts) zu tun.
Wenn man das ganze in einer Hochsprache verpacken möchte, kann man dafür genau so gut C++ nehmen.
MrSm!th is offline  
Old 04/26/2012, 20:25   #13
 
zero5's Avatar
 
elite*gold: 0
The Black Market: 666/0/0
Join Date: Feb 2009
Posts: 2,347
Received Thanks: 552
Quote:
Originally Posted by HeavyHacker View Post
was willst du mit c?
in dem fall nur asm
Ich persönlich bevorzuge eigentlich Flat Assembler und wenn es etwas mehr in Richtung High(er)-Level gehen soll C. Finde C++ in sich nicht ganz so konsistent, auch wenn es einem in sehr vielen Bereichen die Arbeit (im Gegensatz zu älteren C Standards) stark erleichtert. Fängt schon bei den Vektoren an. Hab mich allerdings nie wirklich mit C++ anfreunden können.

Der extreme Vorteil von C# u.ä. ist der, dass sich ein Programm immer an die modernen CPU Flags und Hardwareeigenschaften anpassen wird, da der Code ja zur Laufzeit an deine Hardware angepasst wird (JIT-Debugger). Um dies bei C++ (oder aber auch Assembler) Projekten zu erreichen, musst du stets den Code neu kompilieren, da ein früher kompiliertes Programm nicht für die aktuelle Hardware angepasst ist. Vergleichst du also zum Beispiel heute ein C++ Programm, welches vor 10 Jahren kompiliert wurde, mit einem äquivalenten C# Programm, wirst du vermutlich bemerken, dass das C# Programm schneller ausgeführt wird als das C++ Programm.

Ich programmiere auch beruflich sehr viel zeitkritische Anwendungen. Wenn ich alles aus meiner aktuellen Hardware rausholen möchte, nehme ich selbstverständlich Assembler (wenn ich mir aktuelle GCC Versionen ankucke bauen die teilweise doch noch ne Menge Scheiße). C# hingegen mag heutzutage zwar noch einige Bottlenecks haben, wird aber in Zukunft definitiv noch um einiges schneller werden.
zero5 is offline  
Thanks
1 User
Old 04/26/2012, 20:53   #14


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Nur eine kleine Korrektur:

Quote:
(JIT-Debugger)
JIT-Compiler wenn schon ;O

[/klugscheiß]

Ansonsten sehe ich das so ziemlich genau so, wobei ich die Inkonsistenz bei C++ nicht wirklich sehe bzw. sie mich nicht stört, aber das ist ja Ansichtssache.
MrSm!th is offline  
Thanks
1 User
Old 04/26/2012, 20:59   #15

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
Quote:
Originally Posted by zero5 View Post
Der extreme Vorteil von C# u.ä. ist der, dass sich ein Programm immer an die modernen CPU Flags und Hardwareeigenschaften anpassen wird, da der Code ja zur Laufzeit an deine Hardware angepasst wird (JIT-Debugger). Um dies bei C++ (oder aber auch Assembler) Projekten zu erreichen, musst du stets den Code neu kompilieren, da ein früher kompiliertes Programm nicht für die aktuelle Hardware angepasst ist.
JIT DEBUGGER = Just In Time DEBUGGER, ist, wie der Name schon sagt, ein Debugger, hat also mit dem Programm an sich nix zu tun. JIT Debugger ist das Kästchen, das dir sagt, wenn deine .NET Anwendung abgeschmiert ist, wo es passiert ist, und was du falsch gemacht hast.


Es gibt nicht wirklich viele Programme, die so alt sind, dass man einen großen Unterschied in der (verhältnismäßigen) Geschwindigkeit merken würde. Alte Programme sind meist veraltet, und es gibt neuere Versionen, mit schönerer Oberfläche, mehr Funktionen etc. Und swelbst als Programmierer schaut man doch danach, dass man seine Programme der Zeit anpasst und weiter entwickelt. Hört man auf, ein Programm zu entwickeln, dann gibt es wahrscheinlich ein anderes Programm, das das gleiche macht und weiter entwickelt wird.
Firmen etc. werden also auf das andere Programm umsteigen. Zwar mit Verzögerung (Einarbeitung, Anpassung der aktuellen Umgebung etc.), aber es wird so passieren.

Oder nutzt hier noch jemand Adobe Photoshop 4.0? Oder Office 98?

EDIT: Smith war schneller....
マルコ is offline  
Reply


Similar Threads Similar Threads
Xbox 360 wie lange noch Aktuell ?
09/06/2011 - Consoles - 8 Replies
Hallo, wie lange wird die Xbox 360 nocht stand halten ? LG danyo108
welcher Tele funzt aktuell noch ger?
02/05/2011 - Last Chaos - 1 Replies
net geht ja aktuell bei mir keine telen mehr. Gibts Ger einen Telehack der aktuell funzt? LG
Bugusing: Was ist noch aktuell? + Ein Bug von mir^^
09/08/2010 - Rappelz - 6 Replies
also wie im treadname schon steht suche ich aktuelle bugs..(natürlich die die man vorteilhaft ausnutzen kann) was ich entdeckt habe vor paar minuten das man beim schmied imhv kostenlos bzw. spottbillig manche sachen lvln kann (wurde EIGENDLICH vor 3 wochen behoben hat man mir gesagt) aber ich weis nicht wie ich das ausgelöst habe. war am lager hab neue und alte sachen geholt und probiert aber es ging nicht mehr. bitte sagt mir wie ich den bug auslösen kann! so und nun der bug den ich...
Joanas Rekord noch aktuell ?
08/11/2007 - World of Warcraft - 35 Replies
Hey, weiß jemand ob Joana mit seinem Rekord von 4d 20h auf herkömmlichem Wege (Normales questen ohne Instanzen / keine blauen Sachen geschickt bekommen ) noch aktuell ist, oder hats schon jemand schneller gepackt ?



All times are GMT +1. The time now is 02:39.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.