> /dev/null
286 / 119 / 86
Регистрация: 14.05.2014
Сообщений: 767
|
|||||||||||
1 | |||||||||||
Крестики-Нолики - указать на недочеты14.04.2015, 18:30. Показов 1806. Ответов 5
Метки нет (Все метки)
Здравствуйте! Вчера начил изучать C#, сейчас сделал простую игру "крестики нолики".
Хочу попросить совета, какие ошибки допущены? Что лучше изменить? Какой способ реализации не верный? Form1.cs Кликните здесь для просмотра всего текста
Элементы Кликните здесь для просмотра всего текста
Проект в MS Visual Studio 2010 внизу Заранее спасибо!
0
|
14.04.2015, 18:30 | |
Ответы с готовыми решениями:
5
Крестики нолики Игра Крестики-Нолики Крестики-нолики. Критика к коду Крестики-нолики. Решение деревьями |
> /dev/null
286 / 119 / 86
Регистрация: 14.05.2014
Сообщений: 767
|
|
14.04.2015, 19:02 [ТС] | 2 |
И какое приложение вы бы посоветовали дальше делать?
0
|
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
|
|||||||||||
14.04.2015, 19:12 | 3 | ||||||||||
Сообщение было отмечено Блеф как решение
Решение
1)Методы с большой буквы. И более четкие названия. Если это проверка, то Check... если получение информации то Get... Вот например метод "model" вообще не очевиден, а комментарии на самом деле зло, в идеале код должен легко читаться и без них.
2)Везде this не обязательно писать. 3) Вот так не очень хорошо делать. return "Ничья" if(winner == "Ничья") А такое еще хуже /* Возвращяеи что нибуть, так как надо вернуть значение */ return "false"; Используйте Enum или константы. 4) Это явно надо в массив запихать.
6)Видите две проверки winner == "X"? тоже не хорошо.
Так не делают, сделайте одно событие на все кнопки. Они ведь у вас только числом отличаются. 8) Вообще, хорошо бы добавить классы и переписать в ООП стиле. 9) Постарайтесь отделить логику приложение, от ее визуализации. Гомоку. Это почти тоже самое но уже надо 5 подряд собрать и поле побольше. Там как раз все эти ошибки учтете. А потом еще попробуйте ИИ приделать.
1
|
> /dev/null
286 / 119 / 86
Регистрация: 14.05.2014
Сообщений: 767
|
|
15.04.2015, 15:08 [ТС] | 4 |
tarasalk, спасибо за ответ. Не могли бы пожалуйста уточнить по этим пунктам?
4) как именно? 7) если один обработчик как потом определить какая кнопка была нажата? 8) какие основные классы и за что каждый должен отвечать? На данном примере. Спасибо, и-за очень низких знаний не получается написать толково, приходиться придумывать всякие костыли.
0
|
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
|
|||||||||||
15.04.2015, 16:32 | 5 | ||||||||||
4)
8) Первое что приходит на ум: игра, игрок, клетка. Хотя в такой простой игре это может и излишнее, но я бы старался сразу в ООП стиле делать.
1
|
> /dev/null
286 / 119 / 86
Регистрация: 14.05.2014
Сообщений: 767
|
|
15.04.2015, 17:12 [ТС] | 6 |
tarasalk, спасибо огромное!
0
|
15.04.2015, 17:12 | |
15.04.2015, 17:12 | |
Помогаю со студенческими работами здесь
6
Советы по реализации Крестики-нолики Очистка поля в Крестики-Нолики Разработать приложение «Крестики-нолики» Приложение Крестики-нолики. Игра с компьютером Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |