# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
|
|||
Мы начинаем создание многопользовательской игры "Морской Бой". В игру можно будет играть одновременно четырём участникам. Будет реализована клиентская часть с графическим интерфейсом на C#. Будет разработан протокол общения клиентских программ с сервером. Будет спроектирована и создана серверная база данных на MySQL. Будет написана серверная часть отработки протокола на PHP. Будет создан клиент-класс отработки протокола на C#. Будет реализована анимация всех событий в игре. На этом уроке рассказано о структуре проекта. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: постановке задачи, планированию и расписанию действий программы, вспомнила как работать в фотошопе Сложности: сложностей не возникло, вот только все равно не могу прилепить картинку которая меня не радует, по этому все равно потратила немного время на красоту Комментарии: Я очень рада что начала этот увлекательную игру! Начало уже впечатляет и завораживает, а дальше еще будет полно сюрпризов и волшебства! Ура!!! Спасибо, тебе мой Волшебник! Вперед в сказку!!! :) |
|||||
2 | Интерфейс - Первый кораблик |
|
|||
На этом уроке мы начнём создание проекта - создадим проект, настроим форму, прикрепим иконку. На самой форме разместим главную картинку - pictureMain. А ещё нарисуем 4 картинки и добавим их в ресурсы проекта. Далее создадим графику, подготовим картинки и научимся их выводить на основную картинку. Под конец урока сделаем размещение корабликов по щелчку мышки. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: работа с классом Graphics, создавать на PictureBox много разных объектов, работа с ресурсами, обработка событий мышки Сложности: сложностей не возникло, только желание играть и создавать дальше:) Комментарии: Я в восторге от красоты что получилась!!! Очень довольна результатами! Чудесный урок и уже жду следующего!!! Спасибо!!! Пока оставила большой размер, потом сделаю поменьше все, просто мне очень понравилось как полается и на этом этапе пусть будет такая красота! :) |
|||||
3 | Интерфейс - А на море корабли |
|
|||
На этом уроке мы нарисуем море с кораблями. Пока у нас не будет матриц, размещение объектов будет случайным. В конце урока напишем алгоритм позиционирования курсора мышки над нашим морем и сделаем размещение "ударов" по морю. Отчёт отправил: 24. Олюшка Выполнено за 45 мин. [Показать отчёт] Научился: работа с константами, закрепление навыков работы класса Random, повторила работу switch, работа с координатами Сложности: на данном этапе с шикарным объяснением не возникло! :) Комментарии: Жду с удовольствием и нетерпением следующей серии ;) Отличный урок! Мне очень нравится все эта игровая подача материала, выполняется все на одном дыхании с удовольствием и наслаждением от полученного опыта и результата! Молодец, Евгений! Спасибо за великолепную работу! :) |
|||||
4 | Графика - Карта Морского флота |
|
|||
На этом уроке мы создадим карту морского флота. Это будет двумерный массив, в каждой клетке которого записано одно из четырёх значений. Мы напишем алгоритм размещения кораблей и сделаем отображение карты на экране. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 10 мин. [Показать отчёт] Научился: потренировалась с enum, работа с массивами, потренировалась с предохранительным клапаном, работа с координатами, продолжила изучение с графикой Сложности: все понятно, и все замечательно получается!!! Комментарии: Замечательный и подробный урок, и итог потрясающий, все работает! Класс! Очень рада и жду продолжения! :) Спасибо за урок и объяснения! :) |
|||||
5 | Графика - Выстрелы по Кораблям |
|
|||
На этом уроке мы наконец-таки сможем немножко поиграть с компьютером и потопить весь компьютерный флот! :) Сначала мы уберём вывод кораблей на экран, потом переделаем функцию обработки клика мышки. Добавим проверку точности удара и вывода результата. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 30 мин. [Показать отчёт] Научился: Работа со Switch, попрактиковалась делать подсчет, продолжила тренировку с матрицей, с координатами Сложности: сложностей не было, правда не сразу сообразила как сделать статистику, и то по невнимательности (при копировании не изменила название) не выводились подсчет ходов! очень смешно даже стало! :) Комментарии: Отличный урок, уже видна работа! Это здорово что у меня все получилось реализовать! Я Молодец! Первый скриншот это я компьютер обманывала, посмотрела его расстановку кораблей ;) второй по честному :) Спасибо за урок, с удовольствием перехожу дальше, ведь там еще интересней! :) |
|||||
6 | Графика - Рефакторинг |
|
|||
На этом уроке мы займёмся рефакторингом кода. Создадим класс Graph, в который перенесём все операции, связанные с графикой. Код станет чище, понятней, хотя придётся повозиться с его оптимизацией. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: устранять разные мелкие недочеты, потренировалась с рефакторингом, создания заглушили для конструктора, создание класса и наполнения его из базового Сложности: не то что сложно сколько пока еще не привычно улавливать что можно объединять и выносить в отдельный класс Комментарии: Заметила в программе, что когда все корабли потопленные при нажатии опять на старт поле обновляется, а нажать уже не возможно, вообщем я это исправила, помудрила и получилось, может конечно и не самым красивым способом, однако у меня теперь работает и статистика моя обнуляется, играть заново можно, есть еще конечно подбитые корабли после победы убирать наверное нужно, однако это только начало и все еще будет меняться так что пока такой вариант и мне он нравится! Я Молодец! :) Спасибо за урок, рефакторинг это красиво, мне нравится эта магия, хотя для самостоятельной реализации ее еще далеко, будем дальше тренироваться в этом волшебстве! :) |
|||||
7 | Анимация - Полёт снаряда |
|
|||
На этом уроке мы составим список всех анимаций, которые будут в нашей игре. Твоя задача - нарисовать все кадры полёта снаряда.
Отчёт отправил: 24. Олюшка Выполнено за 10 мин. [Показать отчёт] Научился: холявничать, использовать чужую работу :) Сложности: сложностей не возникло, с Моим Добрым Волшебником Евгением, все очень легко! :) Комментарии: Спасибо, Евгений! Хороший урок! Я в восторге, ты очень порадовал!!! :) |
|||||
8 | Анимация - Отображение кадров |
|
|||
На этом уроке мы создадим первую анимацию в нашем проекте. Это будет летящий снаряд. Мы рассмотрим несколько способов его отображения, а также добавим его перемещение. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: работа с массивом из ресурсов (массив Bitmap), динамическое создание PictureBox и размещение его на другом PictureBox, еще раз потренировалась работе с дизайнером студии Сложности: не было сложно, очень все подробно изложено в уроке! Комментарии: У меня заработало с первого раза, при чем прозрачность сразу появилась даже без строчки, где мы присваиваем нашему пинчеру Color.Transpfrent! Отличный урок, очень понравился и жду продолжения следующих чудес! Спасибо, Евгений, ты как всегда все мастерски показал и объяснил, на высшем уровне, с дальнейшим желание творить такие чудеса! :) |
|||||
9 | Анимация - Полёт по таймеру |
|
|||
На этом уроке мы добавим таймер и реализуем полёт снаряда через функцию его события. Для этого в функцию таймера нужно будет разместить внутренности цикла, а также добавить проверки на начало и окончание полёта снаряда. Потом мы оформим полёт снаряда в ту клетку моря, по которой был щелчёк мышки. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 10 мин. [Показать отчёт] Научился: еще раз потренировалась работать с координатами (визуализации полета по нажатию на мышку), работать с таймером Сложности: сложностей не возникла, чему очень рада, хотя в таком подачей материала любой справится! :) Комментарии: Классный урок, я здорово потренировалась и у меня все замечательно получилось, теперь у меня летают снаряды, довольна очень! Я, Молодец! И все благодаря тебе Евгений, Спасибо в тысячный раз! :) Теперь с нетерпением жду продолжения мокрой серии, чтобы и дальше картинки оживали и перемещались! :) Видеообзор: http://youtu.be/rWTXKBrB4tM |
|||||
10 | Архитектура - Перезагрузка проекта |
|
|||
На этом уроке мы начнём всё заново. Но уже на другом, качественно новом уровне. Проработаем архитектуру будущей программы. Создадим новый проект и создадим класс Ocean. Пока программа будет простой, самое главное в этом уроке - понять архитектуру проекта, увидеть весь лес как бы сверху. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: делать предварительную работу для облегчения написания программы, узнала как создаются успешные крупные проекты Сложности: сложностей не возникло, однако было новое осознания работы над проектами, ведь мне нравился старый проект, значит новый будет еще круче! Комментарии: Спасибо за секреты и знания! Очень интересно и неожиданно! С радостью жду новый урок и новые познания! :) |
|||||
11 | Архитектура - Карта Пиратов |
|
|||
На этом уроке мы создадим карту Пиратов, определимся с условными обозначениями (enum), определим отдельные матрицы для размещения кораблей и отметки совершённых по ним ударов. Создадим метод для размещения кораблей и потестируем всё это в пошаговом режиме. Также добавим статистические переменные, настоящие пираты должны знать сколько было кораблей и сколько осталось. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 10 мин. [Показать отчёт] Научился: узнала как можно генерировать класс, увидела в действии перегруженные методы, работа с матрицей, потренировалась с пошаговой отладкой Сложности: при выполнении сложностей не было, а вот понимание пришло не сразу, хотя мне все же кажется что не до конца еще осознаю Комментарии: Замечательный урок, очень подробный и интересный! Спасибо, Евгений! :) |
|||||
12 | Архитектура - Наследие картинок |
|
|||
На этом уроке мы займёмся картинками. Создадим класс Box, унаследованный от PictureBox и настроим его для использования в нашем проекте. Далее, из него мы унаследуем классы для каждой из картинок. Самое сложное в этом уроке - уловить идею наследования и понять, почему и как эти картинки выводятся на экран. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 15 мин. [Показать отчёт] Научился: потренировалась с наследованием классов и созданию конструкторов с наследуемые из базового класса, динамическое создание боксов Сложности: самое сложное что очень интересно и не возможно насладится эти!!! Комментарии: Великолепнейший урок! Я очень довольна результатами, и рада что все здорово получается! Спасибо за это волшебство! :) |
|||||
13 | Архитектура - Фабрика картинок |
|
|||
На этом уроке мы настроим вывод карты на экран. Нам понадобится фабрика картинок - статический метод Box.Create и волшебная функция превращения EnumShips x EnumFires в EnumIcons. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: работу использования switch в switch, использовать заготовки Сложности: с таким подробным объяснением и подготовкой что делали раньше не было! :) Комментарии: Увлекательный урок! Я здорово потренировалась и поигралась! И на эту магию можно смотреть и восхищаться очень долго! :) Благодарю Главного Волшебника в этой Сказке! :) |
|||||
14 | Архитектура - Мышкой по кораблям |
|
|||
На этом уроке мы научимся по щелчку мышки стрелять по кораблям. Для этого нам понадобится создать обработчик MouseClick, и подцепить его к каждой картинке. Используя делегаты мы будем свистать всех на верх - до класса Form1, из которого будем спускаться по иерархии опять вниз, для пометки выстрела и отображения его на карте. Отчёт отправил: 24. Олюшка Выполнено за 50 мин. [Показать отчёт] Научился: динамически создавать события, продолжила изучение делегатов, работа с массивами Сложности: замечательное объяснение, сложностей не возникло :) Комментарии: Еще раз повторю что объяснение очень классное, я поняла делегаты! Ура!!! Похоже это не так и сложно как кажется! Спасибо Евгений за это чудо! :) |
|||||
15 | База Морского Флота - INFO |
|
|||
На этом уроке мы начнём проектировать Базу данных серверного флота. Пока мы создадим эскиз только для одной таблицы - info, в которой будет поле status. Для него мы составим схему состояний, и условия перехода из одного состояния в другое. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: составлять таблицу для базы данных, рисовать схему состояния таблицы Сложности: сложно понять как это будет дальше работать, для меня не очень понятно как через сервер происходит игра Комментарии: Очень интересно, попробовала порисовать в предложенном сайте Draw.io мне понравилось составлять схему в ней, нравится как получилось! :) Спасибо за урок! Хочу дальше уже! :) |
|||||
16 | База Морского Флота - SHIP |
|
|||
На этом уроке мы создадим таблицу для хранения координат кораблей и их состояния. В таблице ship будет 5 полей. Отдельное внимание уделено вопросу перезарядки пушек. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: продолжила изучать таблицы для хранения в базе данных, составлять схемы состояния Сложности: сложностей не было, все понятно, только вот зарисовалась немного, ну уж люблю я эту красоту наводить!!! :D Комментарии: Отличный урок, уже же после прорисовки становится понятно что будет! Спасибо огромное! :) |
|||||
17 | База Морского Флота - GAME |
|
|||
На этом уроке мы создадим таблицу событий в нашей игре, в которой будут хранится транзакции всех выстрелов и их результатов. В таблице game будет 6 полей, при каждом выстреле в неё будет добавляться две записи. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 15 мин. [Показать отчёт] Научился: продумывать ход игры, составлять таблицу действий Сложности: сложностей не возникло с подсказками и подробными объяснениями Евгения Комментарии: Если честно я бы в жизни не додумалась что нужно хранить на сервере и до этого даже не представляла как будет проходить игра, теперь когда сделала пошагавшую таблицу стало намного понятней что и зачем мы делаем! Это великолепно! Спасибо за познавательный урок! :) |
|||||
18 | База Морского Флота - phpMyAdmin |
|
|||
На этом уроке мы наконец-таки возьмёмся за практику. Запустим phpMyAdmin и создадим в нём все три таблицы. Отчёт отправил: 24. Олюшка Выполнено за 40 мин. [Показать отчёт] Научился: потренировалась создавать таблице на серевере phpMyAdmin, создавать там запись, изменять ее Сложности: Сложностей не возникло, оказывается это не сложно, главное делать все внимательно и у меня это отлично вышло! Комментарии: Класс, теперь у меня таблицы на сервере, я жутко рада!!! Спасибо за такую возможность! :) |
|||||
19 | База Морского флота - Экспресс SQL |
|
|||
На этом уроке мы сделаем краткий экспресс-обзор языка структурированных запросов. Кратко рассмотрим все основные команды SQL.
Отчёт отправил: 24. Олюшка Выполнено за 3 час. 40 мин. [Показать отчёт] Научился: сделала себе полезную шпаргалку основных запросов команд SQL на сервере phpMyAdmin и их проработала Сложности: все очень просто и понятно Комментарии: СПАСИБО за этот очень полезный урок, теперь мне очень станет дальше работать и выполнять запросы! Мне уже все понятно и есть куда подсмотреть в случае чего, а это уже много! Все классно! :)⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️ |
|||||
20 | База Морского Флота - Запросы SQL |
|
|||
На этом уроке мы от души повеселимся с таблицами info и ship - посоставляем самые разные запросы к ним, которые в будущем нам пригодятся при проектировании Серверного протокола. Эти запросы будут выполняться в PHP на серверной части при обработке клиентских запросов. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 15 мин. [Показать отчёт] Научился: продолжила освоение запросов SQL на сервере phpMyAdmin, проработала команды в запросах Сложности: да уже легкотня Комментарии: УРА!!! Круто, я уже все понимаю и все легко! У меня все круто получилось, довольна как слон после купаний!!!! ☀️☀️☀️ Спасибо, Евгений что все разжевал и потренировал эти уроки! Теперь все замечательно!!!! ❤️ ⭐️ ⭐️⭐️⭐️⭐️⭐️⭐️⭐️Плывем дальше на всех алых парусах ⛵️ |
|||||
21 | Протокол - Список команд |
|
|||
На этом уроке мы начнём проектировать протокол общения клиентской программы с сервеной частью. Перечислим все клиентские команды и кратко пройдёмся по каждой. Составить xml-формат сервеных ответов нужно будет самостоятельно.
Отчёт отправил: 24. Олюшка Выполнено за 4 час. 00 мин. [Показать отчёт] Научился: потренировалась с добавлением и удалением строк в phpMyAdmin, познакомилась с написанием протокола и созданию команд Сложности: не могу сказать что это сложно, просто для меня это как китайская грамота я с таким в своей жизни не сталкивалась! Так что все круто! :) Комментарии: Я посталась переписала! У меня получилось! :) Уверена что дальше будет понятно для чего мы это сделали и как это будет работать! Спасибо за урок, уверена что с такой табличкой, возможно она у меня и не совсем правильная, все же дальше будет легче и более понятней создавать запросы! :) |
|||||
22 | Протокол - Команды INFO и SHIP |
|
|||
На этом уроке мы проработаем клиентский запрос "info" и "ship". Выпишем все варианты ответа сервера, и, самое главное, напишем SQL-запросы для проверки всех возможных случаев. Урок сложный, но после такой проработки создание серверного РНР скрипта будет сплошным удовольствием :) Отчёт отправил: 24. Олюшка Выполнено за 6 час. 20 мин. [Показать отчёт] Научился: выполнять SQL запросы на сервере phpMyAdmin Сложности: с пошаговым объяснением и отработкой сложностей не возникло, даже понимание пришло! :) Комментарии: Круто!!! Я все же это сделал!!! УрЯ!!! Я МОЛОДЕЦ!!!! После второго просмотра и пошаговым выполнением запросов, стало понятней намного, уверена что теперь будет намного все легче и веселей, и теперь знаю что дальше добавление разных макарон с удовольствием переварится и поглотится с пользой! :) СПАСИБО, ЕВГЕНИЙ за терпение! За то что терпел наше занудство!!! Ты, Молодец! :) |
|||||
23 | Протокол - Команда FIRE |
|
|||
На этом уроке мы проработаем клиентский запрос "fire". Выпишем все варианты ответа сервера, и, самое главное, напишем SQL-запросы для проверки всех возможных случаев. Во второй части урока мы три раза пройдёмся по алгоритму, выполняя все написанные SQL запросы. Отчёт отправил: 24. Олюшка Выполнено за 6 час. 00 мин. [Показать отчёт] Научился: продолжила тренироваться и писать и делать SQL запросы на сервере phpMyAdmin, попробовал редактировать строки и таблицу Сложности: так как все запросы уже Евгений написал и каждый объяснил, сложностей не возникло Комментарии: Фух! Я это сделала! И я все преодолела! УРА! И это все не сложно, когда все это уже сделано и позади! Я действительно Молодец! Спасибо Евгений за прекрасный урок! ☀️ |
|||||
24 | Протокол - Команда GAME |
|
|||
На этом уроке мы разберём последнюю команду протокола - game. Команда простая, но очень важная - именно она будет чаще всего выполняться, благодаря ей все клиенты будут знать, что происходит на море, что куда летит и с каким результатом. Отчёт отправил: 24. Олюшка Выполнено за 44 мин. [Показать отчёт] Научился: продолжила прокачиваться с запросами, увидела как формируется XML ответ на сервер Сложности: не возникло, очень хорошая до этого подготовка и Евгений все подробно объяснил!☀️ Комментарии: Отличный урок! Все классно! Спасибо, Евгений за великолепные и понятные объяснения! Плывем далее к интересному!!! ⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️⛵️ |
|||||
25 | Серверный флот - FTP подключение |
|
|||
На этом уроке мы подключимся к FTP серверу, создадим там свою папку и создадим файл init.php. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 15 мин. [Показать отчёт] Научился: уже научилась создавать подключения FTP к серверу с помощью Tool Commander, подключаться и делать надпись Сложности: очень забавно было когда я поставила новый классный Total и внесла все правильные данные он не захотел соединяться, удивительно ведь все было корректно, и даже пропись порта не дал результатов, и не только у меня, подключившийся ко мне Валера тоже не смог ничего сделать, и только как вариант поставить новый скаченный Total все сразу же заработало, возможно какие-то нестыковки моей виртуальной машины, десятой винды и топотал, хотя это не важно уже, ведь мы добились отличного результата, все работает!!! Комментарии: Валера, огромное спасибо тебе за то что провозился вместе со мной подключая и поддерживая меня! Благодарю Евгений за классный урок, теперь мои знания намного расширились и с каждым разом все увеличиваются, а навыки становятся крепче! И ДА, УРА!!! Я тоже со всеми с вами я тоже подключилась!!! ❤️ |
|||||
26 | Серверный флот - Как PHP дружит с MySQL |
|
|||
На этом уроке мы создадим на РНР подключение к базе данных MySQL. Организуем подключение, выберем базу данных, выполним запрос, и напечатеем результат. Отчёт отправил: 24. Олюшка Выполнено за 25 мин. [Показать отчёт] Научился: увидела и написала код на PHP, узнала как в PHP делать запрос с базе данных MySQL, узнала как выводить таблицы на экран через PHP Сложности: ужас, как то очень все просто получилось, я даже и испугаться не успела все заработала, легко и просто!!! а все в классном объяснение Евгения!!! ☀️☀️☀️☀️☀️ Комментарии: Классный урок! СПАСИБО!!!❤️ Я связала и подружила скрип PHP с моей созданными таблицами MySQL! Это Круто! Я Молодец!!! ⭐️✨⭐️✨⭐️✨⭐️ |
|||||
27 | Серверный флот - Рефакторинг РНР-кода |
|
|||
На этом уроке мы займёмся рефакторингом, если у кого-нибудь повернётся язык назвать этим словом то, чем мы здесь будем заниматься... Мы переделаем файл init.php в подключаемый - в нём будет только подключение к базе и две полезные функции. В конце урока мы создадим файл battle.php, в котором сделаем include и протестируем. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 35 мин. [Показать отчёт] Научился: пробовала писать/создавать функции в PHP, обработку разных ошибок, создать файл и из него выводить другой созданный ранее файл Сложности: не сложно а не привычно тестировать без студии, помарки в ходе кода и не отыщешь! :D Комментарии: Классно! Я и это уже сделала, это круто!!! Я довольна и очень счастлива, Я Молодец, со всем справилась поиграла с выведением ошибок, правда заигралась и потом пришлось искать ошибку!!! Однако все нашлось и все очень-очень здорово работает! Уже привыкаю к такому письму! Спасибо, Женя за великолепный урок! Ты так ненавязчиво подаешь каждую строчку что складывается впечатление что это и не совсем уже незнакомый язык! СПАСИБО!!! ⭐️⭐️⭐️⭐️⭐️ |
|||||
28 | Серверный флот - Функция do_info |
|
|||
На этом уроке мы создадим структуру файла battle.php и напишем заглушки для всех функций протокола. Далее, реализуем команду info в функции do_info() Отчёт отправил: 24. Олюшка Выполнено за 1 час. 20 мин. [Показать отчёт] Научился: продолжила изучение PHP, увидела для чего мы делали xml, потренировалась выполнить запрос Сложности: сложностей не было, было одно недоразумение, я как и Женя сохраняла не тот файл и не могла понять что ж не так, долго потом смеялась!!! :) Комментарии: Хороший урок, начинается все выстраиваться в красивую картину, и похоже уже проясняется что и как делаю! Спасибо огромное! Плыву медленно но очень уверена с попутным ветерком!!! ⛵️ |
|||||
29 | Серверный флот - Капитан очевидность |
|
|||
На этом уроке мы исправим несколько мелких недочётов. Добавим в таблицу info поле oceans, соответственно изменим функцию do_info(). Добавим в файл init.php две новые функции select_scalar() и now_ticks (). Также нам придётся изменить тип полей для хранения тиков с int на bigint. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 15 мин. [Показать отчёт] Научился: потренировалась и расширила знания phpMyAdmin, продолжила знакомится (писать) на PHP и узнала функцию microtime() (про тики), узнала про тип BIGINT Сложности: сложно не было, только было очень смешно, я смеялась на всю квартиру, когда добавила в phpMyAdmin океан, в PHP тоже, обновила страницу браузера и не заработало, подумала вот блин, чет я все таки не то сделала, сейчас посмотри видео, включаю смотрю тоже самое и Евгений сделал, так же не обновил, а всего то навсего нужно сохранить с скопировать же на сервер, долго смеялась :D (делала немного перед просмотрам видео что уже знаю, не ждала когда у тебя будет результат, услышала что нужно сделать остановила и сделала, так попробую) Комментарии: Замечательный УРОК!!! Класс все получается, многое уже понятно, что значит тренировка-прокачка!!!! ☀️ СПАСИБО!!! Я очень счастлива и рада!!! ВПЕРЕД дальше покорять ФЛОТ!!!⛵️ |
|||||
30 | Серверный флот - Функция do_ship |
|
|||
На этом уроке мы напишем функцию do_ship(). Разберём ещё раз все возможные ошибки расстановки кораблей, сформируем код и текст ошибки, который вернём в xml. После успешного размещения всех кораблей мы поменяем статус игры на "play" и начнём уже играть. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 10 мин. [Показать отчёт] Научился: продолжила тренироваться с PHP, привыкаю уже к синтаксису немного! Сложности: немного непривычный синтаксис, путаюсь в нем и опечаток много, долго их находить!!! А так все очень подробно изложено! У меня почему-то не все ошибки отрабатываются, пока не понимаю, буду дальше работать уверена обязательно найду!! Комментарии: Спасибо, за отличный урок, за ознакомление и продолжение обучения, и за расширения знаний и навыков! |
|||||
31 | Серверный флот - Функция do_fire |
|
|||
На этом уроке мы напишем функцию do_fire(). Разберём ещё раз все возможные ошибки при выполнении выстрела, сформируем код и текст ошибки, который вернём в xml. После успешного выстрела мы проверим количество оставшихся океанов. В конце функции добавим все транзакции в таблицу game. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 25 мин. [Показать отчёт] Научился: продолжила освоение PHP и написание на нем запросы из MySQL Сложности: сложностей не возникло, очень-очень подробно Евгений объяснил в видео, к тому же уже привыкла и уже очень понятно становится!!! Комментарии: УРА!!! Я въехала!!! У меня получилось все, и ошибки даже очень быстро находила, все же тренировка великая сила!!! Я очень счастлива, поиграла с выстрелами, это здорово!!! Я Молодец!!! СПАСИБО за этот замечательный урок!!! |
|||||
32 | Серверный флот - Функция do_game |
|
|||
На этом уроке мы напишем функцию do_game(). Будем получать список всех выстрелов с результатами. Отчёт отправил: 24. Олюшка Выполнено за 45 мин. [Показать отчёт] Научился: продолжила тренироваться писать на PHP, формировать xml-ответ сервера на запрос клиента, работать с запросами SQL, тестировать запросы на ошибки Сложности: сложностей не возникало, к этому уроку уже все стало понятно что мы делаем, к синтаксису привыкла уже!!! Комментарии: Замечательный урок, все стало ясно и понятно к чему мы так долго и упорно шли и тренировались в запросах!!! Все это теперь очень пригодилось и это классно! Я это прошла и сделала!!! Я счастлива и рада!!! УРА!!! Я Молодчина!!! Спасибо тебе Женя, что вот так вот играючись показал и рассказал такие великолепные и нужные знания!!! :) |
|||||
33 | ПОЛУФИНАЛЬНЫЙ УРОК. Большая игра |
|
|||
На этом уроке мы поиграем в Морской флот через адресную строку. Устроим соревнование из шести участников. Битва будет что надо! :) В начале урока мы допишем в протокольчик команду перезапуска игры и стартанём. В конце урока я покажу, как написан скрипт map.php для отображения статуса игры. В этом уроке нужно поиграть самому и ЗАПИСАТЬ видеообзор игры. Отчёт отправил: 24. Олюшка Выполнено за 30 мин. [Показать отчёт] Научился: создавать запросы в адресной строке в браузере Сложности: сложностей не возникло, так как все делали на вебинаре под четким руководством Евгения Комментарии: Жаль выиграть у меня не получилось, мои корабли быстро потопили, однако потренироваться с запросами очень классно получилось!!! Это круто, все работает!!! Мы сделали первую игру!!! КЛАСС! Спасибо Женя за такое чудо!!! За этот шикарный урок!!! :) |
|||||
34 | Клиентский флот - Подключение к серверу |
|
|||
На этом уроке мы создадим класс Server, который будет подключаться к нашему PHP скрипту. Будет отправлять запрос и получать ответ. Примечание Если ваша сеть использует для подключения к интернету особые настройки прокси-сервера, то необходимо добавить в программу считывание системных Proxy-настроек, см. пример. Отчёт отправил: 24. Олюшка Выполнено за 40 мин. [Показать отчёт] Научился: познакомилась с классом WebRequest, WebResponse для обращения к серверу в виде потока, узнала что для потока есть специальный класс Stream для передачи байтов информации, познакомилась с классом WebClient который облегчает работу обращения к серверу (меньше возможностей) Сложности: не возникло, очень хорошее объяснениее Комментарии: Класс! Здорово получается, я вижу что у меня в итоге выходит, и все связывается к одну прекрасную картину, один суперский проект!!! Я в шоке и восторге!!! СПАСИБО за такое чудо!!! :) |
|||||
35 | Клиентский флот - Парсинг XML |
|
|||
На этом уроке мы научимся парсить XML документ. Мы напишем метод RequestInfo(), который выудит все нужные значения из XML-документы и вернёт их в основную программу. Отчёт отправил: 24. Олюшка Выполнено за 30 мин. [Показать отчёт] Научился: работать с классом XmlDocument, XmlNodeList, увидела работу парсинга Xml Сложности: сложностей не возникло! Комментарии: Это первый урок который сделала еще на вебинаре, однако решила еще раз просмотреть запись вспомнить что там делали! Очень хороший урок, мне понравился! И очень классно что все получилось! Спасибо Евгений за полезные знания! :) |
|||||
36 | Клиентский флот - Класс ServerInfo |
|
|||
На этом уроке мы займёмся рефакторингом - вынесем повторяющиеся действия в отдельные методы, уберём параметры метода RequestInfo(), запишем их во внутренние поля класса. Потом вынесем всё хозяйство для Info-запроса в отдельный класс ServerInfo. Оптимизируем ещё некоторые процедуры и уберём try-блоки в базовый класс. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 15 мин. [Показать отчёт] Научился: потренировалась магии рефакторинга кода, увидела как из многих подобных строчек создается один метод в пару строчек и все работает! Сложности: я бы до такого сама не дошла, очень интересно, еще сложно понять как это объединять и выделять! Комментарии: Очень классный урок! Спасибо Женя за такое преобразование в красоту! Хотя чем короче такой код тем сложнее его понимать, лично мне! Еще нехватке опыта! Мне очень нравится что у меня получилось и главное что все так же замечательно работает!!! |
|||||
37 | Клиентский флот - Класс ServerShip |
|
|||
На этом уроке мы создадим класс ServerShip для размещения кораблей. В нём будет вспомогательный метод ExtractShipCoords(), который матрицу кораблей сконвертирует в строчку GET данных для передачи их в РНР скрипт. Также будут некоторые сложности для получения этой матрицы в коде основной программы, нам придётся добавить новый метод в класс Ocean, изменить права доступа к матрице ships в классе Map. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: тестировать полученный код, чтобы везде корректно отображался, потренировалась еще раз в запросах MySQL, в написании функций PHP Сложности: сложно не было, много забыла что делали в начале а не корректно отображались данные, пришлось немного повторять и убирать свои ошибки! Комментарии: Ура! Похоже я справилась и уже все корректно показывает! Отличный урок! Спасибо за замечательный урок, где еще раз потренировалась!!! Все работает и меня это очень радует, теперь пойду дальше! :) |
|||||
38 | Клиентский флот - Класс ServerFire |
|
|||
На этом уроке мы создадим класс ServerFire. Мы научим нашу программу отправлять на сервер приказы о выстрелах! Правда, мы пока ещё не будем знать о результатах выстрела. Зато мы доработаем РНР функцию, чтобы она в XML возвращала координаты выстрелившего корабля, чтобы организовать правильную анимацию. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 00 мин. [Показать отчёт] Научился: потренировалась с запросами SQL, протеситировала запросы SQL Сложности: мне кажется что у меня как то не очень корректно происходят выстрелы, так и не поняла что именно не так, хотя на первый взгляд что все правильно, однако есть чувство что-то не так, не могу объяснить Просмотрела и проделала два раза, однако пока не знаю, отравляю так а там может будет дальше видно! Все что раньше делала уже и забыла, очень плохо делать перерывы, все забывается! Комментарии: Классно у же и стрелять можем! Я рада что дальше двигаюсь! Спасибо за шикарный урок! |
|||||
39 | Клиентский флот - Класс ServerGame |
|
|||
На этом уроке мы проработаем клиентский запрос "game" для получения списка транзакций всех участников игры. Мы создадим класс ServerGame, создадим структуру Actions, доработаем методы из базового класса и реализуем заполнение массива считанными с XML данными. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 20 мин. [Показать отчёт] Научился: потренировалась с перегруженными методами, создания структуры, узнала об оптимизации функции (понравился отличный пример с книжками), потренировалась парсить XML файл Сложности: забавно и интересно тестировать и находить ошибки!!! Комментарии: Очень круто, я прошла этот урок!!! УРАААА!!! Похоже все получилось, однако дальше покажет где и в чем я еще обшиблась!!! Класс, все работает, СПАСИБО Женя!!! Я в восторге!!!! :) |
|||||
40 | Одинокий капитан - Прицел |
|
|||
На этом уроке мы нарисуем новую пиктограмму для нашей игры - знак прицела. И пропишем его добавление в уже созданные классы. Это пиктограмма будет использоваться для отметки полей, по которым сделан выстрел, но пока ещё не известен результат. Отчёт отправил: 24. Олюшка Выполнено за 20 мин. [Показать отчёт] Научился: прокачалась с добавлением в ресурс, потренировалась рисовать в студии Сложности: все было легко и радостно, после пройденных серьезных уроков, это подготовка к финальному старту Комментарии: Двигаюсь дальше, впереди еще будет интересно! Спасибо за отличный урок, мне понравился он и жду с нетерпением уже следующий! :) |
|||||
41 | Одинокий капитан - Выстрелы |
|
|||
На этом уроке мы обработаем массив actions со списком полученных от сервера транзакций. Сделаем отображение результатов, для этого придётся исправить мелкие ошибки прошлого урока в классе Box: Create(EnumIcons icon) Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: хитро выискивать ошибки, тестировать программу Сложности: было интересно гонятся за ошибками, еще с прошлых уроков, хотя думаю еще они остались есть такое чувство, однако прицел отлично работает, я прямо заигралась с ним! Комментарии: Урок супер, я даже сразу прописала правильно функции еще на том уроке увидела! Спасибо за это чудо, уже видно работу выстрелов и это меня приводит в восторг!!! Я очень рада результату!!! :) |
|||||
42 | Одинокий капитан - Победа! |
|
|||
На этом уроке мы добавим на форму таймер и флаг состояния игры. После этого мы поиграем в одинокого капитана - будем стрелять по всем океанам без ответного огня. Отчёт отправил: 24. Олюшка Выполнено за 4 час. 00 мин. [Показать отчёт] Научился: вспомнила весь код, работе над старыми ошибками, повторила работу с таймером Сложности: сложном не было, урок очень простой, а вот провозилась и нашла свою давнюю ошибку, которая была у меня уже давно и мне все таки не казалось что не корректно у меня как то работает игра, это была моя описка, точнее зло копипаста!!! Я ее нашла!!!! УРА!!!! :) Комментарии: Все очень очень классно!!! Я сделала это, теперь я могу сама играть против трех полей, однако я не играла а жульничала, смотрела в БД :) Спасибо за отличный урок! Теперь меня ждет много нового и интересного впереди, выходим на финишную прямую!!! :) |
|||||
43 | Финишная миля. Перезагрузка. |
|
|||
На этом уроке мы добавим функцию перезапуска в РНР файл.
Отчёт отправил: 24. Олюшка Выполнено за 15 мин. [Показать отчёт] Научился: попрактиковалась еще с написанием PHP Сложности: все классно и уже легко и понятно!!! :) Комментарии: Отличное продолжение! Классно еще все лучше и лучше!!! СПАСИБО Женя за урок! :) |
|||||
44 | Финишная миля. Мой океан. |
|
|||
На этом уроке мы добавим две важные функции в наш проект. 1. Определение номера свободного океана при запуске. 2. Случайное размещение кораблей на выбранном океане. Отчёт отправил: 24. Олюшка Выполнено за 2 час. 30 мин. [Показать отчёт] Научился: рефакторить код и еще очень многому Сложности: очень серьезный урок, хотя у меня все получилось сразу и как бы все понятно даже что мы делали Комментарии: Урок очень мощный получился, мне понравился очень итог, пусть есть еще глюки, однако это уже намного-намного лучше что было и видно уже финал!!! Спасибо за урок Женя! Ты, Молодец! :) |
|||||
45 | Финишная миля. Найти победителя |
|
|||
На этом уроке мы наконец-таки немножко поиграем :) Потом сделаем определение победителя. Из-за чего в конец запутаемся в коде класса Form1. Примем решение на следующем уроке переписать его. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: еще лучше понимание и работы с php, тестирование программы Сложности: немного долго было сделать красивый победный скиншот, т.к. сообщений было очень много о победе Комментарии: Класс, это чудо, все отображается и пусть есть глюк, зато уже видно работу!!! Я рада результатом мои! И у меня получился скришот красивый! :) СПАСИБО за отличный урок! :) |
|||||
46 | Свежий взгляд. Схема проекта. |
|
|||
На этом уроке мы опять начнём всё сызнова. Рассмотрим шесть основных состояний нашей программы. Создадим новый проект и настроим его. Отчёт отправил: 24. Олюшка Выполнено за 30 мин. [Показать отчёт] Научился: прокачала работу с формой и ее элементами Сложности: сложно, точнее не знаю как редактировать текст чтобы он лег вверх, если кто знает подскажите где и как это можно сделать, попробовала разные способы однако то что мне нужно не нашла Комментарии: Классный урок! Все ближе приближение к финишу! :) Очень рада что начали с начала, стало намного понятней, СПАСИБО! :) |
|||||
47 | Свежий взгляд. Управление из таймера. |
|
|||
На этом уроке мы заложим фундамент нашей программы - шесть методов do*() и вызов их из таймера. Отчёт отправил: 24. Олюшка Выполнено за 20 мин. [Показать отчёт] Научился: пониманию что лучше разбивать законченные отдельные действия на функции, еще раз потренировалась с enum Сложности: все очень понятно и действительно очень классно создавать заново уже как бы созданный проект, действительно приходит понимание что к чему! :) Комментарии: Шикарный урок, уже все понятно!!! Благодарю Женя за такое наглядное и понятное объяснение, а так же за демонстрацию создания сложных больших проектов!!! :) |
|||||
48 | Свежий взгляд. Ожидание запуска. |
|
|||
На этом уроке мы напишем метод showMessage() для отображения сообщений игры. Далее, мы добавим в наш проект уже написанные классы Server* и Map. Также разместим кнопку Start для запуска игры. Отчёт отправил: 24. Олюшка Выполнено за 30 мин. [Показать отчёт] Научился: прокачала добавления классов из других проектов Сложности: странно, не получилось сделать кнопку прозрачной, из-за того что картинку мы добавляем динамически в коде, пришлось немного повозится с ней Комментарии: Отличный урок! Спасибо!!! Идем дальше, уже все ближе к финалу!!! :) |
|||||
49 | Свежий взгляд. Размещение кораблей. |
|
|||
На этом уроке мы напишем метод doShip() для размещения кораблей. Для этого нам потребуется добавить уже написанные классы Box и Ocean. Также придётся немного поменять функцию создания и размещения кораблей. Отчёт отправил: 24. Олюшка Выполнено за 45 мин. [Показать отчёт] Научился: прокачала добавления классов из другого проекта, повторила и вспомнила работу созданных ранее классов Сложности: все очень доступно и понятно, благодаря Жене с его шикарным объяснением! Комментарии: Отлично у меня все получилось и здорово работает!!! Класс!!! Впереди самое интересное - завершение!!! УРААААА!!! :) Урок замечательный!!! Женя Спасибо тебе!!! Еще бесконечное множество "+" за этот увлекательный и уникальный курс!!!❤️ |
|||||
50 | Свежий взгляд. Завершение проекта. |
|
|||
На этом уроке МЫ ЗАКОНЧИМ создание программы. Напишем обработку состояний play и stop. Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: потренировалась еще с делегатами, запрос mySQL, получила еще больше практики! Сложности: сложностей не возникло, все очень хорошо было изложено в уроке!!! Комментарии: УРА!!! Работает!!! Это круто!!! Очень!!! Я в восторге, вот и свершилось чудо, готовая игра!!! А с ней за плечами море опыта и знаний!!! Спасибо Женя за такой СУПЕР курс, наверное самый потрясающий на сегодня, один из лучших, ведь он интересный, очень увлекательный и очень полезный ведь в нем собрано море разных необходимых знаний и понятий! Я это сделала!!! УРА!!! ❤️ |
|||||
51 | ФИНАЛЬНЫЙ УРОК. |
|
|||
На этом уроке мы поиграем по сети с участниками вебинара. Твоя задача - записать видеообзор созданного проекта. Какой курс ты будешь проходить следующим? Отчёт отправил: 24. Олюшка Выполнено за 1 час. 00 мин. [Показать отчёт] Научился: тестировать свою программу, записывать видеообзор Сложности: не вериться что это уже все, я уже с роднилась с этим классным куром! Комментарии: УРА!!! УРА и еще раз УРА!!! Я сделала самую суперскую игру!!! Какая же я Умничка!!! Спасибо Женя за этот шикарный курс, пусть кто-то скажет что он и затянут и может быть кому-нибудь не понравятся то что мы переделывали, начинали несколько раз все с нуля, однако мне это все безумно понравилось и только благодаря этому мне все понятно как создается проект, как пишется программа, для меня это очень важно и ценно!!! Я получила отличный опыт и практику, море новых знаний и сейчас уже намного увереннее себя чувствую в программировании, мое количество уже переросло в качество и это меня делает очень счастливой, это стоит того!!! ❤️ Видеообзор: https://youtu.be/hEDdjHnTVMQ |
|||||
Итого: 51 видеоурок |
19 час. 44 мин. |
9 чел. | |||
Финалисты: Андрей Поляков, Елена, Юрий, Олюшка, Иван, Tekashnik, Дмитрий, Ильшат, Николай Денисов . |