WinFuture-Forum.de: Welche Sprache? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Welche Sprache? c, c++ oder doch c#????


#1 Mitglied ist offline   DarkViruz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 363
  • Beigetreten: 04. Dezember 03
  • Reputation: 1
  • Geschlecht:Männlich
  • Wohnort:NRW

geschrieben 11. November 2005 - 17:03

ich weiss es wurde schon oft besprochen.
aber welche sprache würded ihr einem anfänge rempfehlen?

möchte c, c++ oder c# lernen.

und welches prog. könnt ihr dafür empfehlen?

schreibt doch eure erfahrungen ;)




grüße
michael
0

Anzeige



#2 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 11. November 2005 - 17:22

Was Lernen?

Da du zu faul bist die Suche zu benutzen, bin ich auch zu faul meine Antwort zu begründen.
C#

Aber die Begründung wirst du im Forum finden...
0

#3 Mitglied ist offline   Sepultura 

  • Gruppe: aktive Mitglieder
  • Beiträge: 663
  • Beigetreten: 18. September 05
  • Reputation: 7
  • Geschlecht:Männlich
  • Wohnort:Dresden
  • Interessen:PC, Internet, C/C++

geschrieben 11. November 2005 - 17:44

Ich würde dir C/C++ empfehlen (beide Sprachen)

Und das IDE: MS Visual Studio 98, 2003 bzw. 2005.
Wer Japanische Produkte kauft, unterstützt den grausamen Walfang
Boykottiert JAPAN
0

#4 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 347
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 11. November 2005 - 17:53

Kommt drauf an was du vorhast, idealerweise lernst du C dann C++ und dann mal auf die schnelle C#.

C ist relativ einfach zum Einsteigen, mit C++ hast du was fürs leben, C# ist wieder relativ einfach und man kann damit relativ schnelle viel machen.

C ist gut, wenn du was in Richtung Hardware machen möchtest. Bei C++ lernst du ordentlich Objektorientierte Programmierung und C++ ist sehr mächtig.
0

#5 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 11. November 2005 - 20:00

ok...da einige doch etwas mehr schreiben als ich, will ich meine Aussagen doch etwas bestärken.

Als C und C++ herauskam, haben die Assembler-Programmierer gemeckert, was das eigentlich soll, die Sprachen seein viel zu langsam.
Programmiert einer von euch in Assembler?

Als C# bzw. das .NET Framework herauskam (ggf sollte ich auch Java erwähnen), haben die C++ Programmierer gemeckert, was das eigentlich soll, die Sprache sein viel zu langsam.

Und wie sieht es heute aus? Richtig...man programmiert mittlerweile 3D-Engines in C#, die durch programmiertechnische Tricks genau so schnell sind wie Engines in C++.
Ohne sich irgendwie um Speicherverwaltungkram zu kümmern...

C# ist einfach zu erlernen, schnell und auf jeden Fall die Zukunft, da es durch Mono auch plattformunabhängig ist.

Und jetzt kriege ich Haue von den C++-Programmierer ;)
0

#6 Mitglied ist offline   Sepultura 

  • Gruppe: aktive Mitglieder
  • Beiträge: 663
  • Beigetreten: 18. September 05
  • Reputation: 7
  • Geschlecht:Männlich
  • Wohnort:Dresden
  • Interessen:PC, Internet, C/C++

geschrieben 11. November 2005 - 21:33

Beitrag anzeigenZitat (Witi: 11.11.2005, 20:00)

ok...da einige doch etwas mehr schreiben als ich, will ich meine Aussagen doch etwas bestärken.

Als C und C++ herauskam, haben die Assembler-Programmierer gemeckert, was das eigentlich soll, die Sprachen seein viel zu langsam.
Programmiert einer von euch in Assembler?

Als C# bzw. das .NET Framework herauskam (ggf sollte ich auch Java erwähnen), haben die C++ Programmierer gemeckert, was das eigentlich soll, die Sprache sein viel zu langsam.

Und wie sieht es heute aus? Richtig...man programmiert mittlerweile 3D-Engines in C#, die durch programmiertechnische Tricks genau so schnell sind wie Engines in C++.
Ohne sich irgendwie um Speicherverwaltungkram zu kümmern...

C# ist einfach zu erlernen, schnell und auf jeden Fall die Zukunft, da es durch Mono auch plattformunabhängig ist.

Und jetzt kriege ich Haue von den C++-Programmierer ;)


C# ist eine alternatie zu Java. Beides ist Plattformunabhängig.

C/C++ hat sich die ganzen Jahre gehalten und wird in Zukunft halten. Die Berufsschüler für Fachinformatiker/Anwendungsentwickler lernen auf unserer Schule eigentlich nur C/C++.
(Es ist eine Berufsschule)
Wer Japanische Produkte kauft, unterstützt den grausamen Walfang
Boykottiert JAPAN
0

#7 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 11. November 2005 - 21:39

Beitrag anzeigenZitat (Sepultura: 11.11.2005, 21:33)

Die Berufsschüler für Fachinformatiker/Anwendungsentwickler lernen auf unserer Schule eigentlich nur C/C++.
(Es ist eine Berufsschule)


Ich bin auch Anwendungsentwickler und bei uns wird mittlerweile nur noch C# gemacht...
0

#8 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 347
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 11. November 2005 - 23:45

Witi, dann zeig mir doch mal wie du bei Embedded Geräten mit C# programmierst?
Zeig mir wie du unter Windows nen Treiber damit programmierst, da und unter Linux geht ohne C nix.

Klar kann man mit C# nahezu alles machen, aber es gibt massig Bereiche in denen du mit C# uberhaupt nix putzt.

Wenn man meint, dass Java, C# heutzutage reicht, der legt sich doch gleich ordentlich fest was er machen will.

Zitat

ichtig...man programmiert mittlerweile 3D-Engines in C#


Welche ordentliche Engine ist denn in C# programmiert?
Das würde mich jetzt interessieren:-)


P.S. zu Assembler, gelegentlich bleibe ich nicht davon verschont ein paar Zeilen Assembler Code zu schreiben, einfach weil man bestimmte Register direkt ansprechen will, bzw. man aus Performance Gründen wirklich den einen oder anderen Takt sparen willst.

Drum wie ich schon vorher sagte, will man nicht nur Spielzeugprogrammierer werden sollte man auf jedenfall C und C++ beherrschen, C und C++ werden noch Jahre Mainstream sein, am besten siehst du es daran, dass inm aktuellen 2005er .NET C++ ordentlich gepuscht wurde und die einzige SAprache ist mit der du speziell optimierten Code erzeugen kannst.
0

#9 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 12. November 2005 - 01:50

Zitat

Witi, dann zeig mir doch mal wie du bei Embedded Geräten mit C# programmierst?
Zeig mir wie du unter Windows nen Treiber damit programmierst, da und unter Linux geht ohne C nix.

Klar kann man mit C# nahezu alles machen, aber es gibt massig Bereiche in denen du mit C# uberhaupt nix putzt.

Richtig...Treiber und so wirst du nicht programmieren können.
Wird der Topic-Ersteller das etwas machen?

Zitat

Welche ordentliche Engine ist denn in C# programmiert?
Das würde mich jetzt interessieren:-)

sicher: http://realmforge.com/

Zitat

P.S. zu Assembler, gelegentlich bleibe ich nicht davon verschont ein paar Zeilen Assembler Code zu schreiben, einfach weil man bestimmte Register direkt ansprechen will, bzw. man aus Performance Gründen wirklich den einen oder anderen Takt sparen willst.

Was bist du denn am programmieren, dass du auf Assembler zurückgreifen musst?
Du wirst mir aber hoffentlich zustimmen, dass du das bei den heutigen/aktuellen Prozessoren nicht mehr machen musst. Ich bezweifle, dass du da sichtbare Unterschiede merkst. Bei älteren...klar keine Frage.

Zitat

Drum wie ich schon vorher sagte, will man nicht nur Spielzeugprogrammierer werden sollte man auf jedenfall C und C++ beherrschen, C und C++ werden noch Jahre Mainstream sein, am besten siehst du es daran, dass inm aktuellen 2005er .NET C++ ordentlich gepuscht wurde und die einzige SAprache ist mit der du speziell optimierten Code erzeugen kannst.


Im Endeffekt kommt es drauf an, was du machen möchtest.
Wie du schon sagtest, willst du hardwarennah oder auf Embedded Systems programmieren, kommst du um c, c++ oder ähnliches nicht rum.
Und wenn du eine super abgefu**t schnelle Applikation erstellen musst.

Aber das war es meiner Meinung nach auch schon.
Der Rest
----> C#, Java

Dieser Beitrag wurde von Witi bearbeitet: 12. November 2005 - 01:51

0

#10 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 347
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 12. November 2005 - 03:00

Zitat

Was bist du denn am programmieren, dass du auf Assembler zurückgreifen musst?


Also ich hab erst letzte Wochen ein paar Zeilen in Assembler geschrieben um damit die Taktzyklen einer CPU abzufragen, benötige ich um in meiner Applikation zu messen, wie schnelle die jeweiligen Daten verarbeitet werden, dass ist in dem Kontext wichtig um festzulegen, wann bestimmte Aktionen abgebrochen werden sollen oder evtl pausiert werden.

Zitat

Richtig...Treiber und so wirst du nicht programmieren können.
Wird der Topic-Ersteller das etwas machen?


Weis mans? Außerdem gibt es massig alte Applikationen, die in C/C++ geschrieben sind, willst du sowas wirklich nicht warten können?

Es ist ja nicht immer so, dass du ne neue Anwendung schreiben darfst, bei der dir die Wahl der Programmiersprache frei steht.
Bei C# gehts ja schon los, dass du da das .NET Framework benötigst und das ist ja meistens totaler Overkill.

Ich finde C# auch super, aber mit C# alleine kommt man nicht weit, nicht im Professionellen Umfeld, wenn du allerdings mit C++ anfängst, dann ist ein Umstieg auf C# oder Java Peanuts.


P.S. Die Engine, die du mir gezeigt hast, sieht ja nicht besonders irre aus, da kann man wirklich nicht sagen, dass die an eine Quake Engine etc. rankommt. Aber ich will damit nicht sagen, dass man mit C# sowas nicht ordentlich machen kann vorrausgesetzt der Compiler und das Framework sind auch dafür optimiert Geschwindigkeit zu bringen, das ist aber bei .NET nicht das primäre Ziel.
0

#11 Mitglied ist offline   DarkViruz 

  • Gruppe: aktive Mitglieder
  • Beiträge: 363
  • Beigetreten: 04. Dezember 03
  • Reputation: 1
  • Geschlecht:Männlich
  • Wohnort:NRW

geschrieben 17. November 2005 - 15:02

wie lange braucht man denn um die sprachen zu erlernen?
vorteile + nachteile der sprachen?
welches programm soll ich dafür nutzen?
ist c wirklich nicht so schwer für einen der noch nie programmiert hat?
ich hatte mir mal ein buch über delphi gekauft.habs aber nachher nicht mehr so richtuig verstanden.
möchte win anwendungen schreiben.
welche sprache wäre da richtig.und wie lange brauche ich bis ich diese sprache einigermaßen behersche?
0

#12 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 17. November 2005 - 15:17

Im Gegensatz zu C und C++ musst du dich nicht um den ganzen Speicherverwaltungskram kümmern. Bei C# übernimmt das halt die Runtime für dich.

C# ist für einen Anfänger wie dich ein richtig guter und einfacher Einstieg in die Programmierwelt. Wenn du die OOP-Konzepte und dergleichen verstanden hast, kannst du dich ruhig an C++ heranwagen.

Das Schwere an C++ ist der ganze Speicherverwaltungskram, den du in C# nicht hast, weil das die Runtime für dich übernimmt.
Das ist so schwer, dass viele "C++-Profis" damit immer noch nicht umgehen können. Das erfährst du dann durch eine News, wie "Neuer Bufferoverflow in Programm X!".
Mit einem Pointer in die Leere zu schießen passiert wirklich ganz schnell...

Für den Anfang sollte dir also C# reichen.
Vielleicht wirst du später wirklich merken, "Hey C# reicht mir nicht, ich brauche was schnelleres und will endlich mit Pointern umgehen können".

Oder du willst einfach was neues lernen, dann klar, nimm C++.
Aber das musst du dann für dich entscheiden.

Und um C++ wirklich eingermaßen zu beherrschen, brauchst du wirklich lange...auf jeden Fall länger als C#

Ich hoffe, da wird mir [U]nixchecker diesmal zustimmen :D

Dieser Beitrag wurde von Witi bearbeitet: 17. November 2005 - 15:19

0

#13 _MagicAndre1981_

  • Gruppe: Gäste

geschrieben 17. November 2005 - 16:59

Beitrag anzeigenZitat (Witi: 17.11.2005, 15:17)

Vielleicht wirst du später wirklich merken, "Hey C# reicht mir nicht, ich brauche was schnelleres und will endlich mit Pointern umgehen können".



Wie kommst du darauf? C# ist genau so schnell wie C++. Der JIT-Compiler des .NET Frameworks ist genial schnell. Und Pointer kannst du unter C# auch haben. Aber diesen unsafe-Mist lasse ich weg. Das habe ich noch nie gebraucht.

André
0

#14 Mitglied ist offline   Talla 

  • Gruppe: aktive Mitglieder
  • Beiträge: 225
  • Beigetreten: 24. Februar 04
  • Reputation: 0
  • Wohnort:Esslingen

geschrieben 17. November 2005 - 17:04

Wenn du Windowsanwendungen schreiben willst und schnell Lernerfolge erzielen willst dann empfehle ich dir auch C#. Die Lernkurve ist einfach viel günstiger als bei C++, man muss sich nicht um viele Kleinigkeiten kümmern die einen das Programmiererleben schwer machen.
Heimat ist nicht immer dort, wo wir zur Welt kamen - Heimat ist wo wir lieben. *Ehm Welk
0

#15 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 17. November 2005 - 18:28

Beitrag anzeigenZitat (MagicAndre1981: 17.11.2005, 16:59)

C# ist genau so schnell wie C++.


Das stimmt...in meinen vorherigen Beiträgen wirst du sehen das ich genau das behaupte.
Aber nur durch Einsatz von gewissen "Tricks", wie zum Beispiel Unsafe Code mit Pointern.

Es gibt noch andere Tricks und Kniffe, wie du C# Code so schnell hinbekommst wie C++.

Ich wollte eigentlich mit meiner Aussage nur andeuten, dass wenn man diese Tricks nicht kennt und nicht benutzt (was ein Anfänger in der Regel auch nicht machen wird), das Ding langsamer ist.

Im DirectX SDK gibts nette Beispiel für und gegen C#

Dieser Beitrag wurde von Witi bearbeitet: 17. November 2005 - 18:30

0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0