Hallo zusammen, ich interessiere mich für die Spieleprogrammierung und da kommt man anscheinend an C++ nicht wirklich vorbei (wenn man das nicht gerade mit einer Engine oder Java machen will). C++ soll aber so komplex sein, dass es lange dauert es verinnerlicht zu haben, C dagegen kann man anscheinend sehr schnell erlernen. In C gibt es soweit ich weis keine Klassenunterstützung. Aber ich habe mal was von C mit Klassen oder objective C gehört. Wird ein Klassenkonzept mittlerweile vom aktuellen C Standard unterstützt? Was ist objective C genau? Taugt C für die Spieleprogrammierung? Gruß newgear
newgear schrieb: > Aber ich habe mal was von > C mit Klassen oder objective C gehört. Wird ein Klassenkonzept > mittlerweile vom aktuellen C Standard unterstützt? Ja, das heißt dann C++. (Ist dann natürlich nicht mehr C.) In C ist es ineffizienter, größere Sachen zu machen, auch wenn letztlich alles in C geht was auch in C möglich ist. Man hat die Wahl...
:
Bearbeitet durch User
newgear schrieb: > Was ist objective C genau? Objective-C ist eine objektorientierte Programmiersprache wie C++, welche ebenfalls eine Obermenge von C ist. Objective-C ist aber eher in der Anwendungsentwicklung für Apple-Geräte relevant.
newgear schrieb: > Hallo zusammen, ich interessiere mich für die Spieleprogrammierung und > da kommt man anscheinend an C++ nicht wirklich vorbei (wenn man das > nicht gerade mit einer Engine oder Java machen will). Was für Spiele? > C++ soll aber so komplex sein, dass es lange dauert es verinnerlicht zu > haben, C dagegen kann man anscheinend sehr schnell erlernen. Kommt drauf an, was du schon kannst. Aber ja, C++ ist vom Sprachumfang her erheblich größer. Man muss allerdings nicht zwangsweise die gesamte Sprache kennen, um ein einfaches Spiel zu programmieren. > In C gibt es soweit ich weis keine Klassenunterstützung. Richtig. > Aber ich habe mal was von C mit Klassen oder objective C gehört. "C mit Klassen" war der Grundstein für das, was man heute C++ nennt. > Wird ein Klassenkonzept mittlerweile vom aktuellen C Standard > unterstützt? Nein, wozu auch? > Was ist objective C genau? Eine weitere objektorientierte Sprache, die auf C basiert. > Taugt C für die Spieleprogrammierung? Klar. Viele Spiele sind in C geschrieben. Da sich objektorientierte Konzept aber gut für die Spieleentwicklung eignen, nimmt man heute eben lieber Sprachen, die das direkt unterstützen, wie eben C++.
Klaus W. schrieb: > In C ist es ineffizienter, größere Sachen zu machen Performancetechnisch oder vom Aufwand her gesehen? Rolf M. schrieb: > Was für Spiele? Erstmal 2d Plattformer und Jump and Run. 3d wäre wohl noch zu weit hergeholt. Wie siehts aus mit C#? Ein Nachteil sind sicher die Abhängigkeiten zu den Frameworks.
Im Prinzip ist die Programmiersprache egal. Nimm eine die Du schon kennst, und programmiere Dein Spiel. Falls Dein Spiel mehr als ein Proof-Of-Concept wird, sind die Probleme auf die Du treffen wirst keine Sprach-Probleme, sondern Architektur-Probleme.
newgear schrieb: > Klaus W. schrieb: >> In C ist es ineffizienter, größere Sachen zu machen > > Performancetechnisch oder vom Aufwand her gesehen? Vom Aufwand her. Am Ende wirst du es sehr wahrscheinlich objektorientiert programmieren. Während C++ dich dabei unterstützt, musst du das in C "zu Fuß" machen, da die Sprache selbst dir dafür keine Mittel zur Verfügung stellt. > Rolf M. schrieb: >> Was für Spiele? > > Erstmal 2d Plattformer und Jump and Run. 3d wäre wohl noch zu weit > hergeholt. > > Wie siehts aus mit C#? Ein Nachteil sind sicher die Abhängigkeiten zu den > Frameworks. Kann man natürlich auch verwenden. Wichtig ist, dass du erst mal allgemein die Grundlagen der Programmierung kennst. Das brauchst du unabhängig von der Sprache.
Rolf M. schrieb: > Kann man natürlich auch verwenden. Hört sich so an als ob C# eher zweite Wahl ist.
Einer schrieb: > Im Prinzip ist die Programmiersprache egal. Nimm eine die Du schon > kennst, und programmiere Dein Spiel. So würde ich es auch sehen. Da es ja wahrscheinlich nicht um ein kommerzielles Spiel geht, ist die Wahl der Sprache relativ egal. Ich würde wohl was einfaches nehmen. Da es kostenlose Engines gibt, die man auch durchaus verwenden kann, wären deren Anforderungen eventuell auch zu berücksichtigen. C würde ich nicht nehmen. Wenn die Entscheidung auf eine Sprache aus der C-Familie fällt, dann schon C++. Den '++'-Anteil muss man ja nicht nutzen, er erleichtert aber vieles, wenn man ihn doch benutzen will. C ist zwar nicht komplett eine Teilmenge von C++, aber die Überscheidung ist doch ziemlich groß. Eine von C++ inspirierte Sprache ist noch Java. Über Java kann man diskutueren, aber es ist schon angenehm, weil es relativ C-ähnlich ist, aber dem Programmierer zum Beispiel das Speichermanagement abnimmt.
>> In C ist es ineffizienter, größere Sachen zu machen Linux ist in C programmiert und ist sehr groß: https://github.com/torvalds/linux
In C# hat VisualStudio eine Unterstützung für Spieleentwicklung mit Unity
chris_ schrieb: > Linux ist in C programmiert und ist sehr groß: > > https://github.com/torvalds/linux Ja genau, dem entsprechend funktioniert es auch... :-) An allen Ecken und Kanten super gut... bei den Omas der Nerds... :-)) ROFL...
Sonnenschein schrieb: > Ja genau, dem entsprechend funktioniert es auch... :-) An allen Ecken > und Kanten super gut... bei den Omas der Nerds... :-)) ROFL... Naja, es läuft im endeffekt auf den meisten Servern und auf jedem Android smartphone. Also ich würde sagen es funktionert. Oder kannst du mir ein OS mit weiterer Verbreitung nennen? Einer schrieb: > Im Prinzip ist die Programmiersprache egal. Nimm eine die Du schon > kennst, und programmiere Dein Spiel. Das kann man nur voll unterstützen.
Spiele programmiert man heutzutage nicht auf Basis der nackten Betriebssystemschnittstellen. Schau dir verschiedene Game Engines an, und such die raus was am besten passt - es gibt z.b. Engines die eher ihren Schwerpunkt auf 2D, Platformern, etc. haben und in Richtung 3D erweitert wurden, oder 3D Engines die in Richtung 2D, Pixelgrafik etc. erweitert wurden. Ueber diese Engines ergibt sich dann oft welche Sprachen in Frage kommen. Ich wuerde mal behaupten C kannst du komplett vergessen. Du wirst bei einigen Engines bei C++ landen, wobei der eigentlich performancekritische Teil in der Engine liegt. Wenn ich z.B. die Wahl zwischen C++ und C# habe, dann waere C# meine erste Wahl. Abhaengigkeiten zu Frameworks sind kein Nachteil....die machen den Unterschied ob du z.B. mal eben eine XML Datei lesen oder mal eben eine REST API aufrufen in ein paar Zeilen Code machst, oder ob du dir Tage einen Wolf schreibst.
Sonnenschein schrieb: > chris_ schrieb: > >> Linux ist in C programmiert und ist sehr groß: >> >> https://github.com/torvalds/linux > > Ja genau, dem entsprechend funktioniert es auch... :-) An allen Ecken > und Kanten super gut... bei den Omas der Nerds... :-)) ROFL... Wie bitte? Linux ist Musterbeispiel eines Softwareprojekts. Performant, gut dokumentiert, state-of-the-art (ok mal abgesehen vielleicht von der Monolithischen Architektur), hervorragende Qualität des Quellcodes etc.. Es sind die eingepflegten Treiber, die den Kernel so fett machen. BTW Windows Kernel und BSD Kernel (Mac OSX) sind ebenfalls in C geschrieben, also was war nochmal das Argument?
auswanderer schrieb: > Spiele programmiert man heutzutage nicht auf Basis der nackten > Betriebssystemschnittstellen. Schau dir verschiedene Game Engines an, > und such die raus was am besten passt - es gibt z.b. Engines die eher > ihren Schwerpunkt auf 2D, Platformern, etc. haben und in Richtung 3D > erweitert wurden, oder 3D Engines die in Richtung 2D, Pixelgrafik etc. > erweitert wurden. > Ueber diese Engines ergibt sich dann oft welche Sprachen in Frage > kommen. Ich wuerde mal behaupten C kannst du komplett vergessen. Du > wirst bei einigen Engines bei C++ landen, wobei der eigentlich > performancekritische Teil in der Engine liegt. Wenn ich z.B. die Wahl > zwischen C++ und C# habe, dann waere C# meine erste Wahl. > Abhaengigkeiten zu Frameworks sind kein Nachteil....die machen den > Unterschied ob du z.B. mal eben eine XML Datei lesen oder mal eben eine > REST API aufrufen in ein paar Zeilen Code machst, oder ob du dir Tage > einen Wolf schreibst. Genau das. Wer ernsthaft an der Spieleentwicklung interessiert ist und weniger an das Programmieren an sich, sollte unbedingt eine fertige Engine verwenden, ansonsten kommt dabei eher weniger Vorzeigbares raus. Eine komplette Eigenentwicklung ist wenig zielführend, aber zumindest sehr lehrreich. Für Einsteiger ist die Unity Engine zu empfehlen, dort hat man mit C# zutun. In C# ist man dann doch wesentlicher produktiver und muss sich mit weniger Details beschäftigen. Die Performance ist absolut ausreichend, da haben die eingesetzten Algorithmen schon einen wesentlich größeren Einfluss (wird ja mit Sicherheit kein AAA-Titel).
> ich interessiere mich für die Spieleprogrammierung und > da kommt man anscheinend an C++ nicht wirklich vorbei C++ ist dort sehr weit verbreitet. Je größer die Projekte sind, desto häufiger findet man aber auch ein Gemisch aus verschiedenen Programmiersprachen. So ist es nicht unüblich, dass die Low-Level Grafik- und Sounderzeugung von einem kleinen Team von Spezialisten in C und/oder C++ geschrieben ist, die Ablaufsteuerung des Spiels aber in einer einfacher zu beherrschenden Sprache (z.B. Lua) für das Gameplay-Team. > Erstmal 2d Plattformer und Jump and Run. Dann schau dir doch mal Pico-8 an - für's Reinschnuppern und erste Schritte mMn genau das Richtige.
newgear schrieb: > Hallo zusammen, ich interessiere mich für die Spieleprogrammierung und > da kommt man anscheinend an C++ nicht wirklich vorbei (wenn man das > nicht gerade mit einer Engine oder Java machen will). Du hast Dir die Frage gerade selbst beantwortet - lerne Java, das deckt Spieleprogrammierung besser ab oder aber eine Engine; das ist dann wohl mehr ein Satzbaukasten. > C++ soll aber so komplex sein, dass es lange dauert es verinnerlicht zu > haben, C dagegen kann man anscheinend sehr schnell erlernen. scheinbar - kannst Du beide Sprachen noch nicht? > In C gibt > es soweit ich weiß keine Klassenunterstützung. nimm Java statt C++ ; auch bei Java hast Du ein Klassenkonzept und läuft auch mit Android. > Aber ich habe mal was von > C mit Klassen oder objective C gehört. Wird ein Klassenkonzept > mittlerweile vom aktuellen C Standard unterstützt? > Was ist objective C genau? Programmiersprache, die u.a. bei Apple Iphone verwendet wird. > Taugt C für die Spieleprogrammierung? Prinzipiell ja, mit Erweiterung SDL oder Gtk+ kann man gute 2D Spiele damit programmieren - die laufen dann unter Windows oder Linux. Ist dann einfacher als C++ Aber Java ist eben unabhängig von der Plattform! Mit Java deckst Du auch Spiele unter Android ab, wichtig für Spieleprogrammierung - mit C++ eben nur Windows und ggf. Linux; da kannst Du auch C mit SDL nehmen, ist einfacher ... oder eben eine Engine.
Progbit schrieb: > Aber Java ist eben unabhängig von der Plattform! Mit Java deckst Du auch > Spiele unter Android ab, wichtig für Spieleprogrammierung Das ist doch ein Märchen. Gerade Android-Apps laufen auf nix anderem als Android.
Java kann man nutzen für irgend nen Tetris Spiel. Ordentliche Spiele werden alle in C++ entwickelt. Kein Mensch will, dass der Garbage Collector sich plötzlich einschaltet und die FPS killt. Dauert es lange bis man C++ raushat? C++ hat man nie raus. Auch nach 10 Jahren nicht. Die Sprache hat so viele Konstrukte und wird alle paar Jahre um neue Sprachkonstrukte und Libs erweitert...
Früher (in einer Zeit, als alles besser war) hat man auch Spiele in Basic geschrieben. Falls dir also eine richtige Programmiersprache zu kompliziert ist, besorg dir einfach einen C64 Simulator und programmiere in Basic. Das haben die Kids schon vor 38 Jahren gemacht. https://www.heise.de/download/product/ccs64
Schau dir mal Lazarus an. Gute Community, die helfen dir wirklich vom klein klein bis bei den großen Problemen. Die GUI ist unglaublich und alles funktioniert auf Anhieb. Keine Frickelei bei der Einrichtung etc (OK, geht mit MS Visual auch genauso gut) Es gibt andere interessante Sprachen wo man aber in der Zukunft nicht weiß ob sie sich gegen C durchsetzen können, Mit Lazarus/Free pascal machst du nichts falsch. Die Sprache hat sich wahnsinnig weiterentwickelt und unterstützt etliche Plattformen https://www.lazarus-ide.org/
Dieter H. schrieb: > Ordentliche Spiele werden alle in C++ entwickelt. Ich weiß nicht, was Dieter zu dieser Aussage bewogen hat (kyblord=Cyblord?), aber Minecraft, eines der meistverkauften Spiele, wurde in Java programmiert. Inzwischen gibt es auch Versionen, die in C++ programmiert wurden, aber zu deren Erscheinen war Minecraft schon sehr erfolgreich. Natürlich kann man diskutieren, was ein "ordentliches Spiel" ist, es darf nur nicht der Eindruck entstehen, dass keine großen, erfolgreichen oder guten Spiele in Java geschrieben würden. PittyJ schrieb: > Falls dir also eine richtige Programmiersprache zu kompliziert ist, > besorg dir einfach einen C64 Simulator und programmiere in Basic. Dem stehe ich eher skeptisch gegenüber. Es gibt moderne einfache Programmiersprachen, die man leichter (ohne Emulator) und zukunftssicherer verwenden kann. da würde ich nicht wegen der Einfachheit so eine alte Sprache empfehlen.
Dussel schrieb: > > PittyJ schrieb: >> Falls dir also eine richtige Programmiersprache zu kompliziert ist, >> besorg dir einfach einen C64 Simulator und programmiere in Basic. > Dem stehe ich eher skeptisch gegenüber. Es gibt moderne einfache > Programmiersprachen, die man leichter (ohne Emulator) und > zukunftssicherer verwenden kann. da würde ich nicht wegen der > Einfachheit so eine alte Sprache empfehlen. Ironie ist manchmal schon schwer zu erkennen.... Aber zu den Fakten: Basic ist von 1964. C ist von 1972. Also nur 8 Jahre jünger. Aber auch schon fast 50 Jahre alt. Möchte man einen neuen Programmierer eine Sprache ans Herz legen, die älter ist als er selber? Von daher fällt wohl auch C++ aus, das ist von 1985.
PittyJ schrieb: > Ironie ist manchmal schon schwer zu erkennen.... Besonders in Texten. Hier gibt es doch ein paar BASIC-Nutzer. PittyJ schrieb: > Möchte man einen neuen Programmierer eine Sprache ans Herz legen, die > älter ist als er selber? Ist das wieder Ironie? Ich habe etwa mit zwölf angefangen zu programmieren. Welche Sprache könnte man einem Zwölfjährigen empfehlen? (Python ist auch schon 30 Jahre alt. :-O )
Ulrich schrieb: > Naja, es läuft im endeffekt auf den meisten Servern und auf jedem > Android smartphone. Genauso könnte man sagen "Maschinencode läuft im Endeffekt auf den meisten Servern und auf jedem Android-Smartphone". Ist auch nicht falscher. Nee, Linux bzw. Unix ist bei den genannten Systemen eher der Untersetzer, also die Lowlevel-Ebene, genauso wie es bei Windows 3.1 das DOS war. Die jeweilige Musike spielt ein paar Etagen weiter oben. W.S.
Rolf M. schrieb: > Das ist doch ein Märchen. Gerade Android-Apps laufen auf nix anderem als > Android. womit werden denn diese Apps programmiert? Jedenfalls nicht mit C++ Setzen 6.
Dieter H. schrieb: > Ordentliche Spiele > werden alle in C++ entwickelt. Kein Mensch will, dass der Garbage > Collector sich plötzlich einschaltet und die FPS killt. Dauert es lange > bis man C++ raushat? Deine Spiele laufen dann eben nur auf Windows - das ist heute aber nicht mehr unbedingt Stand der Dinge, weil man Spiele sowieso nur beiläufig spielt und einen Laptop nicht immer dabei hat, Smartphone aber immer ... und wenn Du es so sieht, dann ist C++ ebenfalls Käse, weil eine Engine speziell auf die modernen 3D Hyper gerenderten Spiele ausgelegt ist und damit besser als C++ geeignet ist. Diese Spiele sind dann alle von der gleichen Machart und Neuerungen von der Spielidee gibt's sowieso nicht mehr. Für den Rest kannst jede x-beliebige Programmiersprache nehmen ... was der TO überhaupt will weiß man ja nicht.
PittyJ schrieb: > Aber zu den Fakten: > Basic ist von 1964. > C ist von 1972. Also nur 8 Jahre jünger. Aber auch schon fast 50 Jahre > alt. > > Möchte man einen neuen Programmierer eine Sprache ans Herz legen, die > älter ist als er selber? > > Von daher fällt wohl auch C++ aus, das ist von 1985. das spielt doch keine Rolle - die Frage worauf Dein Spiel laufen soll? Auf dem Smartphone? Wenn's ein Iphone ist, dann Objective C und bei Android dann eben Android Studio bzw. Java. Dann gibt's noch die elegantere Variante Browser-Game; das wäre dann Javascript, HTML5 oder AdobeFlash. Das Hyper-Hyper Game mit C++, das dann nur Windows abdeckt, bekommt der TO sowieso nicht hin und außerdem ist alles schon da - bißchen spät für nachhaltige Neuerungen.
Turbo Pascal schrieb: > Schau dir mal Lazarus an. > Gute Community, die helfen dir wirklich vom klein klein bis bei den > großen Problemen. > Die GUI ist unglaublich und alles funktioniert auf Anhieb. Keine > Frickelei bei der Einrichtung etc (OK, geht mit MS Visual auch genauso > gut) > > Es gibt andere interessante Sprachen wo man aber in der Zukunft nicht > weiß ob sie sich gegen C durchsetzen können, > Mit Lazarus/Free pascal machst du nichts falsch. > Die Sprache hat sich wahnsinnig weiterentwickelt und unterstützt etliche > Plattformen auch Pascal ist noch eine Möglichkeit, wenn einem die Sprache zusagt. Für Spiele kannst Du auch DarkBasic Pro verwenden, https://www.thegamecreators.com/product/dark-basic-pro-open-source DarkBasic scheint speziell für Spiele unter Windows oder Mac ausgelegt zu sein. Basic ist damals jedenfalls die erste Sprache gewesen, die jeder mal gemacht hat.
PittyJ schrieb: > Möchte man einen neuen Programmierer eine Sprache ans Herz legen, die > älter ist als er selber? Das ist doch gar kein Argument. Es gibt eigentlich nur zwei Argumente für die Wahl einer Programmiersprache: Meistens nimmt man die Sprache, die man kann (weil Viele nur eine Sprache beherrschen). Ansonsten nimmt man die Sprache, die für das bevorstehende Projekt am besten geeignet ist (bei einem Hardware-Treiber könnte es z.B. Assembler oder C sein, bei einer Android App Java oder Kotlin, bei einer iOS App ObjectiveC oder Swift, bei einer statistischen Analyse R, bei wissenschaftlichen Aufgaben, z.B. Matrizzenrechnung MatLab, bei komplexen vielschichtigen Dingen Java. Wozu man allerdings C++ wirklich dringend aus fachlichen Gründen anderen Programmiersprachen vorziehen sollte, hat sich mir bisher nicht erschlossen.
Progbit schrieb: > Rolf M. schrieb: >> Das ist doch ein Märchen. Gerade Android-Apps laufen auf nix anderem als >> Android. > womit werden denn diese Apps programmiert? Na zumindest teilweise in Java - steht doch da. Aber dass die App deshalb auch plattformunabhängig wäre und somit ach problemlos überall anders laufen würde, ist eben ein Märchen. > Jedenfalls nicht mit C++ In einigen Spielen dürfte mehr oder weniger viel C++-Code enthalten sein. Denn die App an sich muss zwar in Java sein, aber sie kann native Bibliotheken nutzen, die z.B. in C++ geschrieben sind. Im Extremfall besteht die App dann nur noch aus einem minimalen Java-Wrapper, der das eigentliche Programm als C++-Bibliothek lädt. Und das wird lustigerweise gerade aus Gründen der Portabilität gerne gemacht. Viele Games benutzen z.B. die Unity-Engine. Die ist in C++ geschrieben und hat keine Java-Bindigs. Somit sind diese Spiele sehr wahrscheinlich auch in C++ geschrieben und lassen sich dadurch viel leichter auf andere Geräte portieren, als wenn sie in Java geschrieben wären. > Setzen 6. ??
Nimm C++. Die meisten Leute die sagen, C++ sei schwer, blockieren sich damit selber. In der Zeit in der man Leute fragt ob es schwer ist hat man es schon halb gelernt. Dazu kommt dass es riesen Communities gibt die genau das selbe Ziel haben: https://www.spieleprogrammierer.de/
PittyJ schrieb: > Möchte man einen neuen Programmierer eine Sprache ans Herz legen, die > älter ist als er selber? Möchte man einem jungen Deutschen das steinalte Deutsch oder einem jungen Engländer das steinalte Englisch ans Herz legen? Oder einem Botokuden... naja, das Prinzip wirst du wohl verstehen. OK, es gab mal Bestrebungen, die einzelnen Sprachen abzuschaffen, so daß ein jeder auf der Welt nur noch Esperanto oder irgend ein anderes Neusprech kann - aber der Erfolg blieb bislang ein wenig aus. Man kann bei den Programmiersprachen ja sehen, daß gerade in der C-Ecke alle nase lang eine "neue" Sprache kreiert wird - aber bei näherer Betrachtung sehen die alle wie durch den Fleischwolf gedrehtes C aus - ergo sind das alles nur Vorbrenner für C. Also am schieren Alter einer Programmiersprache kann man tatsächlich nichts festmachen. W.S.
W.S. schrieb: > Also am schieren Alter einer Programmiersprache kann man tatsächlich > nichts festmachen. > > W.S. Genau das wollte ich damit ausdrücken. C ist kaum jünger als Basic, das wurde aber als altertümlich abgetan. Die Kids wollen aber anscheinend was besseres. Ich programmiere seit 40 Jahren und in der Zeit habe ich viele Leute erlebt, die unbedingt Spiele programmieren wollen, aber noch nicht einmal die Grundlagen beherrschen. Vielleicht sollten die Leute erst einmal das Programmieren lernen, und sich dann an einem Spiel versuchen. Und ob C oder C++ ist da erst einmal egal. Anfangen ist wichtig. So zum Spiel programmieren selber. Alleine das Laden von Spielständen, Inventarlisten, Geländekarte ist reine Fleissarbeit. Muss aber gemacht werden. Ich schätze bei einem einfachen Spiel so ca 20K Zeilen. Schafft der Anfänger 1000 Zeilen am Tag, dann ist der einen Monat damit beschäftigt. Muss ja alles behandelt werden, Dateifehler, unterschiedliche Benutzer, variable Datenlängen ... . Man kann auch eine DB nehmen, dann muss er noch das DB-Design vorher machen... Und da wird ein Anfänger doch schon aufhören, wenn er nach einem Monat nichts auf dem Bildschirm sieht, sondern im Hintergrund nur erst einmal die Daten der Spielfigur geladen hat. Spass macht das nicht, muss aber erledigt werden. Und 99,9 % der Anfänger werden dann abbrechen. Ist eben nicht so der Fun. Deshalb meine Empfehlung mit Basic. Da kann man mal schnell einen Pacman programmieren, hat nach 14 Tagen etwas Fun. Und danach wartet man, dass die PS5 doch irgendwann mal lieferbar ist. Nichts gegen den TE persönlich, aber ich gehe davon aus, dass bei ihm in einem Jahr nichts spielbares heraus kommt. Soweit meine Erfahrungen der letzten Jahrzehnte.
PittyJ schrieb: > Alleine das Laden von Spielständen, Inventarlisten, Geländekarte ist > reine Fleissarbeit. Muss aber gemacht werden. Ich schätze bei einem > einfachen Spiel so ca 20K Zeilen. Sowas kann man in Python in 100 gut lesbaren Zeilen machen.
Karl schrieb: > PittyJ schrieb: >> Alleine das Laden von Spielständen, Inventarlisten, Geländekarte ist >> reine Fleissarbeit. Muss aber gemacht werden. Ich schätze bei einem >> einfachen Spiel so ca 20K Zeilen. > > Sowas kann man in Python in 100 gut lesbaren Zeilen machen. Und warum tut sich CD-Project dann mit Cyberpunk 2077 dann so schwer, wenn alles nur ein paar Zeilen Python sind? Dann müssten die doch ganz schön blöd sein. Die sollten mal die Spezialisten hier im Forum fragen.
PittyJ schrieb: > Genau das wollte ich damit ausdrücken. C ist kaum jünger als Basic, das > wurde aber als altertümlich abgetan. Es geht vielleicht weniger darum, wann es erfunden wurde, sondern wann es am meisten genutzt wurde. Basic ist zwar auch heute noch viel in Verwendung, aber die heutigen Dialekte haben nicht mehr viel mit dem (eben in der Hinsicht alten) C64-Basic zu tun. > Ich programmiere seit 40 Jahren und in der Zeit habe ich viele Leute > erlebt, die unbedingt Spiele programmieren wollen, aber noch nicht > einmal die Grundlagen beherrschen. Ich glaube, fast jeder, der schon früh computerbegeistert war und programmiert hat, wollte irgendwann in seiner Jugend ein Spiel schreiben. Viele haben auch angefangen, aber es eben mangels Grundlagenwissen oder Durchhaltevermögen nie fertiggestellt. Ich gehöre übrigens auch zu dieser Gruppe. > Vielleicht sollten die Leute erst > einmal das Programmieren lernen, und sich dann an einem Spiel versuchen. Man kann ja auch mit einem ganz simplen Spiel anfangen. Tic Tac Toe im Textmodus zum Beispiel. Das wichtigste ist meiner Meinung nach in kleinen Schritten vorzugehen. Lieber was ganz einfaches fertigstellen und sich drüber freuen, als den super mega Egoshooter programmieren wollen und nach 5% der Arbeit die Lust verlieren, weil man kein Ergebnis sieht. Eine andere Sache, die Programmierer bei sowas gerne unterschätzen ist der nicht-programmier-Teil, also z.B. Leveldesign, Sprites, Texturen, Soundeffekte, Musik u.s.w. Die ist für ein Spiel genauso wichtig, aber die meisten Programmierer sind nicht sonderlich gut in diesen Dingen. Man muss sich also mit jemandem zusammentun, der das besser kann. > Deshalb meine Empfehlung mit Basic. Da kann man mal schnell einen Pacman > programmieren, hat nach 14 Tagen etwas Fun. Also deine Schlussfolgerungen kann ich nicht nachvollziehen. Weil man die Lust verlieren kann, wenn man komplexe Spielstände, Geländekarten und was weiß ich alles laden muss, soll man lieber Basic nehmen, weil man da Pacman drin programmieren kann? Das hat doch nichts mit der Programmiersprache zu tun. PittyJ schrieb: > Ich schätze bei einem einfachen Spiel so ca 20K Zeilen. >> >> Sowas kann man in Python in 100 gut lesbaren Zeilen machen. > > Und warum tut sich CD-Project dann mit Cyberpunk 2077 dann so schwer, > wenn alles nur ein paar Zeilen Python sind? Cypberpunk 2077 hältst du für ein "einfaches Spiel"?
:
Bearbeitet durch User
Rolf M. schrieb: > PittyJ schrieb: >> Ich schätze bei einem einfachen Spiel so ca 20K Zeilen. >>> >>> Sowas kann man in Python in 100 gut lesbaren Zeilen machen. >> >> Und warum tut sich CD-Project dann mit Cyberpunk 2077 dann so schwer, >> wenn alles nur ein paar Zeilen Python sind? > > Cypberpunk 2077 hältst du für ein "einfaches Spiel"? Ich nicht. Aber der Rest denkt, so ein bisschen Laden und Speichern sind 100 Zeilen Code. Ich habe bei großen Projekten (>50 Programmierer) mitgearbeitet, und weiss wie viel Aufwand in diesen Dingen steckt. Und wenn ein Anfänger nichts von Klassen weiss, dann wird er auch die Serialisierung nicht kennen, und erst einmal 1-2 Monate damit verbringen. Dann wird er wieder von 0 anfangen, weil er merkt, dass die Klassen nicht passend sind. Er lernt eine Menge dabei. Aber ein Spiel hat er nicht in absehbarer Zeit.
PittyJ schrieb: > Und wenn ein Anfänger nichts von Klassen weiss, dann wird er auch die > Serialisierung nicht kennen, und erst einmal 1-2 Monate damit > verbringen. Dann wird er wieder von 0 anfangen, weil er merkt, dass die > Klassen nicht passend sind. > Er lernt eine Menge dabei. Aber ein Spiel hat er nicht in absehbarer > Zeit. Das ist doch hanebüchener Unsinn. Niemand der bei Trost ist, versucht als Einzelkämpfer ein Spiel (oder ein anderes Projekt) in ein paar Tagen/Wochen umzusetzen, wofür eine Firma mit über 50 Leuten mehrere Jahre benötigt. Mit einer Rakete an der Internationalen Raumstation anzudocken ist schwer. Menschen auf den Mond zu bringen noch schwerer. All das hat uns als 14jährige Kinder nicht davon abgehalten, ein paar Modelraketen-Triebsätze zu bestellen, und aus Papier, Karton, einem Schweißdraht und einem Holzbrettchen kleine Raketen inkl. "Startrampe" zu bauen, die 100m hoch geflogen sind. Du kapierst doch überhaupt nicht um was es geht: Jemand möchte für sich ein Spiel in seinem Rahmen und Können basteln. Das ist ein sehr sinnvolles und zu unterstützendes Unterfangen. Um dein Ego: > Ich habe bei großen Projekten (>50 Programmierer) mitgearbeitet, geht es hier nicht. Das interessiert niemanden. Dein Bedürfnis dich auf Kosten Schwächerer zu erhöhen ist erbärmlich. Messe Dich doch mit Stärkeren. Über dein 50-Mann-Team kann ich nur müde lächeln!
Einer schrieb: > Du kapierst doch überhaupt nicht um was es geht: Das hat newgear ja auch nicht erzählt. Offenkundig schlagt er seine Zeit, wie 90% der Jungen, gerne mit Computerspielen tot. Und nun kommt ihm der Gedanke: ich kann leidlich gut spielen, dann kann ich sicher noch viel besser ein Spiel schreiben in dem ich dann der King beim spielen bin. Welche Art von Spielen, hat er nicht erzählt. Wohl kaum eine Patience oder Minesweeper, sondern wohl eher ein WoW oder FlightSimulator. So denken 50% der Kinder. Nur 0.1% werden dann angestellt in Firmen die Spiele schreiben, und der Job soll nicht besonders gut sein, stressig bei schlechter Bezahlung, das Angebot an Frischfleisch ist ja auch gross. Bis dahin hat er aber Motivation. Super, sollte man nutzen. Also als ersten Schritt programmieren lernen. GradC in GradF und so, vielleicht ein NIM Spiel, und bei mehr Erfahrung einen Minesweeper. Ob man das in C, C++ oder Java macht ist reichlich egal. Für manches reicht schon Javascript. Realistisch steckt man mit Java aber in einer Sackgasse, mit C geht es über C++ weiter, andere Plattformen. Erst mal C und dann C++ ist kein schlechter Weg, ObjectiveC ist eine Apple-Sackgasse. Ob er dann nach seinem Patience-Spiel immer noch Spiele programmieren will oder alt genug geworden ist um den Spieltrieb überwunden zu haben, wird man sehen. Einige Jahre dauert es schon, von 0 an zu Spielen zu kommen.
PittyJ schrieb: > Rolf M. schrieb: >> PittyJ schrieb: >>> Ich schätze bei einem einfachen Spiel so ca 20K Zeilen. >>>> >>>> Sowas kann man in Python in 100 gut lesbaren Zeilen machen. >>> >>> Und warum tut sich CD-Project dann mit Cyberpunk 2077 dann so schwer, >>> wenn alles nur ein paar Zeilen Python sind? >> >> Cypberpunk 2077 hältst du für ein "einfaches Spiel"? > > Ich nicht. Naja, du hast ja erst von einem einfachen Spiel gesprochen und bringst jetzt Cyberpunk 2077 als Beispiel. Das passt halt nicht so ganz zusammen. > Aber der Rest denkt, so ein bisschen Laden und Speichern sind > 100 Zeilen Code. Wenn wir tatsächlich von einem einfachen Spiel sprechen, halte ich 20k Zeilen nur für die Serialisierung aber für übertrieben. Das wäre selbst dann schon nicht so wenig, wenn man das wirklich komplett zu Fuß macht. Sinnvoller wäre es aber eh, ein bestehendes Framework zu nutzen. > Ich habe bei großen Projekten (>50 Programmierer) mitgearbeitet, und > weiss wie viel Aufwand in diesen Dingen steckt. Auch das passt aber nicht zu einem "einfachen Spiel". > Und wenn ein Anfänger nichts von Klassen weiss, dann wird er auch die > Serialisierung nicht kennen, und erst einmal 1-2 Monate damit > verbringen. In Python ist das tatsächlich sehr einfach, da es mit pickle bereits ein Serialisierungsframework enthält. Da muss man sich auch nicht zwei Monate damit beschäftigen, um das anwenden zu können. MaWin schrieb: > Offenkundig schlagt er seine Zeit, wie 90% der Jungen, gerne mit > Computerspielen tot. > Und nun kommt ihm der Gedanke: ich kann leidlich gut spielen, dann kann > ich sicher noch viel besser ein Spiel schreiben in dem ich dann der King > beim spielen bin. Ich finde es ja faszinierend, wie hier oft in ein paar Zeilen eines Postings die komplette Lebensgeschichte des Verfassers hineininterpretiert wird. > Welche Art von Spielen, hat er nicht erzählt. Wohl kaum eine Patience > oder Minesweeper, sondern wohl eher ein WoW oder FlightSimulator. newgear schrieb: > Rolf M. schrieb: >> Was für Spiele? > > Erstmal 2d Plattformer und Jump and Run. 3d wäre wohl noch zu weit > hergeholt.
:
Bearbeitet durch User
Rolf M. schrieb: > Ich finde es ja faszinierend, wie hier oft in ein paar Zeilen eines > Postings die komplette Lebensgeschichte des Verfassers > hineininterpretiert wird. Naja, psychologisch aber glaub nix Neues. Man unterstellt anderen meistens immer das, was man selbst ist bzw. wie man selbst handeln würde. Aus dieser Perspektive sind z.B. die Unterstellungen von MaWin, jemand würde "offenkundig" nur seine Zeit totschlagen und nix zu Wege bringen, nur ein Spiegel seiner eigenen Existenz. Deckt sich das nicht mit der Erfahrung, dass erfolgreiche Macher anderen eher vorschlagen, Dinge selbst in die Hand zunehmen, und Versager eher vorschlagen, Dinge erst gar nicht zu versuchen?
PittyJ schrieb: > C ist kaum jünger als Basic, das wurde aber als altertümlich abgetan. Falls du mich damit meinst, ich wollte nicht ausrücken, dass BASIC altertümlich ist. Mir geing es um die Empfehlung, BASIC zu nutzen, nur weil es einfach ist. Da bleibe ich dabei, es gibt einfach modernere und verbreitetere Sprachen, die auch einfach sind. "Einfach" ist alleine kein Argument, BASIC einer anderen Sprache vorzuziehen. Ich wüsste überhauptkeinen Grund, BASIC als Sprache auszuwählen, außer 'kann ich schon' oder 'das Projekt ist in BASIC geschrieben'. Das liegt aber wohl an mir, weil ich mich nur als Jugendlicher mal mit BASIC beschäftigt habe. (Ich habe mit einem Freund ein Spiel programmiert. :-D ) Meine erste 'Programmiersprache' war übrigens HTML, später mit JavaScript. Man brauchte nur einen Computer, einen eingerichteten Texteditor und einen eingerichteten Browser und konnte loslegen. Damals in Zeiten von 56k-Modem, als Google noch was Exotisches war, und die deutsche Wikipedia vielleicht 10.000 Seiten hatte, war das ein Argument. Deshalb würde ich sagen, wichtig ist, überhaupt erstmal anzufangen. Außer Zeit kostet das Ausprobieren ja nichts. Dadurch baut man sich die Erfahrung auf, um selber Entscheidungen treffen zu können.
newgear schrieb: > Hallo zusammen, ich interessiere mich für die Spieleprogrammierung und > da kommt man anscheinend an C++ nicht wirklich vorbei (wenn man das > nicht gerade mit einer Engine oder Java machen will). > > C++ soll aber so komplex sein, dass es lange dauert es verinnerlicht zu > haben, C dagegen kann man anscheinend sehr schnell erlernen. In C gibt > es soweit ich weis keine Klassenunterstützung. Aber ich habe mal was von > C mit Klassen oder objective C gehört. Wird ein Klassenkonzept > mittlerweile vom aktuellen C Standard unterstützt? Was ist objective C > genau? Taugt C für die Spieleprogrammierung? C++ ist einfach, wenn du den ganzen Kram weglässt, den du nicht brauchst. Fange auf jeden Fall bei einem fertigen Spiel an, und ändere das dann ab! Hier Links, zum reinschauen: Einfaches Tetris ähnliches Spiel mit DirectX Unterstützung: * https://www.codeproject.com/Articles/3120/A-DirectX-Game-Quadrino ca. 8000 Zeilen C++ Code, aus dem Jahre 2005, läuft auch heute noch immer ohne Änderungen Hier der Age of Empires open source Klon OpenAge: * https://openage.sft.mx/ ca. 70 Tausend Zeilen Python und 75 Tausend Zeilen C++ Code. Open source Game Engine Godot: * https://godotengine.org/ Wird auch für kommerzielle Spiele verwendet, ca. 125 Tausend Zeilen C++ Code für die Core Funktionalität, ca. 2.8 Millionen Zeilen C, und C++ Code für das ganze drumherum Schau halt mal, was dir mehr liegt. Wenn es nicht das Programmieren ist, dann würde ich letzteres nehmen.
PittyJ schrieb: > Alleine das Laden von Spielständen, Inventarlisten, Geländekarte ist > reine Fleissarbeit. Muss aber gemacht werden. Ich schätze bei einem > einfachen Spiel so ca 20K Zeilen. […] > > Und da wird ein Anfänger doch schon aufhören, wenn er nach einem Monat > nichts auf dem Bildschirm sieht, sondern im Hintergrund nur erst > einmal die Daten der Spielfigur geladen hat. Wenn man mit den unwichtigsten Dinge beginnt und versucht, diese gleich mit maximaler Perfektion umzusetzen, ist das sicher so :) Wenn man hingegen erst einmal mit einer einfachen, aber lauffähigen Version des eigentlichen Spiels (nur 1 Level, ohne Speicherfunktion, ohne Hiscore-Liste usw.) beginnt und diese nach und nach um weitere Features erweitert, bleibt die Motivation wesentlich länger erhalten. Für die einfachen 2D-Spiele, wie sie dem TE zunächst vorschweben, würde ich mit Python und pygame beginnen. Damit lassen sich schon mit ein paar hundert Zeilen recht ansprechende Dinge realisieren. Ein Raumschiffabknallspiel (mit Ballersound und Hintegrundmusik): https://www.youtube.com/watch?v=k_8CdlIe-zY (248 Zeilen ohne Kommentare und Leerzeilen) Der Anfang eines Jump-and-Run-Spiels: https://www.youtube.com/watch?v=xQb3w182s7I (318 Zeilen ohne Kommentare und Leerzeilen) Natürlich fehlt da noch viel bis zu einem Spiel, das einen wirklich vom Hocker reißt. Aber zumindest dauert es nicht Monate, sondern höchstens Stunden, bis sich etwas auf dem Bildschirm bewegt.
:
Bearbeitet durch Moderator
PittyJ schrieb: > Ich programmiere seit 40 Jahren und in der Zeit habe ich viele Leute > erlebt, die unbedingt Spiele programmieren wollen, aber noch nicht > einmal die Grundlagen beherrschen. Vielleicht sollten die Leute erst > einmal das Programmieren lernen, und sich dann an einem Spiel versuchen. > Und ob C oder C++ ist da erst einmal egal. Anfangen ist wichtig. dann mach doch z.B. einen Buch-Vorschlag und zwar möglichst einen wo ein Spiel programmiert wird und auf diese Weise auch Grundlagen vermittelt werden? Da gibt es leider gar nicht so viele Bücher. Weiterhin ist es Blödsinn ein Informatik-Studium als Grundlage für Spiele-Programmierung anzusetzen - dafür braucht er nicht alles zu wissen. > So zum Spiel programmieren selber. Alleine das Laden von Spielständen, > Inventarlisten, Geländekarte ist reine Fleissarbeit. Muss aber gemacht > werden. das Problem ist, daß das nur unzureichend erklärt wird - ein guter Programmierer oder Buchautor ist eben nicht immer ein guter Lehrer und weiterhin: der beste Lehrer/Buchautor ist nur genauso gut wie sein schlechtester Schüler. Die meisten Bücher sind deshalb Schrott, weil sie nur Codeschnipsel präsentieren und den ganzen Rest als selbstverständlich ansehen. > Ich schätze bei einem einfachen Spiel so ca 20K Zeilen. Schafft > der Anfänger 1000 Zeilen am Tag, dann ist der einen Monat damit > beschäftigt. Unsinn, copy&paste - aber ob er es verstanden hat, ist eine ganz andere Frage! > Muss ja alles behandelt werden, Dateifehler, > unterschiedliche Benutzer, variable Datenlängen ... . Man kann auch eine > DB nehmen, dann muss er noch das DB-Design vorher machen... Copy&paste ... und das ist eben genau nicht das Problem! > Und da wird ein Anfänger doch schon aufhören, wenn er nach einem Monat > nichts auf dem Bildschirm sieht, sondern im Hintergrund nur erst einmal > die Daten der Spielfigur geladen hat. Spass macht das nicht, muss aber > erledigt werden. > Und 99,9 % der Anfänger werden dann abbrechen. Ist eben nicht so der > Fun. neben den Fun-Effekt, möchte der Anfänger vielleicht auch verstehen was er da macht und genau das wird sehr schlecht vermittelt! > Deshalb meine Empfehlung mit Basic. Da kann man mal schnell einen Pacman > programmieren, hat nach 14 Tagen etwas Fun. Und danach wartet man, dass > die PS5 doch irgendwann mal lieferbar ist. völlig richtig, sehe ich auch so - mit Basic sollte man anfangen ... und wenn dieses DarkBasic oder auch BlitzBasic voll auf Spiele abzielt, dann reicht es doch; zumindest für Windows. Ansonsten eben HTML5 für Browser Games. Die Hyper Hyper Games wird der TE sowieso nicht schaffen, dafür braucht er dann Informatik-Studium und C++ und dann kann er sich auch gleich bei Ubisoft, Activision, Elektronic Arts bewerben, wenn er das geschafft hat. > > Nichts gegen den TE persönlich, aber ich gehe davon aus, dass bei ihm in > einem Jahr nichts spielbares heraus kommt. Soweit meine Erfahrungen der > letzten Jahrzehnte. genau, und deswegen erst einmal Basic lernen.
Rolf M. schrieb: > In Python ist das tatsächlich sehr einfach, da es mit pickle bereits ein > Serialisierungsframework enthält. Da muss man sich auch nicht zwei > Monate damit beschäftigen, um das anwenden zu können. Welchen Vorteil hat denn Python oder auch C++ gegenüber Basic bei einem "einfachen" Spiel? Gar keinen - im Gegenteil, er kapiert mangels Grundlagen gar nicht was er da macht - und genau deswegen sollte der TE besser mit Basic starten und dann kann man immer noch mit anderen Sprachen dasselbe ausprobieren. Ihr seid alle nur auf Eure Lieblingssprachen fixiert und seht gar nicht mehr auf das Ergebnis!
Progbit schrieb: > Rolf M. schrieb: >> In Python ist das tatsächlich sehr einfach, da es mit pickle bereits ein >> Serialisierungsframework enthält. Da muss man sich auch nicht zwei >> Monate damit beschäftigen, um das anwenden zu können. > Welchen Vorteil hat denn Python oder auch C++ gegenüber Basic bei einem > "einfachen" Spiel? Gegenfrage: Welchen Nachteil hat es?
Rolf M. schrieb: > Gegenfrage: Welchen Nachteil hat es? Der Nachteil ist das Verständnis für den totalen Anfänger, der er ja zu sein scheint? Basic ist eine Interpretersprache mit reduzierten Befehlsumfang - da ist C++ eine ganz andere Nummer ... ob sowas gleich als Anfangssprache gut endet, würde ich mal stark bezweifeln - einfach mal so im Rückblick gesehen als man selbst noch blutiger Anfänger war ?! Aber das kann ja jeder machen wie er will.
PittyJ schrieb: > Er lernt eine Menge dabei. Aber ein Spiel hat er nicht in absehbarer > Zeit. Du hast aber schon mitbekommen, dass er momentan auch nur 2D-Spiele im Blick hat? https://www.youtube.com/watch?v=zH_omFPqMO4 https://www.youtube.com/watch?v=c8wswUEfnrQ https://www.youtube.com/watch?v=7Vf_vQIUk5Q https://www.youtube.com/watch?v=OBBrp43TX3A https://www.youtube.com/watch?v=YzhhVHb0WVY https://www.youtube.com/watch?v=YNXrFOynalE https://www.youtube.com/watch?v=-CvqYl_w8Vk https://www.youtube.com/watch?v=rWaSo2usU4A usw. Natürlich sollte man erst mal die Programmiersprache lernen. Aber wenn man die Grundlagen kennt, dann kann man mit einfachen Sachen gleich anfangen.
ist echt schwer schrieb: > Du hast aber schon mitbekommen, dass er momentan auch nur 2D-Spiele im > Blick hat? und dafür reicht auch C mit SDL oder Java oder Pascal oder eben auch "nur" Basic aus. Dafür braucht man nicht zwingend C++ ... und das ist offenbar extrem schwer zu verstehen, daß es auf die Anwendung und das Ergebnis und eben nicht auf die Sprache ankommt! ist echt schwer schrieb: ... > https://www.youtube.com/watch?v=rWaSo2usU4A > > usw. tolle Beispiele, aber überhaupt nichts für blutige Anfänger, da hier schon einiges an Wissen vorausgesetzt wird! Natürlich kann ich mir per copy&paste einiges zusammenfrickeln und habe überhaupt nichts verstanden! Dann kann ich mir auch gleich den fertigen Quellcode oder noch besser die fertig compilierte Datei als Game downloaden und gleich los gamen - das ist dann noch simpler als copy&paste. ist echt schwer schrieb: > Natürlich sollte man erst mal die Programmiersprache lernen. Genau und deswegen Basic - weil das eine Interpretersprache ist und man sofort sieht was Sache ist. Primitiv aber für einen Anfänger genau richtig. > Aber wenn > man die Grundlagen kennt, dann kann man mit einfachen Sachen gleich > anfangen. und auch das spricht nun nicht für C, auch nicht für C++, auch nicht für Java, usw., sondern für Basic ... weil das nun mal die Simpelste aller Sprachen ist. Für 2D Spiele und schnelle Ergebnisse reicht das immer.
Sonnenschein schrieb: > Ja genau, dem entsprechend funktioniert es auch... :-) An allen Ecken > und Kanten super gut... bei den Omas der Nerds... :-)) ROFL... Junge ist das hohl 😂
Progbit schrieb: > genau deswegen sollte der TE besser mit Basic starten Jetzt hört endlich mit Basic auf. Das ist wirklich Geschichte. Abgesehen davon gibt es zig verschiedene Basic-Dialekte und nicht EIN Basic. Also stellt sich die Frage, was Du überhaupt meinst, wenn Du von "Basic" sprichst. Jede in Basic investierte Sekunde ist reine Zeitverschwendung, wenn man statt dessen eben Python oder C oder C++ oder Java oder irgendeine andere auch nur halbwegs moderne Programmiersprache verwendet. Schluss mit dem unsäglichen Basic.
Progbit schrieb: > ist echt schwer schrieb: >> Du hast aber schon mitbekommen, dass er momentan auch nur 2D-Spiele im >> Blick hat? > und dafür reicht auch C mit SDL oder Java oder Pascal oder eben auch > "nur" Basic aus. Ja, reicht auch. > Dafür braucht man nicht zwingend C++ ... und das ist offenbar extrem > schwer zu verstehen, daß es auf die Anwendung und das Ergebnis und eben > nicht auf die Sprache ankommt! Und doch scheint es dir sehr wichtig zu sein, dass es sich dabei nicht um C++ handelt. > ist echt schwer schrieb: >> Natürlich sollte man erst mal die Programmiersprache lernen. > Genau und deswegen Basic - weil das eine Interpretersprache ist und man > sofort sieht was Sache ist. Primitiv aber für einen Anfänger genau > richtig. Python ist auch nicht schwerer zu lernen, aber man kann damit nachher viel mehr machen. > und auch das spricht nun nicht für C, auch nicht für C++, auch nicht für > Java, usw., sondern für Basic ... weil das nun mal die Simpelste aller > Sprachen ist. > Für 2D Spiele und schnelle Ergebnisse reicht das immer. Und danach will man dann weitermachen und muss dann doch eine andere Sprache lernen. Basic ist da eine Sackgasse.
> Und doch scheint es dir sehr wichtig zu sein, dass es sich dabei nicht > um C++ handelt. ich sag mal so: als Fahranfänger startest Du auch nicht gleich mit einem Porsche bzw. sollte man nicht. Deswegen würde ich einem blutigen Anfänger zur einer Interpretersprache wie Basic raten, um auch mal den Unterschied zu merken! Basic macht auch insbesondere wegen der simplen Syntax Sinn - wie das bei Python aussieht weiß ich leider nicht, Python müßte ich mir selber mal zu Gemüte ziehen. Eine Sackgasse ist Basic definitiv nicht, weil es ja mittlerweile etliche Neuerungen gibt, die auf den Uralt-Standard Microsoft Basic aufbauen. Für 2D Spiele reicht es immer aus, die bekommt man mit jeder Sprache hin. Die Grenzen wird er dann schon merken und dann sollte man wechseln. Es geht um schnelle Ergebnisse und darum, daß man kapiert hat, welche Codezeile was bewirkt und warum man die so schreibt und nicht anders. Das wird in diesen Youtube-Videos, etc. nicht so eindeutig erklärt. Für einen der sich auskennt, sieht die Sache anders aus. Bei C und insbesondere bei C++ hast Du doch viel mehr Freiheitsgrade und das ist für einen Anfänger auch nicht unbedingt gut - wenn er Pech hat, gewöhnt er sich einen miesen Programmierstil an, es gibt genug Negativbeispiele gerade bei C und C++ ... das läuft dann zwar auch, ist aber umständlicher Murgs. Er kann ja auch mit HTML5 anfangen und reine Browsergames programmieren - das würde ich an seiner Stelle machen.
Progbit schrieb: > Basic macht auch insbesondere wegen der simplen Syntax Sinn - wie das > bei Python aussieht weiß ich leider nicht, Python müßte ich mir selber > mal zu Gemüte ziehen. Aus welcher Gruft bist Du denn raus geklettert? Hat Python noch nie gesehen, will aber mitreden. Oh Mann. Was für untote Typen hier rumhängen, immer wieder unglaublich.
@ Einer (Gast) Was bist du den für ein Vogel. Er hat aber dennoch Recht. Python soll ja schließlich auch sehr anfängertauglich sein, wie eben auch Pascal. Jedes hat seine Vorteile, wobei ich vermutlich modernes FreePascal oder ein modernes Basic bevorzugen würde Je nach Anwendungsfall.
Ich würde dennoch Pascal oder Basic als Anfänger bevorzugen, alleine schon, da man damit auch vernünftig Controller programmieren kann(Mikroe Pascal, Basic, C etc) Bei C frustriert oft schon die Einrichtung der Tools(Embitz, Codeblocks etc)
Der große Vorteil von BASIC: jedes Kind kann ohne Hilfe, nur mit einer Befehlsreferenz und 2 Seiten Erklärung sofort loslegen. Das war vor dem www und IDEs wirklich gut. Es gab kein Voodoo, das einem abgenommen wurde und war auch nicht notwendig. 10 PRINT "HALLO WELT" fertig. Nichts weiter. Kein Framework von 100 Zeilen, das einem der wizzard abnimmt. Nächste Zeile 20 GOTO 10 und Haken an die Schleife. Steilste Lernkurven garantiert. Wie das heute am besten geht, mit www und komplexen wizzards? Keine Ahnung... Wie und wann kamt ihr jungen (unter 35) ans programmieren? Wie und wann die Kinder der Älteren hier?
Progbit schrieb: > ich sag mal so: als Fahranfänger startest Du auch nicht gleich mit einem > Porsche bzw. sollte man nicht. Ist ein mieser Vergleich, denn er unterstellt, daß es da ein Wertgefälle gibt. Besser wäre es, das mal so zu sagen: als Fahranfänger startest Du auch nicht gleich mit einem Wagen, der nur ein unsynchronisiertes Getriebe hat - was die zusätzliche Übung des Zwischenkuppelns bzw. Zwischengas nit sich bringt. Nochwas: bei der Spiele-Programmierung ist es weniger die verwendete Programmiersprache, sondern mehr das Gestalten der Sprites oder das korrekte Benutzen der Spiele-Engine. Und labert nicht über aufgeblähte Zeilenzahlen. Als ich vor so etwa 14 Jahren mal ein Spiel (Daleks) nach Win-CE portiert hatte, war EVC alternativlos, also wurde es ein "HHDaleks.cpp" und der Umfang waren etwa 1000 Zeilen Programmcode, von denen ein Großteil für das Benutzen des API von Win-CE benötigt wurde. Der Hauptanteil des Ganzen war die Gestaltung der Sprites. W.S.
A. S. schrieb: > 10 PRINT "HALLO WELT" > > fertig. Nichts weiter. Kein Framework von 100 Zeilen, das einem der > wizzard abnimmt. Ja, ja... Python:
1 | print("Hallo, Welt") |
Javascript:
1 | console.log("Hallo, Welt") |
Lua:
1 | print("Hallo, Welt") |
Haskell:
1 | main = putStrLn "Hallo, Welt" |
Man könnte ewig weiter machen...
Turbo Pascal schrieb: > Python soll ja schließlich auch sehr anfängertauglich sein, wie eben > auch Pascal. Ich kann mich schlecht zu Programmiersprachen äußern, die ich nur am Rande kenne. Etliche andere Sprachen gibt's ja sicherlich auch noch, die anfängertauglich wären. Mir fällt aber auf, daß viele hier nur auf "Ihre" Lieblingssprache total fixiert sind, als Universalsprache für alles und nichts. Es kommt immer auf die Anwendung und das Ergebnis an - wechseln kann man dann ja immer noch. Turbo Pascal schrieb: > Bei C frustriert oft schon die Einrichtung der Tools(Embitz, Codeblocks > etc) viel schlimmer wird es, wenn Du Linux oder Mac benutzt. Dann funktioniert auf einmal das Programm nicht mehr, weil eine Headerdatei fehlt, die es unter Linux/Mac so nicht gibt, dann muß man erst einmal eine Bibliothek nachladen, damit überhaupt was funktioniert. A. S. schrieb: > Das war vor dem www und IDEs wirklich gut. Es gab kein Voodoo, das einem > abgenommen wurde und war auch nicht notwendig. > > 10 PRINT "HALLO WELT" > > fertig. Nichts weiter. Kein Framework von 100 Zeilen, das einem der > wizzard abnimmt. > > Nächste Zeile 20 GOTO 10 und Haken an die Schleife. Steilste Lernkurven > garantiert. genau das meine ich ja. Bei einer Compilersprache kommt dann eine Fehlermeldung wegen falscher Syntax oder fehlender Headerdatei, usw., usw. ... für einen Anfänger der GAU, wenn das Programm gar nicht erst startet - dann kommt noch die zum Teil kryptische Syntax der jeweiligen Sprache hinzu; klar copy&paste geht immer, aber das kann nicht der Sinn sein, dann kann man auch gleich Lego spielen, wenn man gar nicht weiß was welche Codezeile bewirkt. Also ich bin im Nachhinein froh, daß ich damals mit Basic angefangen habe.
Einer schrieb: > Man könnte ewig weiter machen... das ist Unsinn, weil es nicht darum geht "Hallo Welt" zu programmieren.
"etliche andere Sprachen gibt's ja sicherlich auch noch, die anfängertauglich wären" Ja, aber die kaum verbreitet sind. Für Pascal und Basic und Pathon gibt es unendlich viel Literatur(Für C natürlich auch) Und man kann danach weiter mit ihnen arbeiten,auch auch mikrocontrollern etc. Jetzt als Beispiel irgendwelche exotischen Sprachen mit Java etc aus dem Hut zu zaubern ist wenig zielführend... Ich arbeite sogar beruflich mit Pascal und sicher wird auch auch mit BAsic bei einigen so sein. Und die lieblingssprachen die hier angebracht sind, wurden ja bereits genannt. Pascal, Basic, Python und C Alles andere macht keinen Sinn, in einem Elektronikforum(jaja, auch Java geht auch Controllern, das ist aber ein albernes Beispiel weil völlig an der REalität vorbei, auch Python derzeit eher Spielerei auf einem Controller)
A. S. schrieb: > Der große Vorteil von BASIC: jedes Kind kann ohne Hilfe, nur mit einer > Befehlsreferenz und 2 Seiten Erklärung sofort loslegen. Ja, vor 30–40 Jahren war das noch so. > 10 PRINT "HALLO WELT" Heute ist Visual Basic .NET hipp. Da führt die obige Codezeile zu einem Syntaxfehler. Stattdessen muss man schreiben:
1 | Imports System |
2 | |
3 | Module HelloWorld |
4 | Sub Main() |
5 | Console.WriteLine("HALLO WELT") |
6 | End Sub |
7 | End Module |
Da sagt der Beginner, der in dem für ihn geschaffenen All-purpose Synmbolic Instruction Code programmieren will, höchstens noch "Häh?" In praktisch jeder anderen Programmiersprache geht das einfacher. Progbit schrieb: > viel schlimmer wird es, wenn Du Linux oder Mac benutzt. Dann > funktioniert auf einmal das Programm nicht mehr, weil eine Headerdatei > fehlt, die es unter Linux/Mac so nicht gibt, dann muß man erst einmal > eine Bibliothek nachladen, damit überhaupt was funktioniert. Hast du mal versucht, ein unter Windows lauffähiges, nicht ganz triviales Basic-Programm auf Linux oder Mac laufen zu lassen? Da hast du genau dieselben Probleme und sogar noch eines zusätzlich, weil das dort installierte Basic mit hoher Wahrscheinlichkeit eine andere Syntax hat. Progbit schrieb: > A. S. schrieb: >> […] >> >> Nächste Zeile 20 GOTO 10 und Haken an die Schleife. Steilste Lernkurven >> garantiert. > genau das meine ich ja. Bei einer Compilersprache kommt dann eine > Fehlermeldung wegen falscher Syntax Und in Interpretersprachen (insbesondere auch Basic) gibt es keine Syntaxfehler? In C ist die Syntax wenigstens einheitlich, so dass zumindest diesbezüglich kaum Probleme zu erwarten sind. > Also ich bin im Nachhinein froh, daß ich damals mit Basic angefangen > habe. Ich habe ebenfalls mit Basic angefangen, aber weniger, weil die Sprache besonders einfach ist, sondern weil bei meinem ersten Computer nichts anderes dabei war. Um aber wieder auf das Thema zurückzukommen: Welchen aktuellen Basic-Interpreter bzw. -Compiler würdest du denn dem TE für sein Vorhaben, 2D-Spiele zu programmieren, empfehlen?
Yalu X. schrieb: > Ja, vor 30–40 Jahren war das noch so. > >> 10 PRINT "HALLO WELT" > > Heute ist Visual Basic .NET hipp. Da führt die obige Codezeile zu einem > Syntaxfehler. Tja, auch Basic hat sich leider gewandelt - Du mußt aber nicht gerade VB oder PureBasic wählen, die beide eine völlig andere Syntax haben. Standard ist das alte Microsoft Basic + Derivate und da geht dann Zeile 10 wieder. Yalu X. schrieb: > Hast du mal versucht, ein unter Windows lauffähiges, nicht ganz > triviales Basic-Programm auf Linux oder Mac laufen zu lassen? Da hast du > genau dieselben Probleme und sogar noch eines zusätzlich, weil das dort > installierte Basic mit hoher Wahrscheinlichkeit eine andere Syntax hat. Der Hersteller des jeweiligen Basic gibt das vorher an auf welchen Betriebssystemen es läuft und auf welchen nicht. Yalu X. schrieb: > Und in Interpretersprachen (insbesondere auch Basic) gibt es keine > Syntaxfehler? In C ist die Syntax wenigstens einheitlich, so dass > zumindest diesbezüglich kaum Probleme zu erwarten sind. Bei C gibt es auch Verkürzungen in der Syntax und sie ist bisweilen gewöhnungsbedürftig. Außerdem hast Du bei Basic keinerlei Compiler-Instruktionen - für einen Anfänger von Vorteil. Du drückst 'Run' und siehst sofort das Ergebnis Yalu X. schrieb: > Ich habe ebenfalls mit Basic angefangen, aber weniger, weil die Sprache > besonders einfach ist, sondern weil bei meinem ersten Computer nichts > anderes dabei war. Dann hättest Du ja auch gleich damals schon mit Assembler starten können :-)
Yalu X. schrieb: > Welchen aktuellen Basic-Interpreter bzw. -Compiler würdest du denn dem > TE für sein Vorhaben, 2D-Spiele zu programmieren, empfehlen? Wenn er denn Basic wählen sollte, würde ich Darkbasic oder Blitzbasic wählen, weil diese Varianten auf Spiele ausgelegt sind und es auch noch eine Community/Forum gibt. Oder aber Browsergames mit HTML5 - eigentlich am sinnvollsten. Wenn er schon etwas C kann, würde ich das mit SDL kombinieren. Ich kenne ja seinen Wissensbackground nicht und ob es bei Spielen bleiben soll oder eben doch mehr?
Progbit schrieb: > würde ich Darkbasic oder Blitzbasic wählen Dark-Basic: Aktuelle Version 7.62, Mai 2012 Blitz-Maxx: Aktuelle Version 1.51, September 2015 Meine Frage weiter oben war ernst gemeint: Aus welcher Gruft seid ihr entstiegen? Und nun interessiert mich auch noch: Wann steigt ihr wieder zu den Untoten zurück? Nächsten Vollmond?
erstaunlicherweise kosten einige Basiccompiler noch gutes Geld. Also doch zu Freepascal bzw Lazarus :-) Unter Linux wird das extrem oft eingesetzt und kaum einer weiß es:-) Viele der Lieblingsprogramme von einigen sind in Pascal geschrieben, da die RAD von Freepascal die einzig braachbare Konkurrenz zu MS Visual C ist
Einer schrieb: > Meine Frage weiter oben war ernst gemeint: > > Aus welcher Gruft seid ihr entstiegen? das spielt doch keine Rolle, der TE sucht hier keinen beruflichen Einstieg oder will Mikrocontroller programmieren, sondern einfach nur Spiele. Für einfache Spiele reicht das und wenn man null Ahnung hat ist eine simple Sprache das Beste. Er kann ja auch Deine Lieblingssprache? Python wählen, aber warum eigentlich? Ich habe gerade mal https://www.python-lernen.de/python-idle.htm getestet. Im Terminalfenster idle3 aufgerufen ... bei mir wohl nicht installiert - jetzt kann man als Anfänger erst mal wieder vorab System frickeln, damit überhaupt was läuft. Ob mit Deinen Python auf dem Smartphone was läuft, glaub ich eher nicht? Am besten wäre er mit HTML5 bedient, weil ein Browser so ziemlich überall läuft, auch auf dem Smartphone und man nicht noch irgendwelche Bibliotheken nachladen muß, damit überhaupt irgendwas geht.
Progbit schrieb: > https://www.python-lernen.de/python-idle.htm Die Seite ist ganz nett und dadurch, daß das nur ein paar Programmzeilen sind, spricht das natürlich für Python. Insofern hast Du ja recht.
Progbit schrieb: > Einer schrieb: >> Meine Frage weiter oben war ernst gemeint: >> >> Aus welcher Gruft seid ihr entstiegen? > das spielt doch keine Rolle, der TE sucht hier keinen beruflichen > Einstieg oder will Mikrocontroller programmieren, sondern einfach nur > Spiele. > Für einfache Spiele reicht das und wenn man null Ahnung hat ist eine > simple Sprache das Beste. Aber etwas neu zu lernen, das eigentlich schon lange veraltet ist, ist wenig zweckmäßig. Es ist wie schon erwähnt eine Sackgasse. Klar, wenn ich µC-Schaltungen basteln will, kann ich auch erstmal ein Flipflop in Röhrentechnik aufbauen. Aber ist das sinnvoll? > Er kann ja auch Deine Lieblingssprache? Python wählen, aber warum > eigentlich? Weil Python zu den meistverwendeten Sprachen überhaupt gehört und damit sehr viel Support und Informationen darüber verfügbar sind. Die Doku ist ausgezeichnet. Es gibt viele Bibliotheken für alle möglichen Zwecke, es gibt fast überall einen Python-Interpreter mit gleicher Syntax. Die Sprache ist einfach zu erlernen. > Ich habe gerade mal https://www.python-lernen.de/python-idle.htm > getestet. > Im Terminalfenster idle3 aufgerufen ... bei mir wohl nicht installiert - > jetzt kann man als Anfänger erst mal wieder vorab System frickeln, damit > überhaupt was läuft. Und dein Basic-Interpreter ist inklusive IDE auf jedem erdenklichen System bereits vorinstalliert? > Ob mit Deinen Python auf dem Smartphone was läuft, glaub ich eher nicht? Aber sicher: https://python-for-android.readthedocs.io/en/latest/ Für ios gibt's sogar eine IDE, die du direkt auf dem Telefon benutzen kannst: http://omz-software.com/pythonista/index.html Aber wie ist das denn mit deinem Dark-Basic? Auf welchen Smartphones läuft das?
Rolf M. schrieb: > Aber etwas neu zu lernen, das eigentlich schon lange veraltet ist, ist > wenig zweckmäßig. Es ist wie schon erwähnt eine Sackgasse. > Klar, wenn ich µC-Schaltungen basteln will, kann ich auch erstmal ein > Flipflop in Röhrentechnik aufbauen. Aber ist das sinnvoll? das ist wie bei Fremdsprachen - Latein oder Alt-Griechisch spricht heute auch niemand mehr, trotzdem kann man damit ein gutes Sprachverständnis gewinnen. Ich muß ja nicht bei Basic verharren, das verlangt ja niemand. Rolf M. schrieb: > Weil Python zu den meistverwendeten Sprachen überhaupt gehört und damit > sehr viel Support und Informationen darüber verfügbar sind. Die Doku ist > ausgezeichnet. Es gibt viele Bibliotheken für alle möglichen Zwecke, es > gibt fast überall einen Python-Interpreter mit gleicher Syntax. Die > Sprache ist einfach zu erlernen. das mag so sein, nur kann ich das schlecht beurteilen, weil Python noch nicht so en detail kenne. Das müßte man mal im Vergleich sehen - und damit meine ich nicht nur das "Hallo Welt" Programm sehen ... so auf den ersten Blick sieht es ganz nett aus, auch wenn ich wegen C eine andere Syntax gewohnt bin. Rolf M. schrieb: > Und dein Basic-Interpreter ist inklusive IDE auf jedem erdenklichen > System bereits vorinstalliert? natürlich nicht, aber es ist eben der Asbach-Uralt Standard, der auch noch auf einen ZX81 mehr oder weniger läuft - gut, heute kein Thema mehr wegen Python, C++, usw. Rolf M. schrieb: > Aber sicher: https://python-for-android.readthedocs.io/en/latest/ > Für ios gibt's sogar eine IDE, die du direkt auf dem Telefon benutzen > kannst: http://omz-software.com/pythonista/index.html > Aber wie ist das denn mit deinem Dark-Basic? Auf welchen Smartphones > läuft das? bei Dark-Basic gar nicht, eben nur auf Windows, sonst nichts. Für das Standard-Basic gibt's eine App, https://www.heise.de/download/product/basic-80286 damit laufen dann die meisten Basic Programme a la Microsoft-Basic. Oder https://f-droid.org/de/packages/net.sourceforge.x11basic/ angelehnt an GFA-Basic. Also auch das wird kein Problem werden - man muß es halt ausprobieren. Und man muß ja auch nicht auf einer Sprache ewig verharren! Es geht hier nur um einen leichten Anfang. Kann ja sein, daß Python eine gute Alternative für einen Anfänger ist - je mehr Möglichkeiten eine Sprache bietet desto kritischer wird es ... da werden dann endlose if...then...else if-Anweisungen statt switch case-Anweisungen verwendet und anderer Spaghetti-Code - ich finde das je nach Sprache sehr gruselig. Die Möglichkeiten vom Standard-Basic sind nun mal sehr begrenzt! Vorteil von Python, man kann sich dann C und C++ sparen, weil es von der Syntax gravierende Abweichungen gibt. Auf Dauer wird man sich für eine Sprache entscheiden müssen.
"Die Möglichkeiten vom Standard-Basic sind nun mal sehr begrenzt!" Das musst du m ir mal erklären. Wir reden hier von modernen basic, und du kommst jetzt mit Pascal von 1980?!? Wir reden hier von Turbo PAscal 7.0 Oder Delphi ab 6.0(Freepsdcal/Lazarus) Und das bietet sicher jedem ausreichend Möglichkeiten , wie aktuelle basicvarianten auch. Allerdings würde ich eben auch eher auf PAscal setzen. Basic nutze man weil es einfach war und oft nichts anderes gab. Als es dann Turbo!! Pascal gab, war Basic auf dem absteigenden Ast Borland hatte dann den umstieg auf Windows total vermasselt, und das war dann die Zeit für C Vielleicht hätte sich auch ohne diesen Fehler durchgesetzt, schwer zu sagen. Aber in der breiten Masse hätte PAscal eine gute Chance gehabt. Das aufgebohrte Basic von heute ist Pascal vermutlich so ähnlich, das man besser gleich auf Pascal setzen sollte
was mich am meisten an Basic stören würde..viele Projekte schlafen ein. Feepascal wird beständig weiterentwickelt. Und wie gesagt..kostenlos ebenfalls wie C. Jeder brauchbare Basic Compiler kostet....und bietet dafür keinen Vorteil. Ich ärgere mich immer noch, damals Bascom gekauft zu haben
Vielleicht wurde es schon geschrieben und ich habe es überlesen oder wieder vergessen, aber was spricht Pascal oder BASIC im Vergleich zu Python? Für Python spricht, dass es (laut TIOBE) eine der meistgenutzten Sprachen ist. Ich habe in den letzten Monaten und Jahren einige Stellenanzeigen gelesen und da wurde öfter mal Python gefordert. An Pascal oder BASIC kann ich mich nicht erinnern. Relativ einfach sind alle drei Sprachen. Der Einrichtungsaufwand sollte auch ähnlich sein. Den Bibliotheksumfang kann ich nicht beurteilen, da steht aber Python sehr wahrscheinlich nicht hintenan.
Als Polyglotter Hobby-Programmier, der auch mal klein mit BASIC am C64-er angefangen hat und sich seitdem aus Interesse an den verschiedensten Sprachen in so gut wie alle verbreiteten (plus ein paar exotische) Programmiersprachen eingearbeitet hat, würde ich HEUTE jedem Anfänger Python empfehlen. Leicht zu lernen, schnelle Resultate und unheimlich viele Bibliotheken, die viel Boilerplate-Code, die man in anderen Sprachen oft hat, unnötig machen. Sollte der OP allerdings bereits programmieren können, würde ich empfehlen, bei der Sprache zu bleiben, die bekannt ist, und schauen, dass man eine dazu passende Spiele-Engine findet. Wenn tatsächlich ein ernsthaftes Spiele-Projekt angedacht ist, würde ich empfehlen, C# zu lernen und das Projekt dann mit Unity auf die Beine stellen. Von allen Engines, die ich bisher probiert habe, kommt man damit am einfachsten zum Ziel.
" aber was spricht Pascal oder BASIC im Vergleich zu Python?" Nur, da wir in einem mikrocontroller Forum sind und man damit die Option zur Nutzung von Mikrocontrollern offen lässt. Basic und Pascal gibt es für ARM, AVR 8051 etc pp Die Python umestezung bzw ein Spezieller Chip extra dafür...ist halt nicht wirklich eine Option. Rein auf dem PC genutzt, spricht nichts gegen Python
Als ich vor vielen Jahren mit dem programmieren anfing und auch viele Jahre danach, als ich über andere Programmiersprachen nachdachte, hatte ich immer den Gedanken "am besten wählt man eine Programmiersprache, in die man sich richtig gut einarbeitet. Dann habe ich langfristig was davon und werde richtig gut darin." Heute denke ich eher man sollte sich verschiedene Programmiersprachen anschauen und es ist dann nur eine Frage der Zeit bis man durch die Erfahrungen und Vorlieben sich seine liebsten Programmiersprachen aussucht. Vergesst dieses "ich wähle jetzt Programmiersprache x, programmiere nur noch damit und bin nach vielen Jahren ein Meister darin". Viele C++ Meister dürfen jetzt sich sowieso mit Rust beschäftigen :D Freiwillig und manche auch unfreiwillig. Sollte es sich mehr durchsetzen werden vermutlich noch viel mehr C++ Meister in ihren Jobs Rust lernen. „Be water, my friend“ – Bruce Lee :D
Achja ich empfehle Rust. Schwierig für Programmieranfänger. Genau was für echte Männer oder die es noch werden wollen :D Wer gut werden will muss sich strengen Kriterien stellen. Das Gehirn von jungen Menschen ist lernfähiger als die von Erwachsenen. Man sollte es mit der Kindergarten Mentalität nicht übertreiben sondern Kindern und jungen Leuten in ihrer stärksten Lernphase möglichst starke Konzepte vermitteln. Es sollte auf keinen Fall leicht sein.
RustUser schrieb: > Achja ich empfehle Rust. Schwierig für Programmieranfänger. Genau was > für echte Männer oder die es noch werden wollen :D Rust ... die bisher schlechteste Doku überhaupt! Rust scheitert schon daran: could not find Cargo.toml in x:\xxx\xxx\xxx or any parent directory ... und dann kann man sich einen Wolf suchen. Diese Meldung taucht jedenfalls bei mir nach Schnell-Installation auf und nach dem Versuch ein etwas besseres als "Hallo Welt"-Programm auszuführen.
Progbit schrieb: > Rust scheitert schon daran: > could not find Cargo.toml in x:\xxx\xxx\xxx or any parent directory > Das lässt auf Windows schliesen. Die Basis allen Übels. Nimm doch einfach was gutes.
" Das lässt auf Windows schliesen. Die Basis allen Übels. Nimm doch einfach was gutes." unpassender, unsachlicher und dummer Kommentar...kennen wir ja nicht anders aus der Fraktion....
RustUser schrieb: > Achja ich empfehle Rust. Schwierig für Programmieranfänger. Genau was > für echte Männer oder die es noch werden wollen Klasse Vorschlag - mal im Ernst: wem sollte man Rust empfehlen? Und zu welchem Zweck? Doch wohl nicht für jemanden, der eine Arbeit vor sich hat und damit auch noch irgendwann fertig sein soll. W.S.
W.S. schrieb: > Klasse Vorschlag - mal im Ernst: wem sollte man Rust empfehlen? Und zu > welchem Zweck? Doch wohl nicht für jemanden, der eine Arbeit vor sich > hat und damit auch noch irgendwann fertig sein soll. > > W.S. Jetzt fehlt eigentlich nur noch Ruby on rails als Vorschlag für den Anfänger :-) https://medium.com/@michellenguy/5-reasons-to-build-your-first-game-in-ruby-as-a-beginner-game-developer-73265dc2c88
Rust und Spieleentwicklung: https://arewegameyet.rs/ Progbit schrieb: > Rust scheitert schon daran Scheitert Rust oder der Anwender? :D W.S. schrieb: > Klasse Vorschlag - mal im Ernst: wem sollte man Rust empfehlen? Und zu > welchem Zweck? Doch wohl nicht für jemanden, der eine Arbeit vor sich > hat und damit auch noch irgendwann fertig sein soll Jetzt reißt dich zusammen man! :D
Um mal ein reales Beispiel für ein erfolgreiches Spieleprojekt zu nehmen: https://www.tibia.com/ MMORPG, seit 1997 am Markt, macht Millionenumsätze, aktuell >10k Spieler online. GUI davon war in Tcl/Tk erstellt. (in den ersten Versionen, keine Ahnung ob das immer noch so ist).
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.