Решение на Изберете си проект от Цветан Мадански

Обратно към всички решения

Към профила на Цветан Мадански

Код

# Тъй като нямам опит в проектите и не мога да преценя, кое е
# трудно или лесно (за мен всичко е трудно :D) имам 2 идеи, от които вие
# евентуално да ми кажете към къде е по-добре да се насоча или да мисля # в друга насока.
# Първата е Морски шах. Катo в него искам да играя с-у компютъра(т.е да
# симулирам играта на компютъра с-у мен)
# Втората е истински шах. За него трябва 2-та играчи да се редуват.

История (1 версия и 1 коментар)

Цветан обнови решението на 23.04.2015 19:33 (преди над 9 години)

+# Тъй като нямам опит в проектите и не мога да преценя, кое е
+# трудно или лесно (за мен всичко е трудно :D) имам 2 идеи, от които вие
+# евентуално да ми кажете към къде е по-добре да се насоча или да мисля # в друга насока.
+# Първата е Морски шах. Катo в него искам да играя с-у компютъра(т.е да
+# симулирам играта на компютъра с-у мен)
+# Втората е истински шах. За него трябва 2-та играчи да се редуват.
+

Може би идеята за истински шах е по-интересна. Там писането на изкуствен интелект, срещу който да игераеш е много тежка задача, но ако се съсредоточиш върху представянето на състоянието на играта и правилата ѝ също може да направиш доста интересно и приятно за писане нещо. Важно е кода ти да описва подробно и коректно всички правила на играта(движения на фигури, условия за рокади, шах, мат, пат и прочее). Всичко това може да се получи с някаква доста интересна, не много дълбока йерархия от класове. Също така ще искаме добро разделяне на функционалността от презентацията. Важно е да имаш хубаво обособен код, който реализира фигури, правила и логика за провеждане на игра(пазене на state на дъска, правене на ходове и следене за правилния ред на играчите). Като този код трябва да има добър интерфейс, чрез който нещо което иска да го визуализира даможе да го ползва. След това самата визуализация може да се реализира дори и само с принтиране в конзола, въпреки че един простичък Qt интерфейс би бил доста добро решение.