# Planung und Durchführung eines Projektes



## Fialer (8. Okt 2016)

Hallo,

ich habe bisher nur ein paar Makros in VBA für MS Excel erstellt.
Jetzt wollte ich einen Schritt weiter gehen und lernen richtig zu programmieren.
Dafür habe ich mir ein "scheinbar" simples Projekt in den Kopf gesetzt. Ich wollte einen Charakter-Editor für ein P&P Rollenspiel programmieren. (Leider doch nicht so einfach und wird wohl eine DB benötigen...)
Einige Stunden an YouTube Videos mit Einführung in Java habe ich jetzt durch und auch schon erfolgreich mal etwas Code erstellt.
Ich habe hier die Bücher "Programmieren lernen mit Java" und "Java ist auch eine Insel" [beide Rheinwerk Computing Verlag] liegen, durch die ich mich gerade durcharbeite.

Mein Problem kommt von einer eher "simplen" Seite von der ich nur absolut nichts verstehe und mir hier etwas Hilfe erhoffe, da ich auf YouTube und Google nichts gefunden habe.
WIE plane ich ein Programm?
Wie bekomme ich die Klassen zusammen die ich brauchen werde?

Ich würde gerne bald mit dem Programmentwurf starten, daher würde ich mich über Links und ggf. Vokabeln mit denen ich bei Google weiter komme freuen.

Ein paar Eckpunkte für jemanden der keine Ahnung von Rollenspiel hat:
Charakter: Virtuelle Person, die von einem Spieler gespielt wird und wo auf dem Charakterbogen alle wichtigen Daten stehen.
Es gibt verschiedene Rassen. Jede Rasse kann verschiedene Fähigkeiten bzw. Fertigkeiten modifizieren.
Fähigkeiten beschreiben Dinge wie Stärke, Intelligenz, etc. (12 Werte die sich nur beim Stufenanstieg ändern können)
Fertigkeiten, werden durch Erfahrungspunkte gekauft.
Level erhöhen sich bei überschreiten vordefinierter Grenzwerte [ausgegebene Erfahrungspunkte].
Alle Werte sind ganze Zahlen zwischen 0 bis 100. Werte die durch Modifikatoren verändert werden haben Formeln wie a = x+[(100-x)/100] wobei im Einzelfall auf- oder abgerundet wird. Dafür werden also 2 Dezimalstellen benötigt.
Über die DB sollen dann mehrere Spieler ihre(n) Charakterbogen/-bögen ggf. sogar innerhalb der Gruppe verwalten können.


----------



## falke327 (9. Okt 2016)

Hallo,
die Bücher die du angesprochen hast sind für den Anfang gut um überhaupt mit der Sprache umgehen zu können. Was du jetzt brauchst ist etwas darüber wie man generell vorgeht. Für den Anfang solltest du dir vll erst einmal bewusst machen in welchen Beziehungen die Teile deines Programmes zueinander stehen. Also zum Beispiel sowas wie ist eine Rasse ein spezieller Charakter oder ist die Rasse nur eine Eigenschaft eines Charakters. Das solltest du dir auch ruhig mal aufmalen und etwas rumexperimentieren, bevor du etwas programmierst. 
Wenn du zum Thema Entwicklung ein Buch suchst, dann schau dir mal die HeadFirst Bücher an, die sind meiner Meinung nach sehr gut um einen praktischen Anfang zu finden. Hier kann man da auch mal kurz reinschauen:
https://library.oreilly.com/book/9780596527358/head-first-software-development/toc
Manche der Bücher gibt es auch auf Deutsch zu kaufen, musst du einfach mal danach suchen.
Dann schon mal viel Erfolg, ich hoffe ich konnte weiterhelfen.


----------



## AndiE (9. Okt 2016)

Ohne den Fachleuten hier vorgreifen zu wollen, könnte ich mir vorstellen, dass du mit der Funktion "generate()" beginnst. Sie soll einen neuen Charakter erstellen. Nun solltest du dich Fragen, in welchem Datenobjekt sich diese Methode befinden sollte. Ich selbst würde eine Starterklasse erstellen, die dann dieses Objekt erzeugt- Generator würde sich als Name anbieten. Natürlich brauchst du ach eine Charakter-Klasse, von der du ja Objekte erstellst, bei Weiterentwicklung updatest und verwaltest. Mittelfristig brauchst du noch eine Rules-Klasse, in der du die grundlegenden Spielwerte ablegst. Ich persönlich würde aber erst mal kleine Brötchen backen und mit einem Charakter mit wenigen Eigenschaften anfangen. Erweitern kann man den dann immer noch.


----------

