 
				| # | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ | 
|---|---|---|---|---|---|
| 1 |  Новогодний Марафон - Вариант участия |  | |||
| С Новым годом! Выберите желаемый способ участия в Новогодем марафоне. Отчёт отправил: 20167. Айдар Выполнено за 5 час. 21 мин. [Показать отчёт] Научился: Вариант 2, создание Робота Шарпа. Опыт пока есть только по С#, по крайней мере 1й день пройти смогу, ;) дальше буду читать минимальную теорию перед занятием. | |||||
| 2 | Консольный Робот Шарп |  | |||
| На этом вебинаре мы разобрали принцип работы Робота Шарпа и почти написали сервис по компиляции и запуску программ. Отчёт отправил: 20167. Айдар Выполнено за 2 час. 29 мин. [Показать отчёт] Научился: Программа работает! Удалось реализовать её полностью, включая вызов Роботов для Java и C#, компиляцию и выполнение тестов. Благодаря описанному методу command запуск компилятора и программы не составил труда. Для RobotJava взял критерий для Compile() размер файла compile.out, при успешной компиляции, он должен быть нулевым. Для RobotSharp, аналогичный критерий, что не должно быть в файле слова "error". Сложности: Не разобрался как для компилируемых C# программ обрабатывать исключения System.Overflow.Exception | |||||
| 3 | Компиляция и запуск | 2 теста | |||
| На этом уроке мы ещё раз вручную выполним компиляцию и запуск программ. Именно это будет делать наш Робот Шарп. Отчёт отправил: 20167. Айдар Выполнено за 7 час. 19 мин. [Показать отчёт] Научился: Повторил путь создания ядра робота. Всё работает! | |||||
| 4 | Запуск процесса |  | |||
| На этом вебинаре мы начнём создавать ядро робота на языке C#. Выполним компиляцию и запуск программно. Отчёт отправил: 20167. Айдар Выполнено за 11 час. 35 мин. [Показать отчёт] Научился: Задание выполнено, уже пару дней тому назад. Движемся дальше. :) | |||||
| 5 | Дружба роботов: Шарп + Ява | 1 тест | |||
| Дружба роботов: Шарп + Ява Отчёт отправил: 20167. Айдар Выполнено за 50 мин. [Показать отчёт] Научился: Добавил дополнительную интерактивность, которая была в первоначальной версии программы: ожидание папки ("."), сообщения о получении папки, о результате компиляции, и о выполнении тестов. Пока так и не смог устранить сообщение об ошибке System.OverflowException, которую выдаёт windows. | |||||
| 6 | Конвейер для задач |  | |||
| На этом уроке мы сделаем конвеер для задач, создадим отдельные папки wait, work, done, по которым папка с задачей будет перемещаться. Отчёт отправил: 20167. Айдар Выполнено за 33 мин. [Показать отчёт] Научился: Функционал реализован, движемся дальше. | |||||
| 7 | Планирование базы данных |  | |||
| Начинаем планирование базы данных. Отчёт отправил: 20167. Айдар Выполнено за 22 час. 59 мин. [Показать отчёт] Научился: Спланировал БД, нарисовал схему. test.out в таблице test - правильный ответ, как я понял из вебинара, берётся на основе решения Робота Шарпа - специального служебного пользователя. | |||||
| 8 | Создание таблиц | 1 тест | |||
| Создаём таблицы в MySQL. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 18 мин. [Показать отчёт] Научился: Таблицы созданы. Добавил также таблицу lang и сделал к ней доп. связь для таблицы prog. Наполнением таблиц пока не занимался. | |||||
| 9 | Первые записи в таблицах |  | |||
| Добавляем первые записи для последующего тестирования. Нужно добавить две задачи и два теста для каждой. Добавить одно решение. Отчёт отправил: 20167. Айдар Выполнено за 29 мин. [Показать отчёт] Научился: Добавил данные в таблицу. Движемся дальше :) | |||||
| 10 | Запросы для PHP-функций | 3 теста | |||
| Формулируем список нужных нам РНР-функций. Пишем SQL запросы для каждой функции. Отчёт отправил: 20167. Айдар Выполнено за 1 день 6 час. 22 мин. [Показать отчёт] Научился: Модифицировал таблицу prog и добавил таблицу lang. Составил список PHP функций с соответствующими SQL-запросами. | |||||
| 11 | Клиентская часть - HTML | 1 тест | |||
| На этом вебинаре Валера рассказал и показал, как создать FrontEnd на HTML + Bootstrap. Мы создадим три страницы: list, task, prog. Отчёт отправил: 20167. Айдар Выполнено за 2 час. 54 мин. [Показать отчёт] Научился: Осваиваем технологии bootstrap, css и инструменты brackets с emmet. Созданы 3 html страницы для будущего отображения пользовательского интерфейса - list, task, prog. | |||||
| 12 | Загрузка в HTML через AJAX |  | |||
| Написать JavaScript для загрузки данных в HTML. Отчёт отправил: 20167. Айдар Выполнено за 12 час. 12 мин. [Показать отчёт] Научился: Реализовали функционал для загрузки данных в HTML из внешнего файла PHP. Сложности: Довольно сложно просто повторять действия, не понимая сути. Не хватает теоретической базы по HTML, CSS, JS, и т. д. | |||||
| 13 | Причёсывание скрипта со списком задач | 1 тест | |||
| На этом уроке мы сделаем обзор написанного на прошлом уроке и доработаем скрипт, чтобы всё было красиво. Отчёт отправил: 20167. Айдар Выполнено за 35 мин. [Показать отчёт] Научился: Оптимизировали файл list.html, скрипты из него вынесли в отдельный файл list.js, теперь всё выглядит более структурировано и понятно. | |||||
| 14 | Загрузка данных на страницу с условием задачи. |  | |||
| На этом уроке мы загрузим данные на страницу с условием задачи. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 24 мин. [Показать отчёт] Научился: Реализован функционал загрузки данных для task.html из php-файла. Я добавил также в функцию setTaskInfo изменение данных task_id и title в заголовке страницы. Названия переменных я выбрал htmlOutput и titleOutput. Передачу task_id видимо необходимо реализовывать при помощи адресной строки. | |||||
| 15 | Получение параметра из адресной строки через JS |  | |||
| На этом уроке мы считаем аргумент из адресной строки. Отчёт отправил: 20167. Айдар Выполнено за 24 мин. [Показать отчёт] Научился: Добавили функционал передачи и считывания параметра task_id посредством адресной строки | |||||
| 16 | Установка заголовка |  | |||
| На этом уроке мы сделаем установку заголовка страницы через JavaScript. Отчёт отправил: 20167. Айдар Выполнено за 15 мин. [Показать отчёт] Научился: Данный функционал я реализовал раньше, на уроке "Загрузка данных на страницу с условием задачи", правда я использовал titlePattern = $('title').html(); Перепроверил - так тоже работает. :) | |||||
| 17 | Страница решения задачи - подготовка |  | |||
| На этом уроке мы подготовим код страницы prog.html для загрузки в неё данных через AJAX вызовы. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 9 мин. [Показать отчёт] Научился: Подготовил файл prog.html для динамической работы. создал файл getUserProgram.php с кодом программы. Сложности: Аутентификацию возможно производить на отдельной странице, но как технически это реализуется, пока затрудняюсь сказать. :( | |||||
| 18 | Загрузка программы |  | |||
| На этом уроке мы загрузим текст программы и другую информацию на страницу с решением задачи. Отчёт отправил: 20167. Айдар Выполнено за 2 час. 13 мин. [Показать отчёт] Научился: Реализовал динамическую загрузку страницы prog.html. В целом дебагинг Ajax проводить сложнее чем в VS, не хватает инструментов, но разобраться можно, сложность средняя :) Сложности: Довольно долго провозился с загрузкой программы, оказалось, что в файле getUserProgram.php присутствовали табуляции, которые некорректно считывались, заменил их на /t и всё заработало. | |||||
| 19 | Отказ от AJAX |  | |||
| Мы сделали шаг назад ... 12-18 уроки курса теперь носят факультативный характер, их выполнять не обязательно :) И теперь делаем два шага вперёд. Реализуем всё то же самое на РНР и Smarty. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 11 мин. [Показать отчёт] Научился: В поиске оптимального решения можно переделывать программу с самого начала не один и не два раза. Я новичок в данных технологиях, но возникает ощущение какой-то громоздкости решения на ajax, не могу не согласиться с Евгением. Будет интересно посмотреть альтернативное решение c использованием PHP и Smarty. | |||||
| 20 | Два веб-сервера |  | |||
| На этом уроке мы приступим к переделыванию robot-web части. Отчёт отправил: 20167. Айдар Выполнено за 56 мин. [Показать отчёт] Научился: PHPStorm установлен, проект подготовлен, всё готово к работе. Сложности: Доп. задание выполнить не удалось. | |||||
| 21 | Список задач на PHP |  | |||
| У нас создано "два сайта" на одном веб-сервере На этом урокемы загрузим и отобразим список задач, используя РНР. Отчёт отправил: 20167. Айдар Выполнено за 38 мин. [Показать отчёт] Научился: Файл list.php доработан, список задач загружается. Движемся дальше ) | |||||
| 22 | Шаблонизатор Smarty |  | |||
| На этом уроке мы скачаем и разместим шаблонизатор Smarty. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 22 мин. [Показать отчёт] Научился: Перенесли HTML-содержимое list.php в шаблон list.tpl и отобразили его через Smarty Сложности: После переноса на Smarty возникли проблемы с кодировкой. Оказалось необходимо установить кодировку файла .tpl. Спасибо Евгению за оперативную помощь! | |||||
| 23 | Вызов API-функций из PHP |  | |||
| На этом уроке мы вынесем функционал api-запросов в отдельный файл. Отчёт отправил: 20167. Айдар Выполнено за 1 час. 33 мин. [Показать отчёт] Научился: Сделали универсальный скрипт call.php для вызова API-функций, list.php теперь обращается к нему. Начал переделывать task.php подобно list.php, постараюсь сделать самостоятельно (сходу сделать не получилось, буду пытаться дальше). | |||||
| 24 | Шаблонизация task.php |  | |||
| На этом уроке мы задействуем шаблонизатор для файла task.php Отчёт отправил: 20167. Айдар Выполнено за 1 час. 14 мин. [Показать отчёт] Научился: Часть отображения task.php через шаблон удалось реализовать самостоятельно, кроме передачи параметра taskId и отображения langText. | |||||
| 25 | Шаблонизация prog.php |  | |||
| На этом уроке мы задействуем шаблонизатор для файла prog.php Отчёт отправил: 20167. Айдар Выполнено за 51 мин. [Показать отчёт] Научился: Почти всё удалось реализовать самостоятельно. С PHP и Smartey программа выглядит гораздо логичнее. | |||||
| 26 | Схема Базы Данных 2.0 |  | |||
| На этом уроке мы заново создадим базу данных, чтобы было красиво. Отчёт отправил: 20167. Айдар Выполнено за 38 мин. [Показать отчёт] Научился: Повторил создание схемы БД в MS Access, чуть позже займусь непосредственно самой базой. | |||||
| Итого: 26 видеоуроков | 13 час. 48 мин. 9 тестов | 5 чел. | |||
| Финалисты: Айдар, Yefim, Михаил Екимов, Rita, Tom . | |||||