ООП Basic въпрос
От доста време искам да си направя игра, но това е един огромен проблем пред мен.
Имам един МайнБлок от него тръгва всичко и той пази само координати и в последствие вероятно още много, но за сега само за това се сещам.
От него се разклонява на Блокчета с Health и такова без.
От тях се разделя на Блокчета който могат да се движат и такива, който не могат.
Общо така стават 4 класа и твърде много повтаряне на код. Немога да измисля по - добър начин ако някой знае някакъв по - различен начин ще му бъда благодарен :)
Блокчетата с хелт се делят на подвижни и неподвижни както и тези без хелт
В такъв случай изчисти си логиката кое блокче какво е и направи 4 класа, като всеки имплементира различни интерфейси, т.е. един клас няма да имплементира никой, два класа ще имплементират по един интерфейс и последния клас имплементира и двата.
Но както RoYal каза, малко ти е абстрактна идеята към момента и по-качествени препоръки трудно ще ти дадем ако не знаем точно какво искаш да направиш.
Така няма ли твърде много повтаряне на код.
А какво става ако не са само хелт и движение ами и др.
Затова трябва да си избистриш концепцията на играта. Ако ще имплементираш комбинаторно всяко едно свойство - ще станат много класове, да.
Повторение на код няма при добре направена структура. Ако различните ти обекти имат еднакво поведение, например движат се еднакво, значи трябва да имаш абстрактен клас, който да опише това поведение и след това наследниците му го наследяват и няма да има нужда да го пишеш наново.
Прегледай курса по ООП, там би трябвало да ти се изяснят нещата. Обърни специално внимание на лабовете и уъркшопите, защото там по-цялостно са развити тези неща.