Содержание
- 2. Кейс 1. Создание игры "Потопи сайт" Часть 1.
- 3. Кейс 1. Создание игры "Потопи сайт" В этой игре вы будете играть против компьютера. Основное отличие
- 4. Кейс 1. Создание игры "Потопи сайт" Понятно, что нужны классы и методы, но какими они должны
- 5. Кейс 1. Создание игры "Потопи сайт" Похоже, потребуется минимум два класса — Game и DotCom. Но
- 6. Кейс 1. Создание игры "Потопи сайт" Эта полоса будет размещена на следующих страницах, чтобы напоминать вам,
- 7. Кейс 1. Создание игры "Потопи сайт" Ознакомившись с этим примером, вы поймете, как работает вариант псевдокода.
- 8. Кейс 1. Создание игры "Потопи сайт" Нужно написать тестовый код, который позволит создать объект SimpleDotCom и
- 9. Кейс 1. Создание игры "Потопи сайт"
- 10. Кейс 1. Создание игры "Потопи сайт" Не существует идеального перехода от псевдокода к коду на языке
- 11. Кейс 1. Создание игры "Потопи сайт"
- 12. Кейс 1. Создание игры "Потопи сайт"
- 13. Кейс 1. Создание игры "Потопи сайт" Есть некоторые вещи, которые нужно принять на веру. Например, одна
- 14. Кейс 1. Создание игры "Потопи сайт" Как и в случае с классом SimpIeDotCom, подумайте о фрагментах
- 15. Кейс 1. Создание игры "Потопи сайт"
- 16. Кейс 1. Создание игры "Потопи сайт" Остался вспомогательный класс, который содержит метод getUserInput(). Код для получения
- 17. Кейс 1. Создание игры "Потопи сайт"
- 18. Часть 5. Знакомство с Java API Вместе c Java поставляются сотни классов . Можете не тратить
- 19. Часть 5. Знакомство с Java API В кейсе №1 мы оставили небольшую интригу, а именно -ошибку
- 20. Часть 5. Знакомство с Java API
- 21. Часть 5. Знакомство с Java API
- 22. Часть 5. Знакомство с Java API
- 23. Часть 5. Знакомство с Java API
- 24. Часть 5. Знакомство с Java API
- 25. Часть 5. Знакомство с Java API
- 26. Часть 5. Знакомство с Java API Словно по волшебству, такой массив действительно появился. Но это не
- 27. Часть 5. Знакомство с Java API
- 28. Часть 5. Знакомство с Java API
- 29. Часть 5. Знакомство с Java API Заполните таблицу, глядя на код слева и подбирая его аналог
- 30. Часть 5. Знакомство с Java API
- 31. Часть 5. Знакомство с Java API
- 33. Скачать презентацию
Слайд 2Кейс 1. Создание игры "Потопи сайт"
Часть 1.
Кейс 1. Создание игры "Потопи сайт"
Часть 1.
Слайд 3Кейс 1. Создание игры "Потопи сайт"
В этой игре вы будете играть против
Кейс 1. Создание игры "Потопи сайт"
В этой игре вы будете играть против
Цель: потопить все «сайты» компьютера за минимальное количество попыток. Вы будете получать баллы в зависимости от того, насколько хорошо играете.
Подготовка: при загрузке программы компьютер разместит три «сайта» на виртуальной доске (7x7). После этого вас попросят сделать первый ход.
Как играть: вы пока не научились создавать GUI (графический пользовательский интерфейс), поэтому данная версия будет работать в командной строке. Компьютер предложит вам ввести предполагаемую ячейку в виде A3, С5 и т. д. В ответ на это в командной строке вы получите результат — либо «Попал», либо «Мимо», либо «Вы потопили Pets.com» (или любой другой «сайт», который вам посчастливилось потопить в этот день). Как только вы отправите на корм рыбам все три «сайта», игра завершится выводом на экран вашего рейтинга.
Слайд 4Кейс 1. Создание игры "Потопи сайт"
Понятно, что нужны классы и методы, но
Кейс 1. Создание игры "Потопи сайт"
Понятно, что нужны классы и методы, но
Прежде всего нужно определиться с игровым процессом. Рассмотрим общую идею.
Итак, вы получили представление о том, что должна делать программа. Далее необходимо выяснить, какие для этого понадобятся объекты. Думайте об этом, как Брэд, а не как Ларри; в первую очередь сосредотачивайтесь на элементах, из которых состоит программа, а не на процедурах.
Слайд 5Кейс 1. Создание игры "Потопи сайт"
Похоже, потребуется минимум два класса — Game
Кейс 1. Создание игры "Потопи сайт"
Похоже, потребуется минимум два класса — Game
Упрощенная версия дает хороший старт для создания полноценной игры. Создав что-то маленькое, позже можно
расширить и усложнить это. В текущем варианте класс игры не содержит переменных экземпляра, а весь игровой код находится в методе main(). Иными словами, после запуска игры и вызова главного метода будет создан только один экземпляр класса DotCom, после чего для него будет выбрано положение (три последовательные ячейки
виртуального ряда). Далее программа предложит пользователю сделать ход, проверит его вариант, и предыдущие два действия станут повторяться, пока все три клетки не будут поражены.
Не забывайте, что виртуальный ряд остается виртуальным, то есть не существует нигде в программе. Пока
игре и пользователю известно, что «сайт» спрятан в трех последовательных ячейках из семи возможных (начиная с нулевой), ряд как таковой не нуждается в программном представлении. Может возникнуть соблазн создать массив из семи элементов и присвоить трем из них числа, представляющие «сайт», но это необязательно делать. Нужен массив, который хранит лишь три клетки, занимаемые «сайтом».
Слайд 6Кейс 1. Создание игры "Потопи сайт"
Эта полоса будет размещена на следующих страницах,
Кейс 1. Создание игры "Потопи сайт"
Эта полоса будет размещена на следующих страницах,
Псевдокод
Алгоритм, который поможет вам сосредоточиться на логике, не вникая в синтаксис.
Тестовый код
Класс или метод, с помощью которого можно проверять реальный код и подтверждать, что он работает правильно.
Реальный код
Непосредственная реализация класса. Это рабочий код на языке Java.
Слайд 7Кейс 1. Создание игры "Потопи сайт"
Ознакомившись с этим примером, вы поймете, как
Кейс 1. Создание игры "Потопи сайт"
Ознакомившись с этим примером, вы поймете, как
ОБЪЯВЛЯЕМ целочисленный массив для хранения адреса ячеек. Даем ему имя locationCells.
ОБЪЯВЛЯЕМ переменную типа int для хранения количества попаданий. Называем ее numOfHits и ПРИСВАИВАЕМ ей 0.
ОБЪЯВЛЯЕМ метод checkYourself(), который принимает ход пользователя в качестве параметра String (1, 3 и т. д.), проверяет его и возвращает результат: «Попал», «Мимо» или «Потопил».
ОБЪЯВЛЯЕМ сеттер setLocationCells(), который принимает целочисленный массив (хранящий адрес трех ячеек в виде переменных типа int — 2, 3,4 и т. д.).
МЕТОД: String checkYourself(String userGuess)
ПОЛУЧАЕМ ход пользователя в виде строкового параметра.
ПРЕОБРАЗУЕМ полученные данные в тип int.
ПОВТОРЯЕМ это с каждой ячейкой массива.
//СРАВНИВАЕМ ход пользователя с местоположением клетки.
ЕСЛИ пользователь угадал,
ИНКРЕМЕНТИРУЕМ количество попаданий.
//ВЫЯСНЯЕМ, была ли это последняя ячейка.
ЕСЛИ количество попаданий равно 3, ВОЗВРАЩАЕМ «Потопил».
ИНАЧЕ потопления не произошло, значит, ВОЗВРАЩАЕМ «Попал».
КОНЕЦ ВЕТВЛЕНИЯ
ИНАЧЕ пользователь не попал, значит, ВОЗВРАЩАЕМ «Мимо».
КОНЕЦ ВЕТВЛЕНИЯ
КОНЕЦ ПОВТОРЕНИЯ
КОНЕЦ МЕТОДА
МЕТОД: void setLocationCells(int[] cellLocations)
ПОЛУЧАЕМ адреса ячеек в виде параметра с целочисленным массивом.
ПРИСВАИВАЕМ полученный параметр полю, хранящему адреса ячеек.
КОНЕЦ МЕТОДА
Слайд 8Кейс 1. Создание игры "Потопи сайт"
Нужно написать тестовый код, который позволит создать
Кейс 1. Создание игры "Потопи сайт"
Нужно написать тестовый код, который позволит создать
Теперь спросите себя: «Если метод checkYourSelf() уже реализован, какой тестовый код я могу написать, чтобы убедиться в его корректной работе?»
МЕТОД: String checkYourself(String userGuess)
ПОЛУЧАЕМ ход пользователя в виде строкового параметра.
ПРЕОБРАЗУЕМ полученные данные в int.
ПОВТОРЯЕМ это с каждой ячейкой массива.
// СРАВНИВАЕМ ход пользователя с адресом ячейки.
ЕСЛИ ход пользователя совпал,
ИНКРЕМЕНТИРУЕМ количество попаданий.
//ВЫЯСНЯЕМ, была ли это последняя ячейка.
ЕСЛИ количество попаданий равно 3, ВОЗВРАЩАЕМ «Потопил»
ИНАЧЕ потопления не произошло, то ВОЗВРАЩАЕМ «Попал».
КОНЕЦ ВЕТВЛЕНИЯ
ИНАЧЕ пользователь не попал, ВОЗВРАЩАЕМ «Мимо».
КОНЕЦ ВЕТВЛЕНИЯ
КОНЕЦ ПОВТОРЕНИЯ
КОНЕЦ МЕТОДА
Слайд 9Кейс 1. Создание игры "Потопи сайт"
Кейс 1. Создание игры "Потопи сайт"
Слайд 10Кейс 1. Создание игры "Потопи сайт"
Не существует идеального перехода от псевдокода к
Кейс 1. Создание игры "Потопи сайт"
Не существует идеального перехода от псевдокода к
Посмотрите на этот код и подумайте, что бы вам хотелось в нем улучшить.
Числами обозначаются такие особенности синтаксиса и языка, с которыми вы еще не знакомы. Они будут подробно разобраны на следующем слайде.
Слайд 11Кейс 1. Создание игры "Потопи сайт"
Кейс 1. Создание игры "Потопи сайт"
Слайд 12Кейс 1. Создание игры "Потопи сайт"
Кейс 1. Создание игры "Потопи сайт"
Слайд 13Кейс 1. Создание игры "Потопи сайт"
Есть некоторые вещи, которые нужно принять на
Кейс 1. Создание игры "Потопи сайт"
Есть некоторые вещи, которые нужно принять на
Слайд 14Кейс 1. Создание игры "Потопи сайт"
Как и в случае с классом SimpIeDotCom,
Кейс 1. Создание игры "Потопи сайт"
Как и в случае с классом SimpIeDotCom,
Слайд 15Кейс 1. Создание игры "Потопи сайт"
Кейс 1. Создание игры "Потопи сайт"
Слайд 16Кейс 1. Создание игры "Потопи сайт"
Остался вспомогательный класс, который содержит метод getUserInput().
Кейс 1. Создание игры "Потопи сайт"
Остался вспомогательный класс, который содержит метод getUserInput().
Просто перепишите код, приведенный справа, и скомпилируйте его в класс GameHelper. Поместите все три класса (SimpleDotCom, SimpleDotComGame, GameHelper) в один каталог, который будет рабочим.
Слайд 17Кейс 1. Создание игры "Потопи сайт"
Кейс 1. Создание игры "Потопи сайт"
Слайд 18Часть 5. Знакомство с Java API
Вместе c Java поставляются сотни классов .
Часть 5. Знакомство с Java API
Вместе c Java поставляются сотни классов .
На следующих страницах вы займетесь тем же. Стандартная библиотека Java представляет собой гигантский набор классов, готовых к применению в качестве «строительных блоков». Они позволят вам создавать приложения преимущественно из готового кода. Java API содержит большое количество кода, который даже набирать не нужно. Все, что от вас требуется, — научиться его использовать.
Слайд 19Часть 5. Знакомство с Java API
В кейсе №1 мы оставили небольшую интригу,
Часть 5. Знакомство с Java API
В кейсе №1 мы оставили небольшую интригу,
Слайд 20Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 21Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 22Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 23Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 24Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 25Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 26Часть 5. Знакомство с Java API
Словно по волшебству, такой массив действительно появился.
Но
Часть 5. Знакомство с Java API
Словно по волшебству, такой массив действительно появился.
Но
Это класс из стандартной библиотеки Java (API).
Java Standard Edition (версия Java, с которой вы сейчас работаете; поверьте, вы бы знали, если бы это была Micro Edition, предназначенная для небольших устройств) поставляется с сотнями готовых классов. Это похоже на код, который мы подготовили для вас, где стандартные классы уже скомпилированы.
Это значит, что их не нужно перепечатывать. Просто используйте их.
Слайд 27Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 28Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 29Часть 5. Знакомство с Java API
Заполните таблицу, глядя на код слева и
Часть 5. Знакомство с Java API
Заполните таблицу, глядя на код слева и
Слайд 30Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API
Слайд 31Часть 5. Знакомство с Java API
Часть 5. Знакомство с Java API