Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
 |
18.12.10, 18:16
|
#1
|
Banned
Registriert seit: Sep 2008
Beiträge: 107
Bedankt: 8
|
Allgemeine Frage zu Java
Ich habe gehört, dass Minecraft vollständig in Java programmiert worden ist. Und das von nur einer einzigen Person.
Wie schwer ist es, solch ein Spiel wie Minecraft in Java zu programmieren?
Muss man für solch eine Leistung schon jahrelang in Java programmieren, bevor man überhaupt daran denken kann, soetwas alleine zu programmieren?
Oder ist sowas für jeden normal sterblichen mit genug Ehrgeiz machbar?
|
|
|
18.12.10, 21:49
|
#2
|
Newbie
Registriert seit: Aug 2010
Beiträge: 85
Bedankt: 30
|
Eigentlich ist egal in welcher Sprache du ein Spiel programmierst, von Heute auf Morgen wirst du das definitiv nicht lernen. Und du solltest schon einige Jahre Erfahrung in der Sprache haben.
Trotzdem ist es mit genügend Erhgeiz und vor allem Durchhaltevermögen für jeden machbar.
Gruß
Jester
|
|
|
18.12.10, 22:44
|
#3
|
Banned
Registriert seit: Dec 2010
Beiträge: 90
Bedankt: 91
|
Zitat:
Zitat von Jester2
Eigentlich ist egal in welcher Sprache du ein Spiel programmierst, von Heute auf Morgen wirst du das definitiv nicht lernen. Und du solltest schon einige Jahre Erfahrung in der Sprache haben.
Trotzdem ist es mit genügend Erhgeiz und vor allem Durchhaltevermögen für jeden machbar.
Gruß
Jester
|
Das ist aber ziemlicher Unsinn!
Viele akademische Programmiersprachen eignen sich dafür überhaupt nicht.
Und ebenso benötigt man nicht einige Jahre Erfahrung in der Sprache in welcher man ein Spiel programmieren möchte. Wenn man nämlich das Konzept einer Sprache oder eines Programmierparadigmas verstanden hat und beherrscht, dann kommt man mit ähnlichen Konzepten/Programmiersprachen/Paradigmen auch sehr schnell zurecht.
Wer z.B. C++ sehr gut beherrscht und auch OOP, der kommt auch ohne Erfahrung mit Java zurecht.
Umgekehrt ist es schwieriger.
|
|
|
19.12.10, 10:43
|
#4
|
Newbie
Registriert seit: Aug 2010
Beiträge: 85
Bedankt: 30
|
Zitat:
Zitat von m3zz0w1x
Das ist aber ziemlicher Unsinn!
Viele akademische Programmiersprachen eignen sich dafür überhaupt nicht.
|
Ok, ich korrigiere mich.
Eigentlich ist egal in welcher Sprache du ein Spiel programmierst (vorausgesetzt die Sprache an sich ist dazu geeignet), von Heute auf Morgen wirst du das definitiv nicht lernen. Und du solltest schon einige Jahre Erfahrung in der Sprache haben.
Zitat:
Zitat von m3zz0w1x
Und ebenso benötigt man nicht einige Jahre Erfahrung in der Sprache in welcher man ein Spiel programmieren möchte. Wenn man nämlich das Konzept einer Sprache oder eines Programmierparadigmas verstanden hat und beherrscht, dann kommt man mit ähnlichen Konzepten/Programmiersprachen/Paradigmen auch sehr schnell zurecht.
Wer z.B. C++ sehr gut beherrscht und auch OOP, der kommt auch ohne Erfahrung mit Java zurecht.
Umgekehrt ist es schwieriger.
|
Das ist doch Käse was du da schreibst. Man versteht das Konzept nun mal nicht von jetzt auf gleich. Und beherrschen schon mal gar nicht. Er hat von "Normalsterblichen" geredet und nicht von Genies. Ich habe auch einige Jahre gebraucht bis ich Java beherrscht habe (und das obwohl das mein Beruf ist) und selbst heute gibt es einige Bereiche die ich eben nicht bis ins kleinste Detail kenne. Java besteht nun mal nicht nur aus den Standard Libraries, sondern es gibt da noch eine ganze Menge mehr. Allein schon JEE zu kennen und zu beherrschen erfordert täglichen Umgang mit allen Technologien über Jahre hinweg.
Und Markus Persson (Notch) würde ich mal nicht als Referenz nehmen. Denn welcher 8 jähriger programmiert schon Spiele in dem Alter? Und da das in den Zeiten vom C64 war, kannst du mal davon ausgehen, dass der schon an die 40 sein müsste. Und der hat das sicherlich auch nicht von Heute auf Morgen gelernt.
Gruß
Jester
|
|
|
19.12.10, 14:27
|
#5
|
Anfänger
Registriert seit: Apr 2010
Beiträge: 24
Bedankt: 28
|
Auch wenn mein Post im Nachhinein wahrscheinlich zerfetzt wird...
Zitat:
Zitat von Jack159
Oder ist sowas für jeden normal sterblichen mit genug Ehrgeiz machbar?
|
Solange es dir wirklich nicht an Ehrgezi mangelt, definitiv. Das wichtigste ist eigentlich nur die Key-Konzepte der Java-Plattform zu kennen (Classloader, Compiler, GarbageCollection, Threading, Interfaces, Klassenüberladung etc.). Die Syntax geht eigentlich ziemlich leicht von der Hand. Und auch wenn das viele jetzt anders sehen, aber solange ich weiß, wonach ich suchen muss bzw. weiß wo ich welche Code-Fragmente finde, muss ich mir auch nicht alles merken (ohne API-Dokumentation geht z.B. gar nix).
Wenn du wirklich anfangen willst, fang mit was kleinem an. Markus Persson hat auch mal klein angefangen, sieh dir auf seiner Page mal ein paar Projekte an. Er ist halt auch mit jedem noch so kleinen Projekt gewachsen.
Fang einfach mal mit irgendwas kleinem an (z.B. ein kleines Zeichenprogramm mit dem man Kreise, Rechtecke usw malen kann, oder einen elektronischen Taschenrechner). "Klau" dir irgendwelche Code-Fragmente von anderen und schau sie dir an, davon lernt man ziemlich viel. Du wirst dann ziemlich viele AHA-Erlebnisse bekommen und dir Tricks für die Zukunft merken.
Also, leg los!
|
|
|
19.12.10, 16:45
|
#6
|
Newbie
Registriert seit: Aug 2010
Beiträge: 85
Bedankt: 30
|
Zitat:
Zitat von mande
Auch wenn mein Post im Nachhinein wahrscheinlich zerfetzt wird...
|
Nein stimme in dir in so weit zu. Sicherlich kann man mit kleinen Projekten Erfahrung sammeln und damit wachsen. Und sicher ist auch möglich innerhalb von einigen Wochen (wenn man sich denn intensiv damit beschäftigt) brauchbare Ergebnisse zu erzielen. Aber unser Threadstarter fragte folgendes:
Zitat:
Zitat von Jack159
Wie schwer ist es, solch ein Spiel wie Minecraft in Java zu programmieren?
|
Das bekommst du sicherlich nicht in einigen Wochen hin, sondern dafür braucht es mehrere Jahre Erfahrung.
Und ja, Markus Persson hat auch mit kleineren Projekten angefangen und ist damit gewachsen. Deshalb war meine Aussage ja auch:
Zitat:
Zitat von Jester
Trotzdem ist es mit genügend Erhgeiz und vor allem Durchhaltevermögen für jeden machbar.
|
Gruß
Jester
|
|
|
23.12.10, 00:32
|
#7
|
Newbie
Registriert seit: Apr 2009
Beiträge: 78
Bedankt: 21
|
Ganz ehrlich, Spiele programmieren ist die "Königsdisziplin" unter den programmierern, und damit sind aber komplexe Spiele ala Minecraft gemeint. Von heute auf morgen kann man das nicht, es gehört viel Wissen dazu, vor allem Mathematik! Wenn du solch ein Spiel alleine auf die Beine stellen willst. Der Entwickler von Minecraft hat vorher auch viele Games entwickelt und somit Erfahrung gesammelt, alleine der Algorithmus für die Erstellung der Random Welt muss richtig übel sein (ja ich habe mir mal Minecraft angesehen), glaube der Entwickler ist auch Mensa Mitglied.
|
|
|
23.12.10, 12:05
|
#8
|
Banned
Registriert seit: Dec 2010
Beiträge: 90
Bedankt: 91
|
Zitat:
Zitat von testerws
Spiele programmieren ist die "Königsdisziplin" unter den programmierern
|
Totaler Unsinn!
Aufwendige 3D-Spiele programmieren ist natürlich nicht einfach, aber absolut kein Vergleich zu Multi-Tier-Anwendungen, die mehrere Millionen Anfragen in kurzer Zeit verarbeiten müssen, die absolut robust laufen müssen (über Jahre!), sich live updaten lassen und exakte Ergebnisse liefern müssen, die parallel errechnet werden, und und...
Ein Computerspiel muss keine exakten Werte liefern. Ob eine Pixelreihe dunkelrot oder leicht dunkelrot ist, macht sich nicht bemerkbar. Wenn eine elektronische Überweisung aber mal ein oder zwei Nullen mehr hat, dann darf der Softwarehersteller mit Regressionsforderungen rechnen.
Stürzt ein Spiel mal ab, dann ärgert sich ein einziger Spieler, aber stürzt eine Serveranwendung, der Server oder ein Tier ab, dann betrifft das etliche Anwender.
Die Physik in 3D-Spielen ist zwar aufwendig, aber das ist die parallele Datenverarbeitung auch (letztendlich ähnelt sich beides, da die Physik auch parallel auf den GPUs berechnet wird). Zudem erfordern Business-Anwendungen eine fundierte logische Basis. Zu fast jedem Spiel gibt es einen Crack. Das darf bei e-Business, Online-Banking nicht passieren!
|
|
|
24.12.10, 12:28
|
#9
|
Newbie
Registriert seit: Apr 2009
Beiträge: 78
Bedankt: 21
|
Zitat:
Zitat von m3zz0w1x
Totaler Unsinn!
|
Nein Timm, ist es nicht!
Zitat:
Zitat von m3zz0w1x
Zu fast jedem Spiel gibt es einen Crack. Das darf bei e-Business, Online-Banking nicht passieren!
|
Oh stell dir vor es wird auch in diesem Bereich "eingebrochen". Nur es wird evtl. mehr verfolgt bzw. ist es für jmd. der in ein Online-Banking-System einbrechen möchte viel gefährlicher als ein Spiel zu cracken (schon mal darüber nachgedacht ?) Ausserdem verlgeichst du hierbei Birnen mit Äpfeln!
|
|
|
24.12.10, 22:50
|
#10
|
Banned
Registriert seit: Dec 2010
Beiträge: 90
Bedankt: 91
|
Zitat:
Zitat von testerws
Ausserdem verlgeichst du hierbei Birnen mit Äpfeln!
|
Richtig!
Robuste Business-Lösungen für Millionen Bankkunden und Milliarden Transaktionen kann man nicht mit Pipi-Computerspielen für Kiddies vergleichen!
P.S.: Dein Kommentar nährt die Vermutung, dass Du von Software-Entwicklung keine Ahnung hast!
|
|
|
25.12.10, 13:13
|
#11
|
Erfahrener Newbie
Registriert seit: May 2009
Beiträge: 116
Bedankt: 93
|
Computerspiele sind wohl kaum die Königsdisziplin für Programmierer. Weder vom programmiertechnischen Anspruch noch vom Branchenumsatz her. In der Industrie gibt es m.E. weit grössere Herausforderungen als bei der Entwicklung eines Spiels, auch wenn einige Teilbereiche sicherlich sehr spannend sein können (Physiksimulation, Optimierung).
Cracken kann man alles. Wer Gegenteiliges behauptet ist schlichtweg ein Idiot. Richtig ist aber auch, dass der Distributionskanal neben den Sicherheitsanforderungen an eine Software maßgeblich an deren "Crackwahrscheinlichkeit" beteiligt ist. Wenn ich eine Serversoftware habe, die ausschließlich auf fünf Servern weltweit läuft, dann ist der Angriffspunkt ein ganz anderer als bei einer Software die ich millionenfach vollständig ausliefere und wenn meine Software die Firmengeheimnisse zu schützen hat, dann ist sie ganz anders konzipiert als irgendein shoot'em up für 50€.
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:54 Uhr.
().
|