Дата | Видеоурок | Результат | |
---|---|---|---|
Yii2 UserJoinForm - Модель для формы | + 6 | ||
Создал модель для формы регистрации пользователя, добавил поля ввода в представление join.php |
|||
Дневник успеха 2019-09-29 : Клади картошку в окрошку, а любовь в дело. | + 7 | ||
За эту неделю: + Я проверил 30 отчётов у 13 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 6 текстов: + Я решил 12 задач: + Я выполнил 10 видеоуроков: − Я не собрал ни одного Мегахеша :o( пропустил один день( |
|||
Yii2 Logout - Выход из лабиринта | + 5 | ||
Реализовал возможность выхода с сайта |
|||
Yii2 UserIdentity - Посторонним В | + 9 | ||
Создал модель UserIdentity, реализовал 2 метода в новой, изменил actionLogin(). |
|||
Yii2 Faker - Тысяча фантазёров! | + 10 | ||
Добавил библиотеку Faker |
|||
Yii2 UserRecord - Очень активная модель | + 11 | ||
Добавил первого тестового пользователя |
|||
Yii2 DBase - Подключение к Матрице | + 9 | ||
Запустил миграцию в консоли |
|||
Yii2 Migration - Архитектура таблицы | + 12 | ||
Создал первую миграцию |
|||
Yii2 Console - Есть ли жизнь в Консоли? | + 12 | ||
Создал консольное приложение |
|||
Yii2 Steps - Пошаговая инструкция | + 11 | ||
Реализовал функции для корректной работы тестов |
|||
Yii2 Tests - Обоснование необходимости | + 11 | ||
Создал приемочный тест |
|||
Yii2 Model - Модели на подиуме | + 12 | ||
Нарисовал схему развития приложения |
|||
Yii2 Panel - Красивые анкеты | + 11 | ||
Оформил странички регистрации и авторизации при помощи набора инструментов bootstrap |
|||
Yii2 User - Помещение регистратуры | + 10 | ||
Вынес функции join/login в отдельный контроллер |
|||
Yii2 Debug - Следы на песке | + 7 | ||
Застрял на этом уроке на неделю почти - панель не загружалась. Дебажил дебаг, в итоге помог откат на версию 2.1.5 23 июля в версии 2.1.6 введено такое изменение - Enh #390: Use opis/closure to serialize data (Sarke) У меня это приводит к ошибке Call to undefined function Opis\Closure\serialize() in :66 line LogTarget.php Посмотрю, что ответят разработчики. |
|||
Дневник успеха 2019-09-22 : Держись плуга плотней, будет прибыльней. | + 9 | ||
За эту неделю: + Я проверил 35 отчётов у 16 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов: + Я решил 14 задач: − Я не выполнил ни одного видеоурока :o( − Я не собрал ни одного Мегахеша :o( Застрял на уроке Yii2 / Debug - Следы на песке. Не грузится панель. Разбираюсь. |
|||
Дневник успеха 2019-09-15 : Не говори, что делал, а говори, что сделал. | + 7 | ||
За эту неделю: + Я проверил 35 отчётов у 14 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 6 текстов. + Я решил 14 задач. + Я выполнил 3 видеоурока. − Я не собрал ни одного Мегахеша :o( |
|||
Yii2 Join/login - Полёт Навигатора | + 11 | ||
Добавил недостающие представления для странички регистрации и авторизации |
|||
Yii2 Menu - Богатый выбор | + 9 | ||
Добавил пункты меню в навигационную панель |
|||
Yii2 Bootstrap - Пусть будет красиво! | + 8 | ||
Подключил набор инструментов bootstrap |
|||
Дневник успеха 2019-09-08 : Ленивому всегда праздник. | + 7 | ||
За эту неделю: + Я проверил 35 отчётов у 14 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 4 текста: + Я решил 14 задач: + Я выполнил 7 видеоуроков: − Я не собрал ни одного Мегахеша :o( |
|||
Yii2 Codeception - Пошаговое тестирование | + 7 | ||
Установил систему тестирования |
|||
Yii2 Views - Представления начинаются | + 7 | ||
Создал views-site-index и layouts-main |
|||
Yii2 Controller - Точка входа программиста | + 7 | ||
Создал SiteController.php |
|||
Yii2 Composer - Установка пустоты | + 5 | ||
Смирился с наличием ошибки 404 PHPStorm предложил окружить try catch: try { (new yii\web\Application($config))->run(); } catch (\yii\base\InvalidConfigException $e) { } Проигнорировал предупреждение. |
|||
Yii2 Git - Все ходы записываются | + 5 | ||
Закоммитил через phpStorm |
|||
Yii2 Web - Первый кирпич сайта | + 6 | ||
Запускать сервер через php -S localhost:31415 -t web |
|||
Yii2 Soft - Вступление и подготовка | + 6 | ||
Скачал и установил OpenServer Ultimate. Для скорости задонатил 300 руб и получил по акции хостинг. PHP Storm, Git уже были, регистрация на GitHub была. |
|||
Дневник успеха 2019-09-01 : Дело мастера боится. | + 4 | ||
За эту неделю: + Я проверил 34 отчёта у 15 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 6 текстов: + Я решил 14 задач: + Я выполнил 6 видеоуроков: − Я не собрал ни одного Мегахеша :o( В целом неплохо, но надо увеличивать объем работы, находить время. |
|||
Система Git git push clone | + 7 | ||
Склонировал проект через GitHub |
|||
Система Git git ignore | + 6 | ||
Научился создавать файл .gitignore |
|||
Система Git git commit zebra | + 10 | ||
Научился команде git commit -a -m Zebra |
|||
Система Git git commit reset diff | + 8 | ||
Изучил команды diff, commit, log, reset |
|||
Интернет-магазин ФИНАЛЬНЫЙ УРОК | + 6 | ||
Фотокурсы хороши отсутствием необходимости задействовать уши, мобильность прохождения таких курсов высока. Изучил много функций PHP, подключение к базе данных, реализацию запросов в форме. Курс прошел фактически два раза, так как пришлось рестартовать. Спасибо. |
|||
Интернет-магазин Запись имени файла в базу | + 5 | ||
Записывать имя файла фотографии в базу данных. |
|||
Интернет-магазин Сохранение файла | + 11 | ||
Создал проверку на тип файла. Поместил имя файла в $filename. Полученный файл переместился в images. |
|||
Интернет-магазин Отправка файла | + 9 | ||
Добавил атрибут enctype. Добавил проверку на наличие файла. Проверил работу и лицезрел информацию. Посмотрел, что происходит во временной папке. Временный файл удалился не через 30 секунд, а менее чем через секунду. |
|||
Интернет-магазин Интерактивный список | + 8 | ||
Добавил ссылку для добавления нового товара + ссылку на номере товара для редактирования. Не сделал удаление товара. |
|||
Дневник успеха 2019-08-25 : С горы и сани бегут, а на гору и воз не идет. | + 6 | ||
За эту неделю: + Я проверил 38 отчётов у 10 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов: + Я решил 12 задач: + Я выполнил 3 видеоурока: 1 => «Интернет-магазин / Значения по умолчанию» за 1 день 4 час. 32 мин. 2 => «Интернет-магазин / Нет картинки» за 8 мин. 3 => «Интернет-магазин / Редирект на список» за 1 час. 22 мин. − Я не собрал ни одного Мегахеша :o( Продолжим) Перепрохожу некоторые ранее пройденные уроки, поэтому недельный выхлоп маленький. |
|||
Интернет-магазин Редирект на список | + 6 | ||
Сделал переадресацию двумя способами. На странице с товарами переадресовал обратно в редактирование. |
|||
Интернет-магазин Нет картинки | + 5 | ||
Добавил картинку no photo. |
|||
Интернет-магазин Значения по умолчанию | + 5 | ||
Добавление блока else исправило ошибки открытия edit.php без параметров. Убирать отображение битой картинки. |
|||
Дневник успеха 2019-04-21 : Сей хлеб — не спи: будешь жать — некогда будет дремать. | + 8 | ||
За эту неделю: + Я проверил 35 отчётов у 18 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 5 текстов: + Я решил 8 задач: + Я выполнил 12 видеоуроков: 1 => «Tinklavimas / Контрольная работа» за 21 мин. 2 => «J7. Экзамен / EGZ - Шаблон решения» за 20 мин. 3 => «J7. Экзамен / EGZ - Зачётная задача - Максима» за 40 мин. 4 => «Теория ООП / Инкапсуляция мечты» за 4 час. 57 мин. 5 => «JA. Классные пакеты / CLASS - VIP - Крутятся пластинки» за 3 час. 55 мин. 6 => «JA. Классные пакеты / CLASS2 - Человекостудент» за 27 мин. 7 => «JA. Классные пакеты / CLASS2 - Европейская Прибалтика» за 1 час. 52 мин. 8 => «JA. Классные пакеты / CLASS2 - Напиток Наследника» за 4 час. 1 мин. 9 => «JA. Классные пакеты / CLASS2 - Песец Членистоногий» за 4 час. 21 мин. 10 => «Клиент-серверный сокет / Правильный заголовок» за 49 мин. 11 => «Судоку / Вступление» за 8 мин. 12 => «Судоку / Сетка для цифр» за 43 мин. + Я собрал 28 Мегахешей. Пытаюсь вернуться на проект, неделя пока нормально ) Сдедующая тоже думаю будет ОК, а там посмотрим. |
|||
Судоку Сетка для цифр | + 8 | ||
Создал класс Sudoku, нарисовал сетку в тексте, написал метод PrintFrame() |
|||
Клиент-серверный сокет Правильный заголовок | + 15 | ||
Научился формировать заголовок. Проверил в Fireox, Chrome, IE, Edge Почитал про заголовки, узнал их классификацию. |
|||
J7. Экзамен EGZ - Зачётная задача - Максима | + 16 | ||
Решил задачу и проверил с аргументами и без них |
|||
J7. Экзамен EGZ - Шаблон решения | + 13 | ||
Допустил ошибки: 1. Переменные нужно описать в начале программы. ? Вообще не вводил переменные, соотвественно, описывать их не пришлось. 2. Ввод данных разделён на две части - OK 3. Получаем начальные данные из строкового массива args. - OK 4. Получаем начальные данные с клавиатуры. -OK 5. Выводим на экран полученные данные. - KO - не вывел начальные данные 6. Выполняем вычисление по условию задачи. - OK 7. Выводим результат на экран. - OK 8. Не добавил глобальный блок try - catch для отлова системных ошибок. - KO |
|||
JA. Классные пакеты CLASS2 - Песец Членистоногий | + 13 | ||
Создал 39 классов на русском, в том числе 30 абстрактных. Создал 9 животных. Не сумел построить дерево классов. |
|||
JA. Классные пакеты CLASS2 - Напиток Наследника | + 11 | ||
Потренировался с наследованием в классах, сделал часть классов абстрактными, добавил метод для остальных. Создал экземпляры и отобразил их, нарисовал диаграмму наследования. |
|||
Теория ООП Инкапсуляция мечты | + 10 | ||
Инкапсуляция - это когда на море-океане есть остров, на том острове дуб стоит, под дубом сундук зарыт, в сундуке — заяц, в зайце — утка, в утке — яйцо, в яйце — игла, — смерть Кощея, но сказочный дурак-герой находит метод и интерфейс для победы над злодеем. |
|||
JA. Классные пакеты CLASS2 - Европейская Прибалтика | + 15 | ||
Не очень четкая формулировка задания привела к повторению изученного материала и изучению ответов других учеников. Полезно. |
|||
Судоку Вступление | + 8 | ||
Разобрался с правилами игры, решил на легком уровне. |
|||
JA. Классные пакеты CLASS2 - Человекостудент | + 8 | ||
Убрал cyclic inheritance, исключив наследование для класса Human. Чтобы классы заработали внутри класса Program, добавил им static context. |
|||
JA. Классные пакеты CLASS - VIP - Крутятся пластинки | + 8 | ||
Скачал пару музыкальных файлов с freesound.org (freewavesamples.com был недоступен). Проверил работу программы со скачанными файлами. Не все файлы проигрывались. Какие-то не пошли(предположительно с bitdepth 24 bit). |
|||
Tinklavimas Контрольная работа | + 8 | ||
Кубика не было, взял число с random.org 3 Browser - компьютерная программа, предназначенная отображать документы на языке разметки HTML, как правило, на сайтах сети интернет или локальной сети. Web-page - документ (как правило текстовый в формате HTML), открываемый в сети интернет в браузере, имеющий определенный адрес и являющийся, как правило, частью вебсайта. HTTP - правило передачи данных, по которому можно просматривать веб-страницы в интернете в браузере. SSL - специальный протокол для передачи данных по HTTP в защищенном виде. VDS/VPS - технология хостинга, позволяющая на одном физическом сервере запускать несколько изолированных виртуальных машин. |
|||
JA. Классные пакеты CLASS - Зачётная задача № 2 | + 13 | ||
Создал класс FractionRW, унаследовал его от Fraction. Создал два конструктора - один с параметрами, значения присвоены в p.s.v.m.; второй - без параметров, ввод с клавиатуры. Создал методы read(), write(). Дописал программу прошлого урока с новым классом. |
|||
JA. Классные пакеты CLASS - Зачётная задача № 1 | + 9 | ||
Научился создавать класс дробей с полями, конструктором, методами. Добавил метод упрощения дробей, находя рекурсией НОД числителя и знаменателя. Проверил, сравнив с результатами предыдущего урока. |
|||
JA. Классные пакеты CLASS - Подготовка к зачёту - Вспомним дроби | + 13 | ||
Прорешал примеры. Поля для класса Fraction: числитель и знаменатель Методы класса Fraction: печать дроби с выделением целого для неправильных дробей, сокращение, сложение, вычитание, умножение, деление. |
|||
JA. Классные пакеты CLASS - Модификаторы доступа | + 13 | ||
Блестящая аналогия использована в уроке, сразу все становится понятным. - private члены класса доступны только внутри класса ; - package-private или default (по умолчанию) члены класса видны внутри пакета; - protected члены класса доступны внутри пакета и в классах-наследниках; - public члены класса доступны всем. |
|||
JA. Классные пакеты CLASS - Общий голос | + 11 | ||
Фактически повторил предыдущий урок, закрепил реализацию функции через суперкласс. |
|||
JA. Классные пакеты CLASS - Три заветных слова | + 10 | ||
Создал два класса и запустил программу. Создал базовый абстрактный класс и запустил программу. Добавил модификатор static ко всем трем классам, иначе ошибка. Добавил печать имени животного. Наследование - это когда новый класс использует все компоненты базового (родительского) класса, но при этом может изменять и дополнять их. Жучка - это цензурная сучка. |
|||
Начало здесь День №8. Подведение итогов и составление Планов. | + 15 | ||
Набрал 26 пунктов за день. Пропустил два еженедельных отчета, что является катастрофой. Этого делать нельзя совершенно. Увы, с нового года изменился ритм жизни, но все равно еще поборемся за регулярность и последовательность. Ссылка на последний выполненный еженедельный отчет: https://www.videosharp.info/18783/checking/power=2405. |
|||
JB. Шахматные классы CHESS - Шахматный конструктор | + 13 | ||
Создал все конструкторы, все чёрные и белые фигуры. Пошагово выполнил. |
|||
Начало здесь День №7. Регулярный и Последовательный подход. | + 8 | ||
Выполнил все виды активности на ресурсе. Набрал 43 байта из 55 возможных. Потери: комментарии 1/5 - тут все понятно. задачи 5/10 - семантика и алгоритмика прорешены, а за другие разделы байты не дают. учись каждый день 2/5 - вот где резерв, регулярность и последовательность просто должны стать нормой жизни. |
|||
JB. Шахматные классы CHESS - Чудеса Абстракционизма | + 4 | ||
Сделал метод Move() пешки абстрактным. Это привело к необходимости объявить сам класс пешки абстрактным. Создал по классу для белой и черной пешек. Для каждого потребовалось создать метод Move() с телом. Добавил в список по пешке. |
|||
JB. Шахматные классы CHESS - Перебор фигур | + 7 | ||
Создал экземпляр для каждой фигуры и подвигал каждую фигуру сначала по отдельности, затем с помощью списка и в цикле. Порадовался чудесам. |
|||
JA. Классные пакеты CLASS - Звериное наследство | + 9 | ||
Создал класс Animal с полем string name, создал классы Cat и Dog наследниками класса Animal, создал один тест. Добавить свой тест |
|||
Начало здесь День №6. Обучательное тестирование | + 6 | ||
Написал тест к уроку java-chess Фигурное катание. https://www.videosharp.info/video/quiz/nr=1216 |
|||
Начало здесь День №5. Создание игровых и прикладных Программ. | + 6 | ||
Проверил 5 отчетов, написал комментарий, набрал текст, решил задачу, продолжил видеокурс Java - Шахматные классы, проработал урок 3 Фигурное катание https://www.videosharp.info/18783/checking/java-chess=1216 Набрал 26 баллов. Прогулял день, получил штраф к бонусу "Учись каждый день" - всего один балл получен. |
|||
JB. Шахматные классы CHESS - Фигурное катание | + 7 | ||
Создал класс Figure, переместил в него общие поля - две координаты и цена, создал в нём абстрактный метод move(). Создал абстрактный класс Figure. Унаследовал каждую шахмату от фигуры. |
|||
Дневник успеха 2019-01-27 : Хочешь жить - умей вертеться! | + 11 | ||
За эту неделю: + Я проверил 35 отчётов у 20 формулистов. + Я написал 3 сообщения 3 формулистам общим объёмом 2 килобуквы + Я набрал 5 текстов: + Я решил две задачи + Я выполнил 7 видеоуроков: + Я собрал 12 Мегахешей. План такой - вернуть микропривычку на этой неделе. |
|||
Начало здесь День №4. Развитие Алгоритмического мышления. | + 6 | ||
Проверил 5 отчетов, написал комментарий, набрал текст, решил задачу дня. Пока что 22 балла. |
|||
Начало здесь День №3. Безошибочное владение Клавиатурой. | + 13 | ||
Проверил 5 отчетов, написал большой комментарий. Набрал неспешно текст. 525 символов, 99 сим/мин, 319 секунд, ошибок 0 Три числа 1 99 5 Ну и лайфхак для этого задания, если ошибся - жми F5. ) |
|||
JA. Классные пакеты CLASS - Зоопарк | + 18 | ||
Создал несколько классов со зверями, птицами и рыбами. Разместил их в иерархии пакетов. Создал несколько объектов классов. Придумал, как говорит и поет каждая. Организовал из них вокально-инструментальный ансамбль "Друзья". Попросил исполнить одну известную песню. Солисты - орёл и коршун. Пересобрал все в командной строке, использовал команды: javac -encoding UTF-8 Friends.java jar cfe Friends.jar Friends *.class Animal/*.class Fish/*.class Bird/Poultry/*.class Bird/Prey/*.class Съархивировал все классы в архив и запустил с флешки в Linux: java -jar Friends.jar Не прошло из-за версий (линукс старее, был OpenJDK). Поставил Oracle Java, прописал переменные среды, заработало. Проверил обратно, скомпилировал в Линуксе, запустил в вин10, ок. Итог - ок. Из трудностей встретилось: при компиляции в Win8 пришлось указать параметр javac -encoding UTF-8, иначе ошибка. в команде jar cfe указывать имена ПАПОК важно с точным регистром, например, Bird/Poultry/*.class, иначе ошибка. Всё порешалось. Урок открывал три раза, времени не было выполнить) |
|||
Начало здесь День №2. Общение с Единомышленниками. | + 11 | ||
Проверил несколько отчетов. Написал комментарий к отчету: https://www.videosharp.info/17947/checking/java-start=369 Если возникнут сложности, куда обратиться: 1) гугл; 2) телеграм-канал видеошарпа; 3) попросить в комментах к уроку помощи. |
|||
JB. Шахматные классы CHESS - Координаты фигур | + 14 | ||
Добавил в каждый класс по две координаты, ценность и пустой метод. Ожидаем создание класса Фигура с координатами и ценностью и наследования из него созданными классами. Я бы оценил слона и коня в 3,5 пешки. |
|||
JB. Шахматные классы CHESS - Классные фигуры | + 15 | ||
Создал 6 пустых классов шахматных фигур. Возможные поля для них: цвет фигуры; координаты фигуры; ходила ли фигура (для ладьи и короля - для рокировки); ценность фигуры в пешках (для ИИ). Методы для фигур: возможен ли ход на конкретную координату, ход фигуры (смена координаты). Все понятно. |
|||
Начало здесь День №1. Создание микро-Привычки. | + 16 | ||
Заново создаю микро-привычку. Неожиданная смена направления работы привела к потере привычки. Вот так, думаешь, что это ты меняешь работу, а на самом деле работа меняет тебя) Но мотивация и запал остались, цель прежняя, создавать программы, стать джуниором, жаль времени поначалу будет крайне мало. Проверил сначала 5, потом еще 5 отчетов, получил 5 байтов, прошел тест. |
|||
JA. Классные пакеты CLASS - Красная книга | + 11 | ||
Научился создавать архив Jar Не удалось перенести с Windows на Linux. Был ответ, что версия файла класса 55, а джава на линуксе тянула только 52 |
|||
JA. Классные пакеты CLASS - Пакеты для зверей | + 10 | ||
Разобрался, когда добавлять package, а когда import. package - в классы зверей import - куда подключаем эти классы Всё ок. |
|||
Дневник успеха 2019-01-06 : Какие труды, такие и плоды. | + 9 | ||
За эту неделю: + Я проверил 35 отчётов у 24 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 3 текста: − Я не решил ни одной задачи :o( + Я выполнил 7 видеоуроков + Я собрал 34 Мегахешей. Год закрыт, сложная неделя была. Результаты почти никакие. Теперь 3 дня отдыха, и снова за работу. Постепенно восстанавливать темп до пары уроков в день. |
|||
J8. Циклопы LOOP - Развёртка цикла | + 11 | ||
Потестировал время выполнения цикла и его развертки. Интересный урок. Всё ок. |
|||
JA. Классные пакеты CLASS - Кошкин дом | + 12 | ||
Создал котособачьи дома. Удалил классы. Порядок компиляции, чтобы не было ошибок: кошка, кошкин дом, собака, собачий дом, животные. Всё ок. |
|||
JA. Классные пакеты CLASS - Каждой тваре по файлу | + 12 | ||
Классы поместил в отдельные файлы еще на прошлом уроке. Удалил все *.class файлы, откомпилировал Animals.java, получил ошибки. Рекомпилировал отдельно класс кошек, потом класс собак. После этого рекомпиляция Animals прошла успешно. Всё ок. |
|||
JA. Классные пакеты CLASS - Кошка и Собака | + 10 | ||
Начинаю классы. Хороший подход и подача материала. Пока всё ок. |
|||
J8. Циклопы LOOP - Цикл for/each | + 19 | ||
Поэкспериментировал с циклом for ( : ). Надо бы посмотреть Футураму. Всё ок. |
|||
J8. Циклопы LOOP - Счастливые билеты | + 18 | ||
Написал и откомпилировал программу поиска 6-значных билетов двумя способами Всё ок. |
|||
Дневник успеха Рефлексия уходящего года | + 13 | ||
За эти 7 месяцев : + Я проверил 863 отчёта у 141 формулиста. + Я написал 46 сообщений 15 формулистам общим объёмом 14 килобукв + Я набрал 85 текстов: + Я решил 336 задач: + Я выполнил 373 видеоурока: − Я не собрал ни одного Мегахеша :o( Ого, как я ленился летом. В августе отпуск помог втянуться в процесс. Статистика по мегахешам неправильная, конечно) Ну и задач было больше: 300 + 300 как минимум. В следующем году цель - стать джуниором, ну и не сильно потерять в зарплате при этом) |
|||
Дневник успеха 2018-12-30 : Думай ввечеру, что делать поутру. | + 11 | ||
За эту неделю: + Я проверил 34 отчёта у 26 формулистов. + Я написал 2 сообщения 1 формулисту общим объёмом 1 килобуква. + Я набрал 5 текстов. + Я решил 1 задачу. + Я выполнил 8 видеоуроков. + Я собрал 54 Мегахешей. Провалил неделю, было тяжелое открытие года, сработал по минимуму. На следующей неделе тоже не до отдыха, закрытие года теперь) Планирую также минимум. |
|||
J8. Циклопы LOOP - Цикл for | + 17 | ||
Потренировал обычный цикл for в различных вариациях. Понравился пример с условием цикла (!=), потому что хорошо объяснено, почему подобные условия лучше не использовать. Всё ок. |
|||
J8. Циклопы LOOP - Вся коллекция циклов | + 12 | ||
Было бы интересно посмотреть реализацию (моделирование) на Java цикла Дейкстры и цикла-паука. Вроде как поддержки на уровне синтаксиса этих циклов (точно последнего) не существует ни в одном языке программирования. |
|||
J8. Циклопы LOOP - Сумма и Произведение | + 12 | ||
Нашел сумму, произведение и количество кратных. Изучил различия в алгоритмах. Всё ок. |
|||
J8. Циклопы LOOP - Три части Forа | + 14 | ||
Потренировал и разобрал цикл for. Всё норм. |
|||
J7. Экзамен EGZ - Подготовка к зачёту | + 15 | ||
Написал программу и запустил её с аргументами командной строки и без оных Всё ок. |
|||
J8. Циклопы LOOP - Блок-схема цикла FOR | + 16 | ||
Потренировал цикл for Всё ок. |
|||
Комбинаторика Рекурсия. Вступление | + 11 | ||
Вызов функцией самой себя прямо или косвенно. Всё ок. |
|||
J8. Циклопы LOOP - Пока четыре цикла | + 8 | ||
Решил задачу с циклом while/do пятью способами Всё ок. |
|||
Дневник успеха 2018-12-23 : Живет на горке, а хлеба ни корки. | + 12 | ||
За эту неделю: + Я проверил 35 отчётов у 22 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 6 текстов. + Я решил 34 задачи. + Я выполнил 14 видеоуроков. + Я собрал 43 Мегахешей. Итог недели: повторение задач успел, это норм. План на следующую - хорошенько потратить скопившиеся байты и выполнять по 3 урока в день. |
|||
J6. Условия IF - Времена года | + 11 | ||
Написал программу определения времени года и дня недели по номеру. Всё ок |
|||
J6. Условия IF - Оператор выбора | + 10 | ||
Потренировал оператор switch Всё ок. |
|||
J6. Условия IF - Quiz | + 10 | ||
Сложный тест неожиданно оказался, надо думать над каждым заданием. Правильных ответов 16, но некоторые пропускал. Всё ок. |
|||
Повторение задач ФИНАЛЬНЫЙ УРОК. Review с вершины. | + 14 | ||
Записывать видеообзор очень просто, когда не требуется ничего редактировать. Всё в порядке. |
|||
J8. Циклопы LOOP - Мужской / женский цикл | + 17 | ||
Поработал с циклами while () и do - while(). Всё ок. |
|||
Повторение задач 100% Я это сделал, Я победитель! | + 18 | ||
Прогресс 307/307 = 100% на java. Непросто всё оказалось, сложный финиш. Ну комбинаторика, конечно, утомила. |
|||
J6. Условия IF - Барный фейс-контроль | + 13 | ||
Написал и проверил программу. Не задавал лишних вопросов. Всё ок. |
|||
J6. Условия IF - Безальтернативное условие | + 12 | ||
Доработал программу из урока "Сколько мне дней". Всё ок. |
|||
J6. Условия IF - Альтернатива | + 14 | ||
Потренировал использование условного оператора. Всё ок. |
|||
J5. Операции OPER - Операции 12-13 | + 15 | ||
Потренировался с операциями ? : и = Прорешал тесты Всё ок. |
|||
J5. Операции OPER - Операции 7-11 | + 10 | ||
Потренировал логические операции, прорешал тесты Всё ок. |
|||
J5. Операции OPER - Операции 5-6 | + 9 | ||
Потренировал операции сравнения, сделал тест. Всё ок |
|||
J5. Операции OPER - Операции 4 | + 17 | ||
Потренировал операции побитового сдвига. Прорешал тесты. Всё ок |
|||
Повторение задач 90% Финишная прямая! | + 12 | ||
Прогресс 277 / 307 (90,2%) А вот теперь действительно пора ускоряться ) |
|||
Дневник успеха 2018-12-16 : Без дела слабеет сила. | + 11 | ||
За эту неделю: + Я проверил 32 отчёта у 19 формулистов. + Я написал 1 сообщение общим объёмом несколько буков. + Я набрал 7 текстов + Я решил 111 задач + Я выполнил 12 видеоуроков + Я собрал 44 Мегахешей. На неделю план простой - завершить Алгоритмику на Java. |
|||
J5. Операции OPER - Операции 3 | + 10 | ||
Потренировался с операцией "+" (стр.) Прорешал тесты. Всё ок. |
|||
Повторение задач 80% Начинаем ускоряться! | + 13 | ||
Прогресс 246 / 307 = 80,1% А вот теперь действительно начинаем ускоряться. |
|||
J5. Операции OPER - Операции 2 | + 10 | ||
Потренировал операции 2-3 ранга, прорешал тесты. Всё ок |
|||
J5. Операции OPER - Операции 1 | + 9 | ||
Изучил операции первого ранга. Прорешал тесты. Всё ок |
|||
Повторение задач 70% Осталось меньше трети | + 13 | ||
Прогресс 216/307 = 70,3% Последние 30 задач неплохо заходят. Но впереди самые сложные. |
|||
J9. Массивы ARRAY - Макси в Мини | + 13 | ||
Написал программу создания и заполнения массива. Поменял местами максимальный и минимальный элементы. Всё ок |
|||
J9. Массивы ARRAY - Максима Массива | + 11 | ||
Написал программу создания и заполнения массива, нахождения максимального элемента. Всё ок |
|||
Повторение задач 60% Открывается второе дыхание! | + 11 | ||
Прогресс 188/307 = 61,2% Пора ускоряться. |
|||
J9. Массивы ARRAY - Целый массив | + 11 | ||
Написал программу заполнения массива квадратами индексов Всё ок. |
|||
J6. Условия IF - Тетрамакс | + 12 | ||
Дополнительно потренировал использование BufferedReader Всё ок |
|||
J4. Типы TYPE - Непримитивный тип String | + 14 | ||
Узнал особенности непримитивного класса String. Ознакомился с классами StringBuffer и StringBuilder Всё ок. |
|||
J4. Типы TYPE - Логический и Символьный примитивные типы | + 13 | ||
Работе с символами и логическими типами. Проверил методы Character.isLetter(), isLowerCase(). Вывел таблицу истинности логических функций Всё ок. |
|||
Дневник успеха 2018-12-09 : У хорошего мастера всякая пила хорошая. | + 15 | ||
За эту неделю: + Я проверил 34 отчёта у 22 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 7 текстов + Я решил 48 задач: + Я выполнил 9 видеоуроков: + Я собрал 54 Мегахешей. К сожалению, заболел гриппом, на следующей неделе планы минимальные. |
|||
J4. Типы TYPE - Вещественные примитивные типы | + 12 | ||
Нашел, чему равно 1e8 + 1e-8 Вывел PI в float и double Всё ок. |
|||
J4. Типы TYPE - Целые примитивные типы | + 14 | ||
Создал переменные, поприсваивал им значения. Прорешал тесты, создал свой тест. Всё ок |
|||
Повторение задач 50% Экватор пройден! | + 14 | ||
Прогресс 156/307 = 50,8 % Надо ускоряться Всё ок. |
|||
J6. Условия IF - Минимакс | + 13 | ||
Находил минимум и максимум из трех чисел. Искать решение с минимизацией числа ифов-элсов. |
|||
J3. Ввод READ - Буферный чтец | + 13 | ||
Считал данные двумя способами: с клавиатуры и из файла. Всё в порядке |
|||
Повторение задач 40% Впереди самое интересное! | + 13 | ||
Java, прогресс 127/307 (41,3%) Пора ускоряться. |
|||
J3. Ввод READ - Любая формула | + 16 | ||
Выбрал задачу Формула 1000. Написал решение в тексте. Откомпилировал и запустил, проверил ответ. Всё ОК |
|||
J3. Ввод READ - Сколько мне дней | + 13 | ||
Написал программу по примеру, дату считываю с клавиатуры. Выяснил, что недавно пропустил юбилей в днях. Не нравится мне это - "Указать ... месяц минус 1" |
|||
J3. Ввод READ - Сканер пива | + 16 | ||
Написал, откомпилировал и запустил программу со сканером и раздачей пива Всё получилось |
|||
Дневник успеха 2018-12-02 : Больше дела – меньше слов. | + 16 | ||
За эту неделю: + Я проверил 38 отчётов у 20 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 7 текстов + Я решил 11 задач + Я выполнил 8 видеоуроков − Я не собрал ни одного Мегахеша :o( Следующая неделя ожидается такой же сложной и малопродуктивной как и эта. Ожидаю, что результат будет 7 уроков и 210 байт |
|||
J3. Ввод READ - Сканер | + 15 | ||
Импортировал класс Scanner. С ним действительно проще. Всё в порядке. |
|||
MVC шаблон MVC - Counter - ViewConsole | + 16 | ||
Создал класс ViewConsole implements Observer Реализовал метод update() в классе ViewConsole() Создал класс Program() Реализовал метод main() в классе Program() Сложный курс, возможно рановато для меня, чуть отложу. Инспектор ругается, что Observer - устаревший код |
|||
MVC шаблон MVC - Суть шаблона | + 16 | ||
Модель - Собственно данные, методы для работы с данными, изменения и обновления данных. Представление/Вид - Отображение данных, оформление и другие аспекты презентации модели. Контроллер - Реагирует на действия пользователя, интерпретирует данные, введенные пользователем, и информирует модель и производит необходимые манипуляции с моделью и видом. Всё ОК |
|||
J3. Ввод READ - Ввод трёхзначного числа | + 15 | ||
Используя System.in.read() собрал трёхзначное число. ALT+048 = 0 |
|||
J3. Ввод READ - Чтение символа | + 16 | ||
Подключить import java.io.IOException, откомпилировал, запустил, получил коды вводимых символов. Всё ОК |
|||
J3. Ввод READ - Конкатенация аргументов | + 15 | ||
Написать и откопилировать программу, сделать вывод сообщения об ошибке, если нет ни одного параметра, между аргументами поставил знак "-". Запустил с нексолькими параметрами. Всё в порядке. |
|||
J3. Ввод READ - Сложение аргументов | + 16 | ||
Переписал, откомпилировал, запустил. Сделал много вариантов запуска. Всё норм. |
|||
J3. Ввод READ - Консольные аргументы | + 16 | ||
Написал и откомпилировал программу. запустить программу без параметров, с одним и двумя параметрами. Если параметры не указаны (или указан более одного), сделал вывод подсказки о том, как запускать программу. Всё ок. |
|||
Дневник успеха 2018-11-25 : Кто поет, у того работа скоро заканчивается. | + 11 | ||
За эту неделю: + Я проверил 34 отчёта у 23 формулистов. + Я написал 5 сообщений 2 формулистам общим объёмом 2 килобуквы + Я набрал 7 текстов + Я решил 3 задачи: + Я выполнил 10 видеоуроков: 1 => «Система Git / Добро пожаловать в Зоопарк!» за 25 мин. 2 => «Система Git / git init» за 19 мин. 3 => «Система Git / git add checkout» за 22 мин. 4 => «Клиент-серверный сокет / Как хорошо уметь читать!» за 13 час. 52 мин. 5 => «Мат Конём и Слоном / Сериализация Json» за 1 день 3 час. 20 мин. 6 => «Мат Конём и Слоном / Чёрные ходы на доске» за 40 мин. 7 => «Мат Конём и Слоном / Последний ход» за 8 час. 53 мин. 8 => «Мат Конём и Слоном / Чёрно-белый слон» за 23 час. 6 мин. 9 => «Мат Конём и Слоном / ФИНАЛЬНЫЙ УРОК» за 1 день 12 час. 59 мин. 10 => «Мат Конём и Слоном / VIP урок с ладьёй» за 2 дня 2 мин. − Я не собрал ни одного Мегахеша :o( Не очень успешная неделя, правда был один видеоурок. Отстал в задачах, дата на джаве дается с трудом. Планирую на неделе 1-2 урока в день + задачи до 50% довести. |
|||
Мат Конём и Слоном VIP урок с ладьёй | + 14 | ||
Переделать проект для задачи «Мат ладьёй». Сформировал файл с базой решений. Переделал скрипт визуализации. Проделал все то же самое для мата ферзём. Проделал все то же самое для мата двумя слонами. Всё в порядке |
|||
Клиент-серверный сокет Как хорошо уметь читать! | + 15 | ||
Создал новый класс Client Создал клиентский сокет - clientSocket. Прописал host и port Запустил сервер и приложение, убедился, что все работает Дописал код побайтового считывания данных с сервера в массив и проверил работу приложения в этом режиме Создал reader для считывания по строчкам Доработал серверную часть в части вывода сообщений и проверил работу в браузере При обновлении в браузере http://127.0.0.1:8000/ по-прежнему удваивает число обращений и сервер тоже пишет по два обращения за раз. |
|||
Система Git git add checkout | + 12 | ||
Создал файл Zoo.java папке Zoo-git и в папке Zoo-win. Добавил данный файл для отслеживания командой “git add” Убедился, что он добавлен командой “git status” Проделал это же в папке Zoo-win Изменил файл Zoo.java в папках Zoo-git и Zoo-win Восстановил файл на предыдущую версию в папке Zoo-win. Восстановил предыдущий файл в папке Zoo-git с помощью команды “git checkout”. Всё ок. |
|||
Мат Конём и Слоном ФИНАЛЬНЫЙ УРОК | + 8 | ||
Всё в порядке. Спасибо за курс. Работать с уровнем звука |
|||
Система Git git init | + 19 | ||
Git — инструмент для контроля версий GitHub — онлайн-сервис для проектов Git Всё ок |
|||
Мат Конём и Слоном Чёрно-белый слон | + 18 | ||
Вручную проработал алгоритм расчёта симметричных координат. Внёс изменения в функцию getWhiteBox ($combo). Написал функции flipIndex() и flipCombo(). Написал функцию isBlackSquare ($index). Проработал позицию с чернопольным белым слоном. В связи с утратой папки с файлами проекта еще раз проштудировал уроки 24-29. Опыт приобрел огромный конечно, жесть. |
|||
Система Git Добро пожаловать в Зоопарк! | + 12 | ||
Прочитал историю, установил git Всё ок. |
|||
Мат Конём и Слоном Последний ход | + 16 | ||
Убрал кнопки и чекбоксы, в файле chess.php запретил взятие фигур. В функцию drop передал координату целевой клетки. В span-идентификатор добавил имя фигуры. Написал js функцию moveFigure (figure, index). Сделал отображение правильного хода белых. Раскрасили красным и синим. Всё ОК. |
|||
Мат Конём и Слоном Чёрные ходы на доске | + 14 | ||
Добавил span в каждую клетку доски, сделал вывод возможных ходов. Написал функцию clearBlackSteps() для убирания этих чисел. Всё в порядке |
|||
Мат Конём и Слоном Сериализация Json | + 12 | ||
Сериализовал PHP массив в Json строчку, написал JavaScript для отображения информации о белом ходе. Сформировал информацию о возможных чёрных ходах, оформил содержание информационных панелей. Всё ОК. |
|||
Дневник успеха 2018-11-18 : Начинать начинай, да смотри же — заканчивай! | + 10 | ||
За эту неделю: + Я проверил 35 отчётов у 17 формулистов. + Я написал 3 сообщения 1 формулисту общим объёмом 1 килобуква + Я набрал 7 текстов − Я не собрал ни одного Мегахеша :o( + Я выполнил 14 видеоуроков: Повторение задач 20% Повторение задач 30% Интернет-магазин 3 J2. Печать / WRITE 3 Клиент-серверный сокет 5 Мат Конём и Слоном Неделя прошла по плану 1+1. На следующей неделю прогнозирую больше свободного времени, а значит 1+2 урока в день + задачки. |
|||
Клиент-серверный сокет Автоответчик | + 10 | ||
Реализовал сервер-автоответчик и зациклил его. В телнете счетчик инкрементируется на 1. В браузерах на 1 и сразу еще на 1, как будто F5 нажимаю два раза. |
|||
Клиент-серверный сокет Простейший сервер | + 15 | ||
Создал простейший сервер. Проверил его работу через браузер и telnet. Повторный запуск telnet привел к сбою подключения. serverSocket.accept() зацикливает программу и вводит в режим ожидания подключения клиента. ip-адреса 127.0.0.1 нет в тексте программы сервера, так как сервер ожидает клиента с любым IP по номеру порта. telnet был отключен в компонентах Win10 по умолчанию |
|||
Клиент-серверный сокет Что такое сокет | + 12 | ||
Клиент-серверное приложение - программа, удовлетворяющая требованиям архитектуры клиент-сервер, в которой клиентская часть отправляет запросы на сервер, а серверная часть обеспечивает обработку и хранение данных. Серверный сокет - слушающий сокет, открываемый на серверной части приложения, привязанный к определенному порту, находящийся в режиме ожидания клиента, просыпающийся при появлении нового соединения. Сокет - программный интерфейс для обмена данными между процессами. IP - протокол. IP-адрес - адрес(32 или 128 -битный), используемый для определения узлов сети. TCP - добавляет к IP соединение (и гарантирует доставку пакетов) и порты, для обмена пакетами между приложениями. Сетевой порт — ресурс, отображаемый в виде числа (1-65535), которое определяет назначение входящих или исходящих сетевых потоков данных на устройстве. |
|||
Мат Конём и Слоном Дружба PHP с JavaScript | + 15 | ||
Разделил функциональность на два файла. В конце chess.php сделал считывание параметров и передачу параметра назад в JS. В index.php при формировании доски - собрал координаты фигур. В конце файла вывел сформированные присвоения координат. Написал функцию phpGetInfo() и вызвал её в конце файла. Протестировал дружбу PHP с JavaScript Убираю предупреждения браузера вот так: error_reporting(0); |
|||
Мат Конём и Слоном Создание PHP функций | + 11 | ||
Скопировал файл biknight.box в папку localhost-а Написал функции getWhiteBox ($combo), getWhitesMove ($combo), getBlacksMove ($combo), getInfo ($combo) При короле черных на a1 мозилла ругается на Undefined offset При перестановке короля на h1 - тишина. |
|||
Интернет-магазин Сохранение изменений | + 11 | ||
Внес изменения в edit.php Выполнил select, изменил данные для id=3, повторил select. Проверил, что данные изменились. Сделать проверку наличия записей по id-параметру. |
|||
J2. Печать WRITE - Окно JFrame | + 14 | ||
Написал, откомпилировал и запустил программу. Поэкспериментировал с закоментированием разных строчек. Самое безопасное было закомментировать frame.add(label). Всё ок. |
|||
Повторение задач 30% Тридцатка в кармане | + 18 | ||
Прогресс 93/307 (30,2%) на java. Раздел 'Цифры' из семантики меня подкосил) Без string Java не работает. Спасибо за помощь в чате. Задачки, где string обязательно, сделал на Паскале. Были глюки консоли на Мозилле. С приключениями прошел 30%, продолжаем. |
|||
J2. Печать WRITE - Квадратные условия | + 14 | ||
Написал программу на Java, откомпилировал, запустил. Перепробовал различные условия. Придумал своё условие для узора. Всё ОК. |
|||
Мат Конём и Слоном Четыре фигуры на доске | + 15 | ||
Отобразил доску с 4 фигурами. Отобразил доску пл FEN-коду. Разместил тексты для отображения информации. Разбираться в PHP-коде. |
|||
Мат Конём и Слоном План визуализации | + 7 | ||
Курс нано-Шахматы пройден. План по визуализации просмотрен. Что ещё можно реализовать - для начинающих шахматистов-практиков было бы интересно тренировать собственно алгоритм мата, то есть человек делает ход белыми без подсказки, и получает информацию,сильнейший ли это был ход, сколько ходов до мата теперь. Сложное - предложить свой вариант внедрения. |
|||
J2. Печать WRITE - Комментарии | + 16 | ||
Испольовал три вида комментариев. Использовал утилиту javadoc. Всё ок. |
|||
Повторение задач 20% Отличный старт! | + 15 | ||
Прогресс 63/307 = 20,5 % Java |
|||
Мат Конём и Слоном Игра без массива | + 17 | ||
Сделал считывание позиции напрямую из файла. Получил мат от компьютера. Всё в порядке. |
|||
Дневник успеха 2018-11-11 : Тише едешь - дальше будешь. | + 9 | ||
За эту неделю: + Я проверил 35 отчётов у 23 формулистов. + Я написал 6 сообщений 1 формулисту общим объёмом 1 килобуква + Я набрал 7 текстов − Я не собрал ни одного Мегахеша :o( + Я решил 42 задачи: + Я выполнил 18 видеоуроков 2 Повторение задач 4 J1. Запуск 3 Интернет-магазин 8 Шахматы по сети 1 Мат Конём и Слоном На неделе завершил эпичный курс "Шахматы по сети"! Вернулся к Мату слоном и конём, буду его добивать в ближайшие две недели. Ну и решать 300 задач на джаве. |
|||
Мат Конём и Слоном Шестнадцать мегабайт | + 14 | ||
Написал методы Save() и Load(). Создал файл 16 Мб с базой всех позиций. Сделал функцию для консольной игры с управлением короля. Вернулся на курс после долгого перерыва, вспоминал всё. Поэтому даже не пытался избавиться от матрицы box - делать считывание данных прямо из файла. |
|||
Шахматы по сети VIP. Меню DimanDOSа | + 15 | ||
Спасибо за отличный урок по Unity Всё работает |
|||
J1. Запуск START - Десять запусков | + 12 | ||
10 раз создал, откомпилировал и запустил программу на Java. Всё получилось |
|||
Повторение задач 10% Процесс пошёл! | + 10 | ||
выполнение 31 из 307 на java. Отчет поломался, картинку не прикрутить |
|||
J1. Запуск START - Запуск Java | + 19 | ||
Создал, откомпилировал и выполнил Program Всё ок. |
|||
Шахматы по сети Рефакторинг. Последний аккорд | + 15 | ||
Важный урок, хотя делать почти ничего не пришлось, многое удалось предугадать самостоятельно во время рефакторинга. Что касается всего курса, ради него и пришел на этот сайт и не пожалел) Купив курс, два месяца не приступал к нему, но потом за три месяца прошел и выработал привычку. Идем дальше, работы, точнее учебы - непочатый край. Радует, что паззл с рассинхроном рефакторинга и клиента сложился. Удалось самому (ну правда с учетом комментариев тех, кто прошел курс ранее) сделать вынос клиента в Game, реализовать концепцию Refresh. |
|||
Шахматы по сети Рефакторинг. Финальное причёсывание | + 13 | ||
Переместил вызов MarkSquaresFrom() и HidePromotionFigures() в ShowFigures() Оптимизировал инициализацию. Соотвественно, и мой Refresh скуксился до одной строчки void Refresh() { if (game.Refreshgame()) ShowFigures(); } Неплохо. |
|||
Шахматы по сети Рефакторинг. Двухэтажное превращение | + 13 | ||
Реализовал Game.NextMove и Game.NextPromotionMove Перенес в Game MakeMove() и инициализацию клиента. Разбил Refresh() на два метода: RefreshGame() и RefreshBoard() Перенес RefreshGame() в Game, сделав метод булевым. Чтобы если fen не изменился, был выход из всего Refresh(). Иначе при превращении через 2 секунды фигуры превращения исчезали, как и сама пешка на восьмой горизонтали. Пришлось смотреть урок два раза, но пока все работает. |
|||
J1. Запуск START - Переменная окружения | + 12 | ||
Установил переменную окружения Не успел за 30 секунд |
|||
Шахматы по сети Рефакторинг. Класс шахматной игры | + 15 | ||
Создал архив проекта до выполнения. Создал класс game. Реализовал init, GetMoves, GetFigureAt, Move с учетом замечаний. Запустилось на Unity. Пока работает, даже не верится) |
|||
J1. Запуск START - Платформа Java | + 15 | ||
Скачал и установил JDK Набрал текст программы в текстовом файле. Откомпилировал программу. Запустил созданный байт-код. Узнал ценную команду Ctrl+E в паинте |
|||
Повторение задач Stop. Think. Act. Review. | + 16 | ||
Спасибо за акцию, порешаем задачки, поучим java. sa. Семантика + Алгоритмика (300 задач) java. Самый полезный вариант, изучение нового полезного языка. Сбросить прогресс |
|||
Интернет-магазин UPDATE товара | + 16 | ||
Обновил данные в строчке по заданному id. Изменить название товара и картинку. Уменьшить на 10 цены всех товаров, которые дороже 100. |
|||
Шахматы по сети Рефакторинг. Потерянная пешка | + 15 | ||
Добавил в начало метода IsValidMove() строчку. Реализовал функцию Moves().CanPawnPromote() Доработал функцию Moves().CanPawnMove() Реализовал функцию FigureMoving().CheckPromotion() Заменил библиотеку ChessRгles.dll везде где используется (на сервере и в юнити) Протестировал работу. Отличный урок! И Ленский пешкою ладью Берет в рассеянье свою. |
|||
Интернет-магазин Товар на форме | + 13 | ||
Удалил строчки с "print_r" и "die". вставил данные внутри формы, добавил вывод рисунка на экран. Протестировал работу, изменяя параметр id в адресной строке. Всё ок. |
|||
Шахматы по сети Рефакторинг. Волшебник изумрудного ящика | + 14 | ||
Оптимизировал код пасхалки прошлого урока. Создал класс BoxPromots() : Box Реализованы: конструктор, Init(), константы, ShowPromotionFigures, HidePromotionFigures, SetSpriteFor, GetPromotionFigure. Board модифицирован, работа протестирована. Да, самый сложный урок. Пока обходим мины в виде написанных после этого видео методах, но уже внедренных. |
|||
Интернет-магазин SELECT из РНР | + 14 | ||
Перенёс подключение к базе данных в начало РНР файла. Сделал ветку if (isset ($_GET ["id"])) Считал id параметр и выполнил SELECT запрос к базе данных. Поместил результат в массив $row и вывел его на экран. Передал скрипту параметр id: http://localhost/edit.php?id=1 Убрать die() и сделать вывод результата в экранную форму |
|||
Шахматы по сети Рефакторинг. Хоровод из четырёх фигур | + 15 | ||
Создал константы proFigures, minx, whitey и blacky Реализовал функцию GetWhite/BlackProFigure() Модифицировал функции InitGameObjects() и ShowPromotionFigures() Всё ОК |
|||
Дневник успеха 2018-11-04 : Мала пчелка, да и та работает. | + 14 | ||
+ Я проверил 35 отчётов у 19 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 7 текстов. + Я решил 1 задачу. − Я не собрал ни одного Мегахеша :o( + Я выполнил 18 видеоуроков: 3 Tinklavimas 1 Интернет-магазин 3 On-line игра 11 Шахматы по сети Выполнил 18 при плане 14. Завершил 2 курса: Tinklavimas и On-line игра На неделе планирую 15 уроков, в том числе завершить шахматы (осталось 8). |
|||
Интернет-магазин INSERT из РНР | + 14 | ||
Выполнил запрос SELECT из консоли до и после добавления PHP скрипта. Убедился, что товар был добавлен в базу данных. Всё ок. |
|||
Шахматы по сети Рефакторинг. Шахматная независимость | + 17 | ||
Перенёс функцию UnmarkSquares() из Board() в BoxSquares(). Перенёс функцию MarkSquaresFrom/To() из Board() в BoxSquares(). Модифицировать класс Board(). Протестировал работу после проведённого рефакторинга. Всё ОК |
|||
Шахматы по сети Рефакторинг. Клетка в клетке | + 14 | ||
Перенёс функцию ShowSquare() из Board() в BoxSquares(). Реализовал функции Box().MarkSquare(). Модифицировал класс Board(). Протестировать работу после проведённого рефакторинга. Всё красиво |
|||
Шахматы по сети Рефакторинг. Спрайт, не дай себя заинтерфейсить | + 13 | ||
Реализовал методы Box().SetSpriteAt(), дописал интерфейс ICreatable(). Модифицировал класс Board(), протестировал работу после проведённого рефакторинга Всё ОК |
|||
On-line игра Прогулка за ручку | + 12 | ||
Поиграл в лабиринте размера 5 на 3. Создал класс GameTests и метод StartTest, создал фиктивное представление Выполнил несколько возможных и невозможных шагов с проверками. Тесты надо создавать не во время разработки, а до нее) Только на практике это не очень реально |
|||
On-line игра Внутренний мир Субъекта | + 15 | ||
Изменил модификатор доступа Level.SetSubject() на internal. Убрал тест SetSubjectTest(). Всё ОК. |
|||
Шахматы по сети Рефакторинг. Вынос переноса | + 13 | ||
Реализовал функцию Box().SetPosition(), модифицировал класс Board(). Протестировал работу после проведённого рефакторинга. Всё ОК. |
|||
Шахматы по сети Рефакторинг. Многоклеточная сущность | + 12 | ||
Создал класс BoxSquares() : Box, реализовал конструктор BoxSquares() Реализовал функцию BoxSquares().Init(), реализовал функцию BoxSquares().GetColor() Модифицировал класс Board(), протестировал работу. Не рискнул проделать то же самое с классом BoxPromots(). |
|||
Шахматы по сети Рефакторинг. Ящик с фигурами | + 11 | ||
Создал класс BoxFigures() : Box Реализовал конструктор BoxFigures() Реализовал функцию BoxFigures().Init() Сделал класс Box() абстрактным Модифицировал класс Board(), используя новый функционал Протестировал работу после проведённого рефакторинга Всё ОК. |
|||
Шахматы по сети Рефакторинг. Интерфейсная прослойка | + 13 | ||
Просмотрел видео два раза. Создал интрфейс ICreatable, реализовал его в классе Box(). Модифицировал класс Board(). Пока всё норм. |
|||
On-line игра Поиск монеток на поле Дураков | + 19 | ||
Исправил namespace для теста в классе CoordTest. Создал методы тестирования FindFirstTest(), FindRandomTest() и SetSubjectTest(). Всё ОК |
|||
Tinklavimas Платформа LP | + 15 | ||
Интересный конструктор одностраничников. http://pmzrtnma.plp7.ru/ Урок подытожил отличный курс, закрепляющий знания HTML/CSS/JS. Курс кроме прочего ценен тем, что это - фотокурс, ведь не всегда бывает возможность смотреть видео-урок. Спасибо за отличный курс. |
|||
Шахматы по сети Рефакторинг. Чёрный ящик | + 13 | ||
Создал абстрактный класс Box(), реализовал конструктор Box(), модифицироваль работу с фигурами через Box(). Протестировал работу после проведённого рефакторинга. Всё работает |
|||
Шахматы по сети Рефакторинг. Координатные трансформации | + 12 | ||
Создал класс Coords(), перенес функцию VectorToSquare() в класс Coords(). Реализовал функции Coords().GetX/Y/Vector(), переименовал функцию VectorToSquare() в GetSquare(). Протестировал работу после проведённого рефакторинга. Всё хорошо. |
|||
Tinklavimas JS - Квадратные условия | + 14 | ||
Вывел квадрат из # по примеру, попробовал некоторые другие условия. Придумал свое условие Всё в порядке. |
|||
Шахматы по сети Рефакторинг. С чего начать? | + 15 | ||
Вынес класс DragAndDrop() в отдельный файл, добавил необходимый using в файл Board.cs. Протестировал работу после проведённого рефакторинга. Откатывать не стал, получается, что рефакторится не тот код, который в уроках. Как ходьба по минному полю) |
|||
Tinklavimas 7. Show/Hide Message | + 14 | ||
Создал ссылку для показа сообщения, создал div с текстом сообщения, сделал ссылку для скрытия сообщения. Всё в порядке |
|||
Шахматы по сети Клиент. ВОСЬМОЙ ФИНАЛЬНЫЙ УРОК | + 16 | ||
Проверил еще раз прогрузку на андроид-устройства. Всё работает. Записал кратчайшее видео. Не осилил сразу загрузку на айфон. Надеюсь получится. А вот насколько реально получить лицензию сони на прогрузку на playstation? Там надо заполнить длиннющую заявку. Есть ли смысл заморачиваться? |
|||
Дневник успеха 2018-10-28 : У ленивой пряхи и для себя нет рубахи. | + 10 | ||
За эту неделю: + Я проверил 35 отчётов у 23 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов. + Я решил 1 задачу. − Я не собрал ни одного Мегахеша :o( + Я выполнил 18 видеоуроков: Tinklavimas 4 On-line игра 3 Шахматы по сети 11 Чуть меньше нормы выполнил, следующая неделя непростая, планирую два урока в день. |
|||
On-line игра Лабиринты тестирования | + 10 | ||
Создал новый класс для тестирования через генератор тестов. Нарисовал в комментариях лабиринтик Написал проверки в методе LevelTest() Всё ОК |
|||
On-line игра Случайное тестирование | + 15 | ||
Создал метод YieldCoordsTest(), написал цикл для проверки, определил массив координат для их сравнения в цикле. Написал метод GetRandomTest(), увеличил время работы этого метода. Всё ОК. |
|||
Tinklavimas 5. Меню с Колонками | + 10 | ||
Создал меню сайта с тремя колонками, поместил тексты. Всё ОК. |
|||
Шахматы по сети Клиент. Фоновое обновление | + 13 | ||
Модифицировал функцию Board().Start(), реализовал вспомогательную функцию Board().Refresh() Установил галку Run in Background*. Из консольной версии всплыл баг с превращением пешки в фигуру другого цвета)) В юнити это не пройдет, а с консоли в юнити передалось на ура. На скрине этот вариант. Вроде исправляли его, или я что-то путаю? В каком уроке это было? Много доработок впереди. Думал, что самое сложное будет добавлять контроль времени, но оказывается до него еще надо ограничить игроков, чтобы ходили только своим цветом. Ну это, в любое случае, после рефакторинга. |
|||
Шахматы по сети Клиент. Следы невиданных ходов | + 9 | ||
Реализовал вспомогательную функцию Board().MakeMove() Протестировал обмен данными между сервером и клиентом Всё получается |
|||
Шахматы по сети Клиент. Серверные пешки | + 9 | ||
Импортировал класс Client() в проект на Unity Использовал класс Client() в Board() Протестировал загрузку партии с сервера Всё в порядке |
|||
Tinklavimas 4. Две колонки | + 13 | ||
Научился создавать две колонки с разной шириной. Всё норм. |
|||
Шахматы по сети Клиент. Ход в мешке | + 15 | ||
Добавил геттер/сеттер Client().GameID Реализовал функцию Client().GetIdFromJSON() Реализовал функцию Client().SendMove() Использовал функцию SendMove() в цикле деморежима Реализовал загрузку текущей позиции с сервера Протестировал, поиграв в двух консолях за каждую сторону Всё отлично |
|||
Шахматы по сети Клиент. Дедовские методы | + 10 | ||
Реализовал вспомогательную функцию Client().GetFenFromJSON() Протестировал получение json строчки Всё ОК |
|||
Шахматы по сети Клиент. Достучаться до облака | + 11 | ||
Создал класс ChessDemo.Client Реализовал конструктор Client() Реализовал функцию Client().GetFenFromServer() Протестировал получение json строчки Написал самодельную парсилку json, которая удаляет все, что было до и после запятых, прихватив кавычку. А вдруг оно будет быстрее работать в конкретном случае, чем Newtonsoft? string fenFrom = client.GetFenFromServer(); fenFrom = fenFrom.Substring(fenFrom.IndexOf(',') + 1); fenFrom = fenFrom.Replace("\"FEN\":\"", ""); fenFrom = fenFrom.Remove(fenFrom.IndexOf(',')-1,fenFrom.Length - fenFrom.IndexOf(',')+1); Console.WriteLine(fenFrom); |
|||
Tinklavimas 3. День Космонавтики | + 8 | ||
Нашел картинки, написал макет сайта, добавил картинки на страницу. Разместил звездочки в разных местах. Всё ОК. |
|||
Шахматы по сети Хостинг. СЕДЬМОЙ ФИНАЛЬНЫЙ УРОК | + 15 | ||
Познакомился с отдельными нюансами хостинга. То, что reg.ru не тянет 14-ю версию сервера даже хорошо, пересоздал базу на 13-й, повторил некоторые действия, лучше запомнил. Спасибо за отличные уроки. Всё решаемо. |
|||
Шахматы по сети Хостинг. VIP. Двойные стандарты | + 15 | ||
Опубликовал проект ещё раз и убедился, что api/Chess не работает Модифицировал Web.Release.config Опубликовал еще раз и протестировал api/Chess через адресную строку Всё очень понятно, отличный урок. |
|||
Шахматы по сети Хостинг. Перенос базы данных | + 8 | ||
Создал резервную копию БД Добавил MSSQL БД на хостинге Придумал название БД, имя и пароль пользователя Импортировал резервную копию в БД на хостинге Прописал строку подключения к БД на хостинге Протестировал api/Chess через адресную строку Сложный урок. Пришлось установить сервер 2016. Не парился с квери для даунгрейда базы, создал базу заново. |
|||
Tinklavimas 2. Красивое меню | + 15 | ||
Создал «ul» список с пунктами меню, оформил пункты меню по образцу. Сделал 6 html-файлов для переключения пунктов меню. Всё хорошо |
|||
Шахматы по сети Хостинг. Публикация проекта | + 10 | ||
Настроил публикацию проекта из Visual Studio и опубликовал. И снова не заработало на версии net 4.7.2 - была ошибка сервера. Откатил ChessAPI на 4.7.1 - все в порядке. |
|||
On-line игра Тест обратной стороны Луны | + 12 | ||
Создал методы InSizeTest(), OnSideTest(). Исправил ошибку в методе Coord.OnSide(). Всё ОК. |
|||
Шахматы по сети Хостинг. Доступ по FTP | + 16 | ||
Установил пароль для подключения к FTP. Установил FTP клиент Total Commander. Подключился к FTP хостингу. Всё ОК |
|||
Дневник успеха 2018-10-21 : Глазам страшно, а руки сделают. | + 14 | ||
За эту неделю: + Я проверил 35 отчётов у 18 формулистов. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 7 текстов. + Я решил 1 задачу. − Я не собрал ни одного Мегахеша :o( + Я выполнил 22 видеоурока: 15 online игра 7 Шахматы по сети Хорошая неделя, продолжу 3 урока в день на следующей. |
|||
On-line игра 3. Тестирование. Тестовый прогон | + 17 | ||
Создал новый проект LibraryGameTest. Переименовал класс тестирования в CoordTests. Создал метод CoordTest(). Сделал тестирование создания координаты. Выполнил процесс отладки кода теста. Создавать тесты для других методов. |
|||
On-line игра Собери монетки | + 16 | ||
Добавил первую монетку, выбрал цвет для отображения монеток. Добавил обработку монетки в методе Game.Move(). Создал метод GetRandom() в структуре Coord. Создал метод Level.FindRandom() поиска случайного субъекта на поле. Поиграл в игру и собрал 10 монеток. Извлёк два метода MoveUser() и EatMoney(). Делать подсчёт и отображение очков |
|||
On-line игра Координатный рефакторинг | + 15 | ||
Разкомментировал проверку координат, добавил два оператора в структуру Coord. Убрал размещение игрока и проверил, что выпадает исключение. Добавил метод OnSide() в структуру Coord, использовал её при создании стен лабиринта. Добавил метод Equals() и GetHashCode() и завернул их в регион Equality. Думать о тестировании и о тестах |
|||
On-line игра Ищи ветра в поле | + 11 | ||
Создал метод Level.FindFirst() для поиска субъекта. Задал в структуре Coord статическое поле для несуществующей координаты. Вызвал FindFirst() из метода Game.Start() для определения начальных координат героя. Ok. |
|||
On-line игра Дорога из жёлтого кирпича | + 16 | ||
Установил цвет, в зависимости от выводимого субъекта. Отличный урок |
|||
Шахматы по сети Хостинг. Лучше заплатить | + 15 | ||
Выбрал подходящий план, выбрал доменное имя, выбрал срок подписки. Заполнил контактную информацию. Использовал DNS-серверы хостинга REG.RU. Заплатил за хостинг. Всё ОК. |
|||
Шахматы по сети Хостинг. Регистрация аккаунта | + 15 | ||
Открыл страницу хостинга по реферальной ссылке, зарегистрировался и подтвердил адрес электронной почты. Всё норм. |
|||
Шахматы по сети Сервер. ШЕСТОЙ ФИНАЛЬНЫЙ УРОК | + 13 | ||
Отлично продвигается курс. Создали сервер и он функционирует. Не весь материал закрепился в сознании, потребуется и не раз переосмыслить. Для меня это действительно магия, что все так гениально и просто работает. ОК. |
|||
Шахматы по сети Сервер. Китайская ничья | + 10 | ||
Модифицировал ChessController().GetMoves() Реализовал функцию Logic().ResignGame() Протестировал корректность через адресную строку Всё в порядке. |
|||
Шахматы по сети Сервер. Шахматная Идемпотентность | + 11 | ||
Реализовал функцию ChessController().GetGameById(), модифицировал WebApiConfig().Register() Реализовал функцию Logic().GetGame(), модифицировал Logic().MakeMove() Протестировал корректность отработки адресной строки Закон идемпотентности (пример): пришла осень, пришла осень можно заменить на пришла осень . |
|||
On-line игра Правила игры | + 16 | ||
Добавил проверки в метод Game.Move(), спрятал курсор, чтобы не мешался. Убрал отображение символов при вызове ReadKey() Всё ОК |
|||
Шахматы по сети Сервер. Ваш ход! | + 17 | ||
Реализовал функцию ChessController().GetMoves() Реализовал функцию Logic().MakeMove() Модифицировал WebApiConfig().Register() Поиграл через адресную строку Возвращать идемпотентность |
|||
On-line игра Подходящий размер! | + 16 | ||
Добавил метод Coord.InSize(Coord size) Добавил проверки на корректные координаты в методах GetSubject() / SetSubject() Добавил проверку на возможность перемещения в метод Game.Move() Убедился, что программа компилируется, запускается и корректно работает Всё ок. |
|||
On-line игра Координатный перебор | + 11 | ||
Создал метод YieldCoords() в структуре Coord Сделал в нём перебор всех координат до указанной позиции Задействовал этот метод для генерации стен лабиринта в методе Game.Start() Убедился, чтро программа компилируется, запускается и корректно работает Всё нормально |
|||
On-line игра Генерация лабиринта | + 13 | ||
Создал метод Level.Init() и вызвал его из конструктора. Написал два вложенных цикла и сгенерировал стенки по краям уровня. В методе Game.Start() разместил отображение всего уровня. Убедился, что программа компилируется и запускается. Всё ок. |
|||
On-line игра Шаги по карте | + 17 | ||
Описал поле Level в классе Game и получил его в конструкторе. Добавил в метод Game.Move() информирование о действиях в класс Level. В методе Controller.Run() определил size и level, передал их в Game. В методе Game.Start() сохранил полученный level. Убедился, что программа компилируется, запускается и работает. Всё ОК |
|||
On-line игра Карта сокровищ | + 17 | ||
Создал публичный класс Level, описал поле размера огорода size, описал двумерный массив map. Создал констурктор, добавил методы GetSubject() и SetSubject() с очевидной реализацией Переделать методы GetSubject() и SetSubject() |
|||
On-line игра Координатная структура | + 17 | ||
Создал публичную структуру Coord, описал публичные поля х, у и добавил конструктор. Изменил сигнатуру метода Show в интерфейсе IView. В классе Game изменил два поля х, у на один userCoord. Внес остальные изменения в класс Game для использования Coord. Изменил реализацию метода Show в представлениях ViewColor, ViewBasic Всё хорошо |
|||
On-line игра Показ героя на экране | + 16 | ||
Изменил описание метода в интерфейсе IView Добавил недостающий метод "переходник" в класс ViewColor Отказался от "переходника" и оставил один метод Show() Внес изменения в класс ViewBasic Проверил работу программы Всё ОК. |
|||
On-line игра 2. Рефакторинг. Перечисление субъектов | + 15 | ||
Создал enum Subject, приписал символы к каждому значению. Задействовать перечисление в представлениях |
|||
On-line игра Игра в библиотеке | + 12 | ||
Создал новый проект-библиотеку - LibraryGame, перенес в него класс Game и интерфейс IView. Откомпилировал библиотеку и нашел DLL файл. Добавил в консольный проект ссылку на библиотеку. Добавил директиву using LibraryGame в нужных классах. Проверил работу игры. Не сразу заработало из-за разных версий .NET Framework, пересобрал. |
|||
Шахматы по сети Сервер. Официант без логики | + 14 | ||
Создал класс Logic(), реализовал конструктор класса Logic(), создал функцию Logic().GetCurrentGame(). Модифицировал ChessController, подключил и использовал ChessRules.dll. Протестировал создание новой игры. Всё в порядке |
|||
Дневник успеха 2018-10-14 : Поспешишь – людей насмешишь. | + 12 | ||
За эту неделю: + Я проверил 36 отчётов у 11 формулистов. + Я написал 3 сообщения 3 формулистам общим объёмом 1 килобуква + Я набрал 7 текстов + Я решил 4 задачи − Я не собрал ни одного Мегахеша :o( +Я выполнил 26 видеоуроков: Tinklavimas = 2 On-line игра = 7 Шахматы по сети = 17 Хорошая неделя была, было время. Поэтому вместо 14 плановых выполнил 26. На следующую поставлю амбициозно) 21 урок в план (2+1 в день). Как я понял, онлайн игру мы теряем, надо срочно добивать. |
|||
Шахматы по сети Сервер. Новая игра на JSON | + 14 | ||
Модифицировал файл Global.asax, модифицировал ChessController. Реализовал вспомогательную функцию NewGame(), протестировал создание новой игры Всё ОК. |
|||
Шахматы по сети Сервер. Райский Эдем - EDM | + 14 | ||
Добавил ADO.NET EDM, подключился к созданной ранее БД Создал контроллер ChessController, модифицировал ChessController под наши нужды. Настроил проект, чтобы при запуске открывалась api/Chess Всё ОК. |
|||
On-line игра Видный интерфейс | + 15 | ||
Создал интерфейс IView с заголовками двух методов, унаследовал ViewBasic и ViewColor от IView. Внутри класса Game использовал IView, попереключал представления. Создавать ещё одно представление, сделать всё то же самое через абстрактный класс |
|||
Шахматы по сети Сервер. Последняя версия | + 10 | ||
Создал новый проект ChessAPI Выбрал Empty + Web API Создал контроллер, отображающий версию Настроил проект, чтобы при запуске открывалась api/Versions Создал класс Version() Вернул версию через конструктор класса Version Всё ОК. |
|||
Шахматы по сети База данных. ПЯТЫЙ ФИНАЛЬНЫЙ УРОК | + 10 | ||
Пятый раунд пролетел очень быстро. Пока всё крутится. Урезание базы - отличная идея, лишь бы заработало, остальное потом. В дальнейшем к базе надо прикрутить рейтинг шахматистов, это просто . А вот что делать с контролем времени не знаю, где ему место и как реализовывать. Всё нормально. |
|||
Шахматы по сети База данных. VIP. Красивая диаграма | + 13 | ||
Создал диаграмму созданной базы данных, внес несколько записей Всё ОК |
|||
Шахматы по сети База данных. VIP. Таблицы на вырост | + 13 | ||
Создал дополнительные таблицы, добавил необходимые ключи и индексы В табличке sides вместо сдачи (resign) употреблена перепевка - resing. |
|||
Шахматы по сети База данных. Созидание | + 12 | ||
Создал базу данных Создал таблицу с необходимыми столбцами Создал БД на SQLExpress - вот терзают сомнения, заработает ли. |
|||
Шахматы по сети База данных. Упрощение | + 11 | ||
Обкорнали БД. Вот это поворот. Но так надо. Посмотрим, чтой-то будет. Всё в порядке. |
|||
On-line игра Цветной телевизор | + 11 | ||
Создал класс ViewColor и добавил в него разноцвета. Переименовал класс View в ViewBasic Изменил программу для использования представления ViewColor Более правильно создавать представления, чтобы их было проще переключать |
|||
Шахматы по сети База данных. Планирование | + 10 | ||
Создал структуру БД Всё ОК |
|||
Шахматы по сети База данных. Management в студию! | + 16 | ||
Установил MS SQL Server Management Studio Всё ОК |
|||
On-line игра Контроллер не спешит | + 10 | ||
Перенес создание объектов в метод Main() Создал класс Controller Добавил поле для хранения Game и конструктор для его инициализации Создал метод Run() и перенес в него содержимое метода Start() Вызвал контроллер из метода Main() и проверил работу игры Разобрался в различии вариантов MVC шаблона. В нашем случае контроллер изменяет только модель, сообщая ей о событиях, а модель напрямую запускает методы, которые изменяют представление. Делать постоянное движение объекта в выбранном направлении |
|||
Шахматы по сети Интерфейс. ЧЕТВЁРТЫЙ ФИНАЛЬНЫЙ УРОК | + 18 | ||
Сложная для меня часть курса, продолжаю знакомство с Unity. Интересная идея выставки фигур, но эта модель приведет к расходу места вверху и внизу доски. Посмотрим, как оно будет выглядеть на телефоне. Может, стоило отдать под выставку вертикаль справа? Очень много элегантных решений, которые кажутся очевидными, но представляю, какое время потребовалось на их задумку и реализацию. Движемся далее. |
|||
Шахматы по сети Интерфейс. Долгожданное превращение | + 16 | ||
Доработал вспомогательную функцию Board().DropObject() Доработал вспомогательную функцию Board().PickObject() Протестировал работу скрипта Придумывать свой способ проверки валидности хода пешкой. Придумывать вариант рестарта игры. |
|||
On-line игра Модель игры | + 11 | ||
Создал класс Game Добавил поле view и установил его через конструктор. Добавил поля для координат и установил их значения в методе Start(). Создал метод Move (int sx, int sy) для перемещения объекта. Изменил код в операторе switch() на использование метода Move(). Проверил работу программы. Всё ОК. |
|||
Шахматы по сети Интерфейс. Выставка фигур | + 12 | ||
Доработал вспомогательную функцию Board().InitGameObjects() Реализовал вспомогательную функцию Board().ShowPromotionFigures() Протестировал работу скрипта Всё ОК. |
|||
On-line игра Представление выделяется | + 10 | ||
Извлёк метод вывода символа на экран по указанным координатам. Извлёк метод вывода приветствия. Создал класс View и перенес туда эти методы. Сделал эти методы публичными и не-статичными. Внёс соответствующие изменения в метод Start() и проверил работу. Написать, что ещё можно порефакторить |
|||
On-line игра Марионетка | + 14 | ||
Создал и определил координаты объекта. Вывел символ в указанных координатах. Считал с клавиатуры нажатую клавишу. Изменил координату в зависимости от направления. Организовал бесконечный цикл. Сделал затирание символа при перемещении. Закончил игру по нажатию клавиши Escape. Всё в порядке. |
|||
On-line игра 1. Консольная игра. Добро пожаловать! | + 13 | ||
Создал пустое решение, создал в нём консольный проект. Избавился от static, вывел на экран приветствие. Пока всё просто. |
|||
Шахматы по сети Интерфейс. Щепотка рефакторинга | + 18 | ||
Реализовал вспомогательную функцию Board().CreateGameObject() Реализовал вспомогательную функцию Board().SetSprite() Доработал вспомогательную функцию Board().ShowSquare() Протестировал работу скрипта Всё в порядке |
|||
Шахматы по сети Интерфейс. VIP. Клетки прибытия | + 17 | ||
Реализовал вспомогательную функцию Board().PickObject() Реализовал вызов функции через делегат Реализовал вспомогательную функцию Board().MarkSquaresTo() Доработал вспомогательную функцию DragAndDropю().PickUp() Протестировал работу скрипта Всё норм |
|||
Tinklavimas 1. DIV + CSS = Структура страницы | + 19 | ||
Создал HTML-файл с DIV-блоками. Создал CSS-файл с параметрами блоков. Прописал ссылку на style.css в HTML-файле. Всё ОК. |
|||
Шахматы по сети Интерфейс. VIP. Клетки отправления | + 14 | ||
Реализовал вспомогательную функцию Board().ShowSquare() Реализовал вспомогательную функцию Board().MarkSquaresFrom() Доработал функции DropObject() и Start() Реализовал вспомогательную функцию Board().UnmarkSquares() Протестировал работу скрипта Всё ОК |
|||
Tinklavimas 5. Калькулятор | + 12 | ||
Создал форму - два поля, 6 кнопок и результат. Для каждой кнопки прописал вызов функции calc (). Написал функцию calc() для выполнения указанного действия над аргументами. Проверил на валидаторе. Всё ОК. |
|||
Шахматы по сети Интерфейс. Проверка хода | + 21 | ||
Реализовал вспомогательную функцию Board().VectorToSquare() Реализовал вспомогательную функцию Board().DropObject() Протестировал работу скрипта Предложить простой вариант реализации превращения пешки |
|||
Дневник успеха 2018-10-07 : Не тот хорош, кто лицом пригож, а тот хорош, кто на дело гож. | + 13 | ||
За эту неделю: + Я проверил 35 отчётов у 20 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов + Я решил 8 задач + Я выполнил 14 видеоуроков: 4 Tinklavimas 2 Интернет-магазин 8 Шахматы по сети Добил Третий финальный урок по шахматам и вошел в ритм - 2 урока в день. Так и будем развиваться. |
|||
Шахматы по сети Интерфейс. Ход делегата | + 13 | ||
Доработал вспомогательные функции DragAndDrop().PickUp/Drop() Создал вспомогательную функцию Board().DropObject() Реализовал вызов функции через делегат Протестировал работу скрипта Всё в порядке |
|||
Шахматы по сети Интерфейс. Начальная позиция | + 14 | ||
Скопировал библиотеку ChessRules.dll в папку Assets Дописал в Board.cs необходимый юзинг Реализовал функцию ShowFigures() Протестировал работу скрипта Всё ОК |
|||
Интернет-магазин Форма Товара | + 13 | ||
Создал edit.php файл в папке eds-www. Написал HTML с формой для отображения товара Поленился красиво оформить форму, используя table или div. |
|||
Шахматы по сети Интерфейс. Генерация объектов | + 16 | ||
Добавил для всех фигур Box Collider 2D Добавил скрипт Board к объекту Main Camera Установил Order in Layer равное -1 для шахматных клеток Реализовал конструктор Board() Реализовал вспомогательную функцию InitGameObjects() Протестировал работу скрипта Пока всё норм |
|||
Шахматы по сети Интерфейс. План действий | + 15 | ||
Открыл проект созданный ранее в Unity Удалил игровую доску и все фигуры Добавил текстуры клеток доски обычные и помеченные Разместил за пределами видимой области необходимые объекты Переименовал объекты по стандарту FEN Удалил все лишние объекты сцены Прозрачного пикселя не было в комплекте. Создал Zero.png размером 68 байт. |
|||
Интернет-магазин Таблица с Картинками | + 13 | ||
Убедился, что картинки расположены там где РНР-файлы, в папке images. Добавил в файл index.php изменения. Всё ОК. |
|||
Шахматы по сети Алгоритмы. VIP. Как пройти в библиотеку | + 19 | ||
Сменил версию .NET у проекта ChessRules на 4.7.1 Создал новый проект на Unity Добавил только белые фигуры, переименовал их Скопировал библиотеку ChessRules.dll в папку Assets Создал новый скрипт ChessTest и открыл его в Visual Studio Добавил строчку using ChessRules; Реализовал функцию Start() Добавил скрипт ChessTest в MainCamera Протестировал работу скрипта Обновил Unity до версии 2018.2.11f1 Она позволяет .Net до 4.7.1 (на 4.7.2 уже выводит предупреждение) Соответственно сделал ребилд библиотеки на 4.7.1 Пока работает. |
|||
Tinklavimas 3. яКартинка | + 17 | ||
Научился открывать картинки при наведении мышки Хороший урок |
|||
Шахматы по сети Алгоритмы. VIP. Можно пройти? | + 13 | ||
Реализовал функцию Chess().IsValidMove() Модифицировал функцию Chess().Move() Протестировал компиляцию и запуск Всё понятно |
|||
Tinklavimas 2. Ввод данных | + 15 | ||
Написал две программы для решения задачи двумя способами. Всё ОК |
|||
Шахматы по сети Алгоритмы. VIP. Шахматное супертестирование | + 17 | ||
Реализовал вспомогательную функцию Program().NextMoves() Протестировал несколько позиций Тестировать различные позиции более глубже. Жаль, что закрылся сайт chessprogramming. |
|||
Tinklavimas 1. Запуск JavaScript | + 15 | ||
Написал скрипты на JavaScript с использованием document.write(), alert() и с валидизацией формы. Проверил работу скриптов и валидизировал код. Всё ОК |
|||
Tinklavimas 8. Landing page | + 17 | ||
Создал простую посадочную страницу, валидизировал, загрузил на сервер через ftp. Всё ОК |
|||
Шахматы по сети Алгоритмы. ТРЕТИЙ ФИНАЛЬНЫЙ УРОК | + 17 | ||
Реализовал дополнительные условия ничьи Часть 1 https://youtu.be/A_n83xtzQCA Часть 2 https://youtu.be/QbGeWbR2bDg Решиться затеять для себя все это задание |
|||
Дневник успеха 2018-09-30 : Баловством хлеба не добудешь. | + 15 | ||
За эту неделю: + Я проверил 35 отчётов у 19 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов + Я решил 1 задачу: 1 => «Олимпиада / Случайная задача» на 100% + Я выполнил 6 видеоуроков: 1 => «Tinklavimas / 5. Kurortavimas» за 7 час. 23 мин. 2 => «Tinklavimas / 6. Raidės iš Varneliu» за 1 час. 51 мин. 3 => «Tinklavimas / 7. Tinklalapio kūrimo etapai» за 13 час. 11 мин. 4 => «Интернет-магазин / Подружить PHP с MySQL» за 20 час. 58 мин. 5 => «Интернет-магазин / Товары в таблице» за 16 мин. 6 => «Интернет-магазин / Картинки для товаров» за 1 час. 14 мин. − Я не собрал ни одного Мегахеша :o( Сложная была неделя, и следущая будет непростой. Третий финальный урок по шахматам почти готов) После него по два урока в день планирую. |
|||
Интернет-магазин Картинки для товаров | + 15 | ||
Создал папку images и подготовил картинки одинакового размера для каждого товара Всё норм |
|||
Tinklavimas 7. Tinklalapio kūrimo etapai | + 19 | ||
Paruošiau 4 nuotraukas. Aš juos išsaugojo "img" aplanke. Sukūriau etapai.html Sukūriau 2x2 lentelę. Aš dedu nuotraukas į stalo langelius. Aš patikrino validatoriaus rezultatus. Negaliu įkelti į FTP. |
|||
Интернет-магазин Товары в таблице | + 14 | ||
Выбрал базу и выполнил запрос в консоли. Создал файл wares.php по образцу. Открыть его через браузер. Всё норм |
|||
Интернет-магазин Подружить PHP с MySQL | + 15 | ||
Выполнил запрос «SELECT NOW()» в консоли. Создал файл dbase.php. Написал команду подключения к базе данных. Выполнил запрос «SELECT NOW()» в РНР. Получил результат и вывел на экран. Всё ОК |
|||
Tinklavimas 6. Raidės iš Varneliu | + 16 | ||
Сформировал таблицу и заполнил чекбоксами. Не удалось отцентрировать галку по центру ячейки. |
|||
Tinklavimas 5. Kurortavimas | + 14 | ||
Создавать форму, используя таблицу для оформления. Сложное задание для меня. Даже не уверен, примет ли сервер все данные из этой формы в таком виде. |
|||
Дневник успеха 2018-09-23 : Много спать – дело не знать. | + 15 | ||
За эту неделю: + Я проверил 35 отчётов у 22 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов: + Я решил 1 задачу: 1 => «Олимпиада / Случайная задача» на 100% + Я выполнил 8 видеоуроков: 1 => «Начало здесь / Переход Магистра на XL уровень.» за 11 час. 30 мин. 2 => «Tinklavimas / 7. Союз столбцов и строк» за 5 час. 26 мин. 3 => «Tinklavimas / 8. Табличный аттестат» за 2 час. 29 мин. 4 => «Интернет-магазин / Добавление товаров» за 7 мин. 5 => «Интернет-магазин / phpMyAdmin» за 40 мин. 6 => «Интернет-магазин / SELECT запросы » за 1 час. 9 мин. 7 => «Интернет-магазин / Запуск РНР» за 1 час. 40 мин. 8 => «Интернет-магазин / Всё готово для работы» за 7 мин. − Я не собрал ни одного Мегахеша :o( Застрял на третьем финальном уроке с правилами ничьей. Но сейчас вроде все готово, осталось оформить. Как закончу этот урок, начну снова 1+1 урок в день (Шахматы + бесплатный). |
|||
Интернет-магазин Всё готово для работы | + 22 | ||
Проверил работу EasyPHP Открыл www папку Открыл PHP страницу в браузере Запустил консоль базы данных Всё готово |
|||
Интернет-магазин Запуск РНР | + 20 | ||
Создал файл index.php Написал скрипт Проверил http://localhost/ Получилось |
|||
Интернет-магазин SELECT запросы | + 15 | ||
Выполнил все запросы. Создал свой запрос, выводящий стоимость компьютера. Всё норм. |
|||
Интернет-магазин phpMyAdmin | + 16 | ||
Запустил phpMyAdmin. Выбрал свою базу данных и таблицу ware. Добавил 10 новых записей через пункт меню Insert. Потом посмотрел список добавленных записей через меню Browse. Всё ОК. |
|||
Tinklavimas 8. Табличный аттестат | + 16 | ||
Создавать таблицу, стили для фона и текста, объединять ячейки. Делить ячейку по диагонали |
|||
Tinklavimas 7. Союз столбцов и строк | + 18 | ||
Две таблички из урока Морской Бой внесены в html, прописаны стили и классы. Нужные ячейки объединены. Всё несложно, но долго |
|||
Интернет-магазин Добавление товаров | + 16 | ||
Добавил три товара в таблицу Вывел их на экран Всё ОК |
|||
Дневник успеха 2018-09-16 : Земелька черная, а белый хлеб родит. | + 15 | ||
За эту неделю: + Я проверил 35 отчётов у 21 формулиста. + Я написал 1 сообщение 1 формулисту общим объёмом несколько буков. + Я набрал 7 текстов + Я решил 1 задачу − Я не собрал ни одного Мегахеша :o( + Я выполнил 11 видеоуроков: Застрял на третьем финальном уроке Шахмат по сети. Всё пытаюсь реализовать все условия для ничьи. FEN всем хорош, а недостаток есть - не предусмотрен счетчик повторения позиции, это бы помогло в фиксации 3-кратного повторения. На следующей неделе еще немного покопаюсь, все же страшно вносить крупные изменения в проект |
|||
Интернет-магазин Запуск базы данных | + 15 | ||
Создал ярлык для запуска mysql.exe Cоздал базу данных и таблицу. Не возникло сложностей |
|||
Интернет-магазин Установка EasyPHP | + 17 | ||
EasyPHP уже был установлен. Запустил HTTP Server и DataBase Server. Проверил работоспособность. Всё ОК |
|||
Tinklavimas 6. Стильные Буквы | + 15 | ||
Создал шрифт 5x5 и написал имя с его помощью. Нарисовал это же в HTML, использовав таблицы, стили и классы. Справился |
|||
Tinklavimas 5. Морской бой | + 16 | ||
Нарисовал 12 квадратов Квадрировал их Для этого написал программу на VBA которая случайным образом разбивает квадраты. Увеличил вероятности получения маленьких фигур, чтобы соответствовать условию. Программировать на VBA. Не успел разобраться с подпрограммами/функциями и передачей матрицы в них, поэтому написал весь код в теле программы, потом копировал результат 12 раз. |
|||
Шахматы по сети Алгоритмы. Шах и Мат! | + 12 | ||
Дописал класс Chess() Реализовал вспомогательную функцию Chess().SetCheckFlags() Протестировал работу текущего функционала Доп. условия постараюсь дописать обязательно, пока нет. Убрал надпись IS CHECK при мате, чтоб не дублировалась |
|||
Tinklavimas 4. Валидатор | + 17 | ||
Научился проверять соответствие HTML-кода страниц сайта и CSS-кода на соответствие современным стандартам на валидаторе. Поскольку сделал это еще при создании страницы, то ошибок не выдало. Как же много ошибок на сайтах, сделанных через конструкторы. А на видеошарпе всего 53 ошибки, в основном из-за отсутствия альтов у картинок. |
|||
Шахматы по сети Алгоритмы. Защита короля | + 18 | ||
Дописал функцию Chess().YieldValidMoves() Реализовал функцию Board().IsCheckAfterMove() Реализовал вспомогательную функцию Board().CanEatKing() Реализовал вспомогательную функцию Board().FindBadKing() Доработал функцию Moves().CanKingCastle() Реализовал конструктор FigureMoving() для пустого хода Реализовал функцию Board().IsCheck() Протестировал работу текущего функционала Всё норм |
|||
Tinklavimas 3. Вкусная таблица | + 15 | ||
Создавать HTML документ со всеми блоками, создавать таблицу для меню, находить для каждого блюда урл адрес картинки, формировать и раскрашивать меню Всё нормально |
|||
Шахматы по сети Алгоритмы. Королевский паркур | + 16 | ||
Дописал конструктор NextBoard() Реализовал функцию NextBoard().UpdateCastleFlags() Дописал функцию Moves().CanFigureMove() Реализовал функцию Moves().CanKingCastle() Реализовал функцию NextBoard().MoveCastlingRook() Протестировал работу текущего функционала Всё ОК. Теперь понял, что за бомба была на том уроке :-O |
|||
Tinklavimas 2. Таблица умножения | + 15 | ||
Написал скрипт, создающий таблицу умножения размером N x N Изучать javaScript для кода, приведенного в решении |
|||
Шахматы по сети Алгоритмы. Допрыгалась! | + 19 | ||
Дописал конструктор NextBoard() Реализовал функцию NextBoard().SetEnpassant() Дописал функцию Moves().CanPawnMove() Реализовал функцию Moves().CanPawnEnPassant() Реализовал функцию NextBoard().DropEnpassant() Реализовал метод FigureMoving().PlacedFigure Протестировал работу текущего функционала Всё ОК |
|||
Дневник успеха 2018-09-09 : Труд человека кормит, а лень портит. | + 16 | ||
За эту неделю: + Я проверил 35 отчётов у 22 формулистов. − Я не написал ни одного сообщения :o( + Я решил 1 задачу + Я выполнил 14 видеоуроков: 5 Tinklavimas 2 Базовый ASP.ект 7 Шахматы по сети − Я не собрал ни одного Мегахеша :o( Факт полностью совпал с планом. На следующей неделе увеличиваю план на +1 урок Шахмат по сети в день. |
|||
Шахматы по сети Алгоритмы. Рефакторинг на доске | + 16 | ||
Создал класс NextBoard() Модифицировал функцию Board().Move() Перенес функцию Board().SetFigureAt() в класс NextBoard().SetFigureAt() Перенес функцию Board().GenerateFEN() в класс NextBoard().GenerateFEN() Перенес функцию Board().GetFigures() в класс NextBoard().GetFigures() Перенес функцию Board().GetMoveColor() в класс NextBoard().GetMoveColor() Перенес функцию Board().GetCastleFlags() в класс NextBoard().GetCastleFlags() Перенес функцию Board().GetEnPassant() в класс NextBoard().GetEnPassant() Перенес функцию Board().GetDrawNumber() в класс NextBoard().GetDrawNumber() Перенес функцию Board().GetMoveNumber() в класс NextBoard().GetMoveNumber() Отрефакторил конструктор NextBoard() Протестировал работу текущего функционала Всё понятно |
|||
Базовый ASP.ект Подключение к базе данных | + 15 | ||
Установил mysql dot net connector Добавил в проект References Создал модель MySQL в виде статического класса Создал конструктор с подключением к базе данных Создал метод Select и вызвать его из модели Story Перенес параметры подключения в Web.Config Проверил работу программы Всё очень понятно объясняется |
|||
Базовый ASP.ект Создание SQL-запросов | + 19 | ||
Составил список задач Написал и выполнил все SQL-запросы к базе данных. Поэкспериментировал с запросами. Проверил результаты в HeidiSQL. Очень полезный для меня урок |
|||
Шахматы по сети Алгоритмы. Четвёртое превращение | + 15 | ||
Доработал функцию Chess().YieldValidMoves() Реализовал статичную функцию FigureMethods().YieldPromotions() Доработал функцию FigureMoving().ToString() Доработал функцию Board().Move() Протестировал работу текущего функционала Всё понятно |
|||
Шахматы по сети Алгоритмы. Храбрая пешка | + 13 | ||
Добавил на доску белые и чёрные пешки Реализовал функцию Moves().CanPawnMove() Реализовал функции Moves().CanPawnGo/Jump/Eat() Протестировал работу текущего функционала В функции CanPawnJump() не планировалось добавлять проверку на знак переменной stepY, но во время лекции возникла заминка (10:23) и проверку добавили, а причина заминки в том, что перепутали координату 6 шахматной доски и координату 6 программы. В программе с 6 на 8 прыжок не прошел бы, так как 8-й горизонтали не существует, потому проверка - лишняя. |
|||
Tinklavimas 1. Расписание уроков | + 13 | ||
Создал таблицу из 6 столбцов и 16 строк Использовал теги table, tr, th, td Заполнил таблицу расписанием уроков Сделал расписание пунктом меню сайта Добавил на страницу номер класса Не возникло |
|||
Tinklavimas Красивые стихи | + 16 | ||
Нашел стихотворение на стихах.ру Скопировал его в HTML файл. Оформил текст, используя различные HTML теги. Вроде несложно |
|||
Шахматы по сети Алгоритмы. Дальнобойщики | + 18 | ||
Вернул на доску начальную позицию. Реализовал функцию Moves().CanStraightMove() Добавил атрибуты signX/Y в классе FigureMoving() Реализовал операторы сравнения в Square() Реализовал проверку движения Ферзя, Ладьи и Слона Протестировал работу текущего функционала Всё получилось |
|||
Шахматы по сети Алгоритмы. Ночью с Конём | + 17 | ||
Добавил на доску белого и чёрного коней Реализовал функцию Moves().CanKnightMove() Доработал функцию CanFigureMove() Протестировал работу текущего функционала Всё нормально |
|||
Tinklavimas Термины сайтостроения | + 17 | ||
Ознакомился с определением терминов с Вики: WWW, IP-адрес, Доменное имя, DNS, Сервер, Хостинг, VDS/VPS, Прокси, FTP, Браузер, HTTP, SSL, Веб-страница, HTML, CSS, Flash, JavaScript, PHP, MySQL, Куки. мысли с Лурки: Javascript - язык, своим появлением обрушивший порог входа в профессию «программиста» практически до нуля. Позволяет писать жуткий код, не задумываясь о правилах видимости переменных, количестве аргументов и прочих тонкостях строгих языков, он же знаменателен тем, что позволяет создавать очень и даже очень красивые вещи. Так происходит потому, что он подстраивается под того, кто на нём пишет. PHP - язык, на котором написано или работает 95% сайтов рунета. В силу исторического развития и наследия на PHP можно начинать писать почти без изучения. Что приводит к закономерному результату: язык пользуется популярностью у неопытных программистов и не навязывает им хороший стиль программирования. «Раз все пишут, то и я напишу». Ибо стопицот миллионов леммингов не могут оши… throw new Exception(); |
|||
Шахматы по сети Алгоритмы. Куда идёт Король | + 19 | ||
В классе Moves() доработал функцию CanMoves() Реализовал функцию Moves().CanFigureMove() Добавил атрибуты deltaX/Y и absDeltaX/Y в классе FigureMoving() Протестировал работу текущего функционала Добавил проверку для фигуры Knight Всё ОК |
|||
Tinklavimas Простейшая HTML страница | + 15 | ||
Скачал программу и инструкцию, запустил секундомер, выполнил инструкцию,остановил секундомер, и так 11 раз. 11-й раз нужен для скрина. Лучший результат: 1 минута 58 секунд Ничего |
|||
Tinklavimas Второй подход к эскизу | + 18 | ||
Набросал 6 макетов разных модулей. Дизайн выбрал попроще, все-таки самому сайт создавать, а не укозу. Пока сложное не началось |
|||
Шахматы по сети Алгоритмы. Генератор ходов | + 21 | ||
Реализовал функцию Chess().YieldValidMoves() Добавил вывод результата функции в Program().Main() Реализовал статичную функцию Square().YieldBoardSquares() Реализовал статичную функцию Board().YieldMyFigureOnSquares() Переопределил функцию FigureMoving().ToString() Протестировал работу текущего функционала Пока нет особо сложного |
|||
Дневник успеха 2018-09-02 : Кто любит труд, того люди чтут. | + 21 | ||
+ Я проверил 34 отчёта у 17 формулистов. − Я не написал ни одного сообщения :o( + Я набрал 7 текстов + Я решил 2 задачи − Я не собрал ни одного Мегахеша :o( + Я выполнил 16 видеоуроков: 1 => «Tinklavimas 6 => «Базовый ASP.ект 3 => «МикроШахматы 6 => «Шахматы по сети Факт недели меньше плана на 5 уроков, в плюс идет выполнение одного финального урока. Завершил курс Микрошахматы. План на 1-ю неделю сентября (14 уроков): 7 уроков Шахматы по сети 7 уроков Базовый ASP.ект+Tinklavimas |
|||
Шахматы по сети Алгоритмы. Сборка фена | + 17 | ||
Реализовал вспомогательную функцию GenerateFEN() Реализовал вспомогательные функции для формирования FEN Доработал функцию Move(FigureMoving fm) в классе Board() Пока не очень сложно |
|||
Шахматы по сети Алгоритмы. Волшебные шахматы | + 19 | ||
Исправил UML-схему Посмотрел отрывок про волшебные шахматы из фильма о Гарри Поттере Добавил свойства возможности рокировки в класс Board() Добавил свойство взятия на проходе в класс Board() Добавил свойство правила 50-ти ходов в класс Board() Добавил свойство текущего хода в класс Board() Доработал функцию Init() в классе Board() Реализовал вспомогательные функции для парсинга FEN Всё понятно |
|||
Базовый ASP.ект Схема базы данных | + 20 | ||
Создал базу данных SOLUTION. Создал в ней таблицу solution. Узнал, как посмотреть предупреждение после создания таблицы, которое вроде как надо смотреть сразу, как только оно появилось. Проверил изменения через HeidiSQL. список задач: хранение solution, его заголовка, автора, даты, еще нужна табличка с тэгами. А вот и ворнинг, думаю он не повлияет на работу базы Warning | 3719 | 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. |
|||
Tinklavimas Каким будет мой сайт | + 20 | ||
Вот и 1 сентября наступило, попробую сделать практический сайт-блог по прохождению (walkthrough) седьмого класса средней школы на уровне сложности Эксперт. Содержание - это домашка, конечно, в первую очередь. Название будет простое - "7-й класс: день за днем" Сайт для семиклассников, а также их родителей :)) Самое сложное впереди) Взяться за учебу пора, хватит троек |
|||
МикроШахматы VIP урок - Бестолковый интеллект | + 18 | ||
Реализовал функцию doRandMove(). Столкнул ботов между собой. Назвал функцию в едином стиле с другими функциями: do_rand_move (). Сделал, чтобы компьютер сам ходил за чёрных. Написать функцию для оценки позиции и сделать выбор лучшего хода - это, конечно, для топ-кодеров задание. Вот бы курс такой запилили... Из имеющегося функционала, думаю, доступно одно - если есть мат в один ход, ИИ должен его ставить. |
|||
Базовый ASP.ект Установка сервера MySQL | + 16 | ||
Скачал MySQL Community Server Установил сервер и проверил, что он работает через cmd-консоль. Установил программу HeidiSQL и подключился к MySQL. Heidi ругалась на plugin: caching_sha2_password, пришлось в командной строке Mysql выполнить команду ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'пароль'; Потом пересоздал соединение в heidi и заработало |
|||
МикроШахматы VIP урок - Минное поле | + 19 | ||
Реализовал функцию mark_attack(). Доработал функцию show_map(). Не возникло сложностей |
|||
Базовый ASP.ект Формирование меню | + 21 | ||
Нашел файл views/Shared/_Layout.cshtml Скопировал ссылку @Html.ActionLink несколько раз. Сформировал все пункты меню по образцу. Запустил проект и проверил навигацию по меню. Удалил представление random. Переписал метод random на использование вида "number". Создал пункт меню "About" и сформировал эту страницу. Создавать пункт меню "О проекте" и формировать эту страницу. |
|||
МикроШахматы ФИНАЛЬНЫЙ УРОК | + 20 | ||
Курс просто супер. Не ожидал, что мне он так легко дастся. Есть желание его оптимизировать, добавить нотацию и запись партии, дописать оставшиеся правила (троекратное повторение, правило 50 ходов, 75 ходов). И вообще надо правила почитать, а то они меняются каждый год :) Записать видео, придумать тему обзора. В итоге сплагиатил идею |
|||
Шахматы по сети Классы. ВТОРОЙ ФИНАЛЬНЫЙ УРОК | + 17 | ||
Разбирался в правилах создания UML схем. Рисовал структуру проекта Очень сложное задание для меня, потратил сутки. Visual Studio 2017 более толком не строит диаграммы. Пришлось поставить Enterprise Architect и в нем пробовать, вышло кривовато. Самостоятельно руками даже и не пытался. |
|||
Базовый ASP.ект Создание модели Story | + 18 | ||
Создать класс-модель Solution. Создал свойства title и solution. Создал конструктор с инициализацией полей. Создал пару методов-заглушек в модели. Создал экземпляр модели в solutionController.number(). Пересоздал представление number со ссылкой на модель Solution. В представлении number сделал вывод полей модели. Создавать в модели несколько решений и делать вывод случайного решения. |
|||
Базовый ASP.ект Создание пустых страниц | + 20 | ||
Создал пустой MVC проект LostCode Создал контроллер pageController Создал представление для метода Index и запустил проект. Внес изменения в App_Start\RouteConfig.cs Создал solutionController и сделал методы-заглушки random, add, number. Создал пустые представления для всех методов. Было несложно |
|||
Шахматы по сети Классы. Консольная доска | + 20 | ||
Реализовал вспомогательную функцию ChessToAscii(Chess chess) Воспользовался функцией ChessToAscii() для отображения доски Исправил ошибку Доработал функцию ChessToAscii(Chess chess) Реализовал вспомогательную функцию Print(string text) Воспользовался функцией Print() для отображения цветной доски Самая сложная фигурка - это пешка Затем по убыванию сложности: ферзь, ладья. слон, король, конь. |
|||
Шахматы по сети Классы. Шахматная бюрократия | + 20 | ||
Модифицировал конструктор Chess(string fen) Модифицировал метод Move(stirng move) Создал вспомогательный конструктор Chess(Board board) Модифицировал метод GetFigureAt(int x, int y) Всё понятно |
|||
Шахматы по сети Классы. Стой, кто идёт! | + 17 | ||
Создал класс Moves() Создал функцию CanMove(FigureMoving fm) Создал вспомогательные функции CanMoveFrom/To() Создал расширяющий класс FigureMethods Создал расширяющий метод GetColor() Действительно, сейчас CanMove всегда будет возвращать ложь. В CanMoveTo() необходимо проверять цвет фигуры, стоящей на fm.to, а не идущей туда И возвращать ложь, если там стоит фигура цвета board.moveColor И истину, если цвет стоящей там фигуры равен none или противоположный ходу. |
|||
Базовый ASP.ект Создание схемы проекта | + 19 | ||
Список страниц: / список решений /page/index /solution/random случайное решение /solution/add добавить решение /solution/number/123456 показать решение 123456 Решение 1 "Поиск подстроки с использованием Regex" тэг C# using System; using System.Text.RegularExpressions; namespace story1 { class Program { public static void Main(string[] args) { Console.WriteLine("Поиск подстроки с использованием Regex"); Console.WriteLine("Введите строку, в которой искать"); string s1 = Console.ReadLine(); Console.WriteLine("Введите подстроку, которую искать"); string s2 = Console.ReadLine(); Regex x = new Regex(s2); if (x.IsMatch(s1)) Console.WriteLine("Подстрока найдена"); else Console.WriteLine("Подстрока НЕ найдена"); Console.WriteLine(); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); } } } |
|||
Дневник успеха 2018-08-26 Вот и лето прошло... | + 19 | ||
37 уроков выполнил, было 21 в плане. Но из них "Шахматы по сети" - всего 5 уроков. Завершил курс Нано-Шахматы и близок к завершению Микро-Шахмат. Мат Слоном и Конем пока заморозил, там пошли сложные уроки, отнимает много времени. После обновления драйверов AMD сбор мегахешей перестал работать, жду апдейта драйверов. Планы на неделю 7 бесплатных открытий потрачу на Базовый ASP.ект. Шахматы по сети - 2 урока в день. Завершить Микро-шахматы. Итоги лета - познакомился с сайтом videosharp.info; прошел всю семантику и алгоритмику, купил курс Шахмат по сети, вступил в клуб формулистов. Лето хорошо проходит. |
|||
Шахматы по сети Классы. Квадратная матрица | + 16 | ||
Создал класс Board() Создал конструктор Board(string fen) Создал геттер GetFigureAt(Square square) Создал сеттер SetFigureAt(Square square, Figure figure) В классе Board() реализовал функцию Init() В классе Board() реализовал функцию Move(FigureMoving fm) Ничего. |
|||
Базовый ASP.ект Выбор темы для проекта | + 16 | ||
Исследовал сайт ithappens.me Принял его за основу при планировании своего аналога. Тема пусть будет - программирование для начинающих - алгоритмы. Одна небольшая статья - один конкретный пример с кодом. Цель проекта - упростить поиск, когда требуется найти пример использования какой-либо функции, метода, опеатора или пример решения некой алгоритмической проблемы. Составил схему сайта Придумывать первую историю для своего проекта |
|||
Tinklavimas Знакомство | + 16 | ||
Открывать блокнот. Писать коротко о себе. Несложно |
|||
Базовый ASP.ект Мы начинаем ASP.NET с MVC | + 16 | ||
Создал тестовый ASP.NET проект на MVC шаблоне Запустил проект в браузере. Ознакомился со структурой проекта. Изменил HomeController.cs и посмотрел на результат. Пока ничего |
|||
Шахматы по сети Классы. Фигурой марш! | + 15 | ||
Создал класс FigureOnSquare() Создал конструктор FigureOnSquare() Создал класс FigureMoving() Создал конструктор FigureMoving() Создал конструктор FigureMoving(string move) Ничего |
|||
Шахматы по сети Классы. Квадратная площадь | + 15 | ||
Создал структуру Square() Реализовал конструктор Square() Реализовал вспомогательную функцию OnBoard() Реализовал конструктор Square(string name) Реализовал геттер Name() Протестировал работу нововведений Протестировал выход координат за пределы доски Протестировать выход координат за пределы доски |
|||
Теория ООП Структура vs Класс | + 15 | ||
Создал программку с одинаковыми структурой и классом. Добавил две функции, меняющие значения переданных параметров. Убедился в различиях обработки структуры и класса. Не возникло сложностей. |
|||
Шахматы по сети Классы. Цветная фигура | + 15 | ||
Создал перечисления Figure и Color Создал статичный класс ColorMethods() Реализовал функцию FlipColor() Пока все просто |
|||
Мат Конём и Слоном Экономия памяти | + 15 | ||
Создал структуру WhitesMoveLite. Написал методы конвертации типов. Делать конвертацию координат слона. Реализовывать методы Save() / Load(). |
|||
Мат Конём и Слоном Сериализация матрицы ходов | + 17 | ||
Сделал функцию сериализации матрицы box. Сделал функцию десериализации матрицы из файла. Сериализовал матрицы. box время - 6 минут boxLite время - меньше минуты Всё работает так, как надо. Ну должно :) Всё сложно. |
|||
МикроШахматы Ладейный паркур | + 16 | ||
Реализовал функцию move_castling_rook(). Всё отлично |
|||
МикроШахматы Рокировка на все времена | + 16 | ||
Реализовал функции can_white_cr () can_white_cl () can_black_cr () can_black_cl () Несложно |
|||
МикроШахматы Белолевая рокировка | + 16 | ||
Отрефакторил функцию can_castle(). Добавил заглушки функций can_white/black_cl/cr(). Несложно, следую генеральной линии курса |
|||
МикроШахматы Рокировка под шахом | + 16 | ||
Доработал функцию can_castle(). Оптимизировал функцию is_check(). Ничего сложного |
|||
МикроШахматы Король всемогущий | + 16 | ||
Реализовал функцию can_castle(). Реализовал функции can_white/black_castle(). Нет сложного. |
|||
МикроШахматы Флаг над замком | + 16 | ||
Добавил четыре флага - can_white/black_castle_left/right Реализовал функцию update_castle_flags(). Модифицировал функцию click_box_to(). Ничего сложного |
|||
МикроШахматы Правила рокировки | + 16 | ||
Псевдоалгоритм составил на прошлом уроке. Блок-схему прилагаю. Всё просто. |
|||
Мат Конём и Слоном Нано Шахматы | + 16 | ||
Сделал пункт 3. Делал, но не получилось пункты 7, 8, 9. Курс НаноШахматы выполнен полностью. Выполнять пункты |
|||
НаноШахматы VIP. PHP - Рисуем буквы | + 16 | ||
Нарисовал линии PHP-кодом. Построчно разобрался что к чему. Все отлично. |
|||
НаноШахматы VIP. PAINT - Координаты отрезков | + 16 | ||
Работал в Paint Выписал координаты Ничего |
|||
НаноШахматы VIP. PHP - Создание картинки | + 16 | ||
Работать с библиотекой GD в PHP. Создал файл lines.php Запустил его в браузере. Изменил размер выводимой картинки. Нарисовал флаг КША. Пришлось повозиться, но многое узнал. |
|||
НаноШахматы ФИНАЛЬНЫЙ УРОК | + 16 | ||
Отличный быстрый курс. Очень привлекает комбайн технологий. Следующие курсы - шахматные, в частности, Шахматы по сети. Всё ОК. |
|||
МикроШахматы ФИНИШНАЯ ПРЯМАЯ | + 16 | ||
Настроился на финишную прямую. Алгоритм возможна ли рокировка() 1. Король уже ходил? (в т.ч. рокировался) да - false 2. Ладья с рокируемой стороны уже ходила?да - false 3. Под боем ли какая-либо из трех клеток (та, где стоит король, та, по которой он пройдет и та, куда он попадет) ? да - false 4. Заняты ли кем-либо клетки куда должны попасть король с ладьей (в случае длинной рокировки также поля b1 для белых или b8 для черных)? да - false 5. true |
|||
МикроШахматы Подвиг безымянной пешки | + 16 | ||
Реализовал функцию move_pawn_attack(). Реализовал функцию back_pawn_attack(). Модифицировал функциии check_pawn_attack(), move_figure() и back_figure(). Посмотрел мультфильм. Не превращается пешка в короля. Вот теперь всё в порядке. |
|||
МикроШахматы Информационная панель | + 16 | ||
Реализовал функцию show_info(). Реализовал функции is_checkmate() и is_stalemate(). Доработал функцию mark_moves_from(). Оптимизировал определение очерёдности хода. Упустил, защита от шаха пешки путем взятия её же на проходе остается пока не реализованной? |
|||
МикроШахматы Шах вперёд - шаг назад | + 16 | ||
Модифицировал функцию is_check(). Реализовал функцию is_check_after_move(). Невозможность срубить на проходе при шахе вызвана, вероятно, цветозависимостью функции is_pawn_passant. Надо подойти ответственнее к смене цветов в функции is_check_after_move() или попытаться проверить шах в функции is_pawn_passant |
|||
МикроШахматы Служба безопасности короля | + 16 | ||
Доработал функцию is_check() Алгоритм функции is_check() достаточно сложен, по моему мнению. Беспокоят рокировки, насколько сильно он должен будет измениться при их реализации. |
|||
МикроШахматы Король в розыске | + 16 | ||
Добавил вызов move_figure() и back_figure() в функцию is_check(). Реализовал функцию find_figure(). Протестировать - пока невозможно - но хотя бы ничего не сломалось. Нестандартные ситуации необходимо стандартизировать. Не было сложного |
|||
МикроШахматы Возврат хода | + 17 | ||
Убрал random из функции is_check() Добавил функции move_figure() и back_figure() Модернизировал функции click_box_to() и promote_pawn() Не было сложного |
|||
МикроШахматы Случайный шах | + 16 | ||
Доработана функция can_move() Добавлена функция is_check() Не все ходы доступны, так как после условно недоступного хода был бы условный шах королю ходившей стороны. Мой алгоритм функции is_check() : условно допустить сделанный ход, найти координату короля ходившей стороны (она могла поменяться, но не обязательно), проверить. может ли фигура соперника (Q R B N) пойти на координату с твоим королем, ИЛИ проверить, может ли пешка соперника побить наискосок координату с твоим королем. Если оба вопроса ложь, то возвращаем ложь, шаха нет. Если же координата под боем, возвращаем истину, нашему королю шах. |
|||
Мат Конём и Слоном ПОЛУФИНАЛЬНЫЙ УРОК | + 16 | ||
Ничему новому на этом уроке. Курс великолепный, очень сложный и побуждает много работать при выполнении домашних заданий. Пока не получается самому творить. При малейшем отклонении от генеральной линии возникают ошибки, которые тяжело понять/исправить. Это я про попытки перестроить программу на мат ферзём, ладьей, двумя слонами. Но будем продолжать пытаться. |
|||
НаноШахматы JavaScript - Я тебя съем! | + 16 | ||
Дописал функцию drop() Программа работает Все отлично |
|||
НаноШахматы JavaScript - Завершение хода | + 17 | ||
Написана функция drop (event) Прописан атрибут ondrop с вызовом функции drop() Фигуры переносятся Реализовывать взятие фигур |
|||
МикроШахматы ТРЕТИЙ ЧЕТВЕРТЬФИНАЛЬНЫЙ УРОК | + 16 | ||
Курс заходит отлично. Это подтверждается тем, что появилось желание после окончания повозиться с ним еще - переписать что-то, дополнить, улучшить. Может быть, курс слегка излишне растянут, но тут в плюс то, что все ясно и понятно. Пока не возникло сложностей |
|||
МикроШахматы Волшебное превращение пешки | + 16 | ||
Доработана функция click_box_to() Реализована функция propote_pawn() Реализация своего способа превращения фигуры (не реализовано) |
|||
Мат Конём и Слоном Мат в 33 хода. | + 17 | ||
Все решения найдены. Игра с компьютером получается. Самые сложные позиции - когда черный король нападает и требуется тратить ходы, чтобы наладить взаимодействие фигур. Модифицировал алгоритм и для чернопольного слона: 464 мата и 33 хода. Мат двумя слонами - сложно, так как непонятно, делать ли второго слона независимым и писать для него отдельные функции, как для коня, или оставить одного универсального слона. Не справился с матом ладьей и ферзем. Удалял коня, заменял алгоритмы слона на алгоритмы фигуры, количество матов находилось правильно, но на второй итерации останавливался перебор обратных кодов, так и не успел разобраться почему. |
|||
Шахматы по сети Классы. Шахматная библиотека | + 17 | ||
Создал новый проект Class Library на C# Переименовал класс Class1 в Chess Реализовал конструктор Chess(stirng fen) Реализовал функцию Move(string move) Реализовал функцию GetFigureAt(int x, int y) Создал новый проект ChessDemo для тестирования Установил ChessDemo как запускаемый проект по умолчанию Добавил референс и юзинг на ChessRules в ChessDemo Добавил в конструктор Chess() аргумент по-умолчанию Реализовал основной цикл для тестирования Еще потребуются классы проверки валидности хода для каждой фигуры. Вывести доску в консоль, используя метод GetFigureAt() Поэтому дописал функцию вывода доски в консоль из fen. |
|||
Дневник успеха 2018-08-19 Отчёт за неделю | + 18 | ||
- Вы что, и отчеты за меня писать будете? -Ага. Круто. Выполнил уроков больше планового числа, но по основному курсу "Шахматы по сети" всего один. Более всего понравился урок «МикроШахматы / Судьба пешки». На следующей неделе в плане 2 урока в день, но нужно хотя бы 7 уроков по "Шахматы по сети". Начал добывать хеши, оказалось просто на GPU. Скорость примерно один мег в час на AMD. НО, почему-то нет стабильности, зависает, приходится перезапускать XMR, а на последних дровах вообще не работает |
|||
Мат Конём и Слоном 156 матов в полтора хода | + 16 | ||
Дописал алгоритм. Исправил ошибку. Пересмотрел матовые позиции - итого 156 матов в полтора хода. Обернуть два цикла пока пока в один |
|||
Мат Конём и Слоном Консольная шахматная доска | + 15 | ||
Написал метод print(). Подобрать цвета и шрифт. |
|||
МикроШахматы Пешкина мечта | + 16 | ||
Исправил ошибку в функции click_box_to(). Перенес исправленный код в функцию check_pawn_attack(). Ничего. Мультфильм просмотрен. Вывод - ничего идеального не бывает. Всегда есть, к чему стремиться. |
|||
МикроШахматы Афроамериканская пешка | + 16 | ||
Функция is_correct_pawn_move() доработана. Функция is_pawn_passant() доработана. Реализована общая функция is_correct_sign_pawn_move(). Удалены устаревшие функции is_correct_white_pawn_move() и is_correct_black_pawn_move(). Плюсы объединения - универсальность функции, минусы - сложность чтения для участков, где используется sign. Я бы еще саму функцию is_correct_sign_pawn_move() разбил на несколько функций. Не реализовали взятие на проходе для черных. |
|||
МикроШахматы Радар для быстрых пешек | + 16 | ||
Доработал функцию click_box_to(). Создал отдельную функцию check_pawn_attack(). Добавил удаление враждебно настроенной пешки при взятии на проходе. Всё понятно |
|||
МикроШахматы Взятие на проходе шустрых пешек | + 16 | ||
Доработал функцию is_pawn_passant() В моем алгоритме взятия на проходе, реализованном на уроке "Судьба пешки", я не брал во внимание сущность "битое поле", а только запоминал в 4-х переменных предыдущий ход соперника (откуда и куда, не важно кем). Алгоритм функции там был таков: 1. Клетка, куда идем, пустая? если нет , то false 2. Модуль разности координат sx-dx равен 1? если нет , то false 3. Координата sy == 4 ? если нет , то false 4. Координата dy == 5 ? если нет , то false 5. Координаты dx и x-откуда предыдущего хода соперника равны? если нет , то false 6. Координаты dx и x-куда предыдущего хода соперника равны? если нет , то false 7. Координата y-откуда предыдущего хода соперника ==6? если нет , то false 8. Координата y-куда предыдущего хода соперника ==4? если нет , то false 9. На клетке [dx, dy-1] стоит пешка? если нет , то false 10. возврат true. Пешка соперника снималась в функции click_box_to() следующим образом: Функция pawn_passant еще раз вызывается, и если она возвращает истину при входных (move_from_x, move_from_y, x , y), то затираем клетку [x, y-1]. Обратите внимание, что в click_box_to координаты move_from_x, move_from_y уже были обновлены к этому моменту. Потому я и вводил 4 переменные для старого хода. Ход сделан, и теперь в конце click_box_to() обновляем эти 4 переменные последнего хода. |
|||
МикроШахматы Пешка в сапогах | + 16 | ||
Доработал функцию is_correct_white_pawn_move(). Доработал блок-схему алгоритма пешки. Не было сложного. |
|||
МикроШахматы Пешка на охоте | + 16 | ||
Реализовал функцию is_correct_white_pawn_move() Добавил заглушку для функции is_pawn_passant() Не было сложного, откатил свой вариант обратно до общей линии курса ) |
|||
Мат Конём и Слоном Белая коробка | + 16 | ||
Класс WhiteBox создан. Количество матов в один ход уменьшилось до 920 При сборке была ошибка, что не все участки кода возвращают значение - добавил return true в конце public bool Put (Chess.WhitesMove white) Не удалось попробовать обратные ходы черного короля |
|||
Мат Конём и Слоном Генерация белых ходов | + 15 | ||
Создал три метода, для кажой фигуры по одному. 972 предматовых позиции. Заработало только после отключения проверки на переполнение. Не осилил функцию print. |
|||
МикроШахматы Судьба пешки | + 16 | ||
Нарисовал блок-схему алгоритма пешки. Реализовал алгоритм в функции is_correct_pawn_move(). Модифицировал is_correct_pawn_move() до is_correct_sign_pawn_move (исключив отдельные функции для каждого цвета) Модифицировал click_box_to (x, y) для удаления съеденной при взятии на проходе пешки и для превращения. Пока не смог реализовать превращение во все 4 фигуры, смог только в ферзя. Изначально было видно, что две функции для разных цветов - не очень удачная идея. Заглянул чуть в будущие отчеты, и точно, смотрю - уже одна функция) Написал ее сам как смог, вроде все просто. Недостаток - 4 дополнительные глобальные переменные, как я и писал в прошлом отчете. Но пешки отлично работают, осталось только научить их превращаться в ладью, коня и слона на выбор. Хороший урок. |
|||
Мат Конём и Слоном Белая и чёрная очередь | + 15 | ||
Структуры WhitesMove и BlacksMove созданы. Создана функция FindAllSolutions() с двумя очередями blackQueue и whiteQueue Честно пытался написать функции бэк-ходов белых фигур, но не хватает опыта пока |
|||
МикроШахматы Пешкины законы | + 15 | ||
Эх, сменить бы пешки на рюмашки, Сразу б прояснилось на доске! Сделал, опять же коряво, is_correct_white_pawn_move(). Отдал 4 переменные под хранение координат последнего хода. В click_box_to() надо проверять, побили ли на проходе и, если да, сносить чужую пешку. Там же проверять превращение пешки и, если да, сносить пешку и ставить фигуру. |
|||
МикроШахматы ПОЛУФИНАЛЬНЫЙ УРОК | + 15 | ||
Отлично построен курс, как по наполнению, так и по подаче материала. Хочется выполнять, урок за уроком. Особенно доставляет, если удается выполнить самостоятельные задания, а потом их сравнивать с эталонными. Без рокировок тяжело играть, конечно :) |
|||
Мат Конём и Слоном Псевдо-алгоритм перебора | + 15 | ||
Составлять блок-схемы Реализовать алгоритм мата ферзём и королем. Нашел только, что существует 364 матовые позиции. |
|||
НаноШахматы JavaScript - Посадку давай! | + 16 | ||
Написал функцию allowDrop(), которая отменяет действующий по умолчанию запрет на посадку. Вызов функции прописал в атрибут ondragover в div в цикл. Проверил. Сложного мало, непонятного много ) |
|||
МикроШахматы Мелочь пузатая | + 16 | ||
Функции is_correct_*_move() написаны. В функцию is_correct_line_move() помещен общий код. Реализованы функции is_correct_*_delta() Пока все понятно. Хорошо, когда знаний мало. Легче учиться сразу маленьким функциям, чем переучиваться с больших :) |
|||
МикроШахматы Дорогу Королеве! | + 17 | ||
Добавил функцию is_correct_queen_move() и тут же удалил. Попробовал реализовать общий алгоритм трех функций. Реализовал is_correct_QueenRookBishop_move(), свитчем разогнал условия по фигурам |
|||
МикроШахматы Слоновья тропа | + 16 | ||
Оптимизированы или реализованы функции: is_correct_rook_move(); is_correct_bishop_move(); is_empty(); can_move_from(); can_move_to() Создал функцию is_correct_queen_move() на основе функций ладьи и слона. Не было сложного. |
|||
МикроШахматы Не стой на пути! | + 16 | ||
Функция is_correct_rook_move() переработана. Функция is correct_bishop_move() написана. Понять, что Math.sign() не работает в Internet Explorer |
|||
МикроШахматы Горизонтальная вертикаль | + 16 | ||
Реализовал функцию is_correct_rook_move(). Затем коряво, но дописал её. Не было сложного |
|||
Мат Конём и Слоном Чистый ход | + 16 | ||
Перенес getFEN() в структуру. Порадовался коду. Устранять предупреждение Equals. Думать об алгоритме поиска обратных ходов. |
|||
НаноШахматы JavaScript - Тронул? Коди! | + 16 | ||
Тег для функций добавлен Функция drag() написана. Добавил ее вызов при ondragstart функция вызывается и при"таскании" пустой клетки. |
|||
Шахматы по сети Доска. VIP. Запуск в Интернете | + 17 | ||
Переключил проект на WebGL после Android. Настроил, скомпилировал и протестил. Генерация, после часа не была завершена, за ночь доработала. Первая компиляция привела к зависанию Unity |
|||
Дневник успеха 2018-08-12 Отчёт за неделю | + 16 | ||
Выполнил 26 уроков из 28 запланированных. Пожалуй, надо уменьшать планы, да и уроки становятся все сложнее. Из уроков понравился рефакторинг мата слоном и конем. Не успеваю взяться за мегахеши, все процессорное время отнимает анализ шахматных позиций - сглупил и согласился играть в команднике чемпионата страны по переписке. Уменьшу план - 3 урока в день. 2 из купленных пакетов, и один свободный. |
|||
Шахматы по сети Доска. VIP. Запуск на Android | + 16 | ||
Урок выполнить удалось Unity заставил установить Java SDK и Android SDK |
|||
НаноШахматы HTML5 - Поднятие фигур | + 17 | ||
Обернул каждую клетку в span-блок. Установил аттрибут draggable. Присвоил уникальный id. Протестировал поднятие фигур. Действительно, только в Хроме заработало. |
|||
Мат Конём и Слоном Рефакторинг кода | + 17 | ||
Выполнил рефакторинг всего кода. Почему-то нет ошибки, выдает 232 комбинации Переписать функцию getFEN() |
|||
НаноШахматы PHP - Превращение букв | + 16 | ||
Написал функцию GetFigureHTML ($figure) Вызов функции помещен в цикле в месте вывода на экран. Не было сложного |
|||
Шахматы по сети Классы. Архитектура проекта | + 16 | ||
Ознакомился со стратегией MVP. Все три прочих шахматных курса прохожу параллельно. Оттуда и получил знания про FEN. Самое простое в курсе для меня, конечно, все, что относится непосредственно к шахматам - правила игры, проверка ходов, и т.п. Самое интересное - программирование шахматных алгоритмов. Самое сложное - ASP.NET и EF |
|||
Шахматы по сети Доска. ПЕРВЫЙ ФИНАЛЬНЫЙ УРОК | + 16 | ||
Курс великолепен. Впрочем, это мой первый крупный курс на проекте. Пока все отлично. Билд для Windows не получался. Пришлось снести все и выполнить курс повторно) Думал, что причина в обновлении Unity. Оказалось в том, что надо добавить Board при выборе сцен в Build. И кстати, в последней версии Unity имя экзешника не задать, только папку |
|||
Шахматы по сети Доска. Запуск на Windows | + 16 | ||
Выбрал Windows, настроил player setting, создал место для хранения билдов, запустил билд, скопировал на флешку и попробовал на другом компьютере. Не сразу задвигались фигурки. Пришлось при настройках выбрать добавку сцены и там выбрать Board |
|||
Мат Конём и Слоном Две структуры | + 16 | ||
Созданы структуры Coord и Combo Ничего |
|||
НаноШахматы PHP - Массив для фигур | + 16 | ||
Создал массив $board и заполнил его фигурами. Вывел содержимое массива. Вывел фигуры вместо букв Для меня пока все непросто |
|||
МикроШахматы Королевские шаги | + 17 | ||
Посмотрел видео партии Хмыря и Папанова. Оказывается еще 4.Ne5 было ошибкой. Не знал эту историю) Функцию короля, как выяснилось, правильно написал на предыдущем уроке. Оставшиеся функции на JS не осилил самостоятельно. Оставшиеся функции is_correct_move(). |
|||
МикроШахматы Лошадью ходи! | + 16 | ||
Реализовал функции коня и короля В этот раз ничего |
|||
МикроШахматы Кто есть кто? | + 16 | ||
Продолжил реализацию функции is_correct_move(). Написал 12 функций по 2 для каждой фигуры. Ошибку в коде подправил еще на прошлом уроке. Степени сложности функций по возрастанию (предположил, что рокировка проверяется отдельной функцией и ее сложность не учитывается) 1. Ферзь (условно самое простое, реализовав слона и ладью) 2. Конь 3. Король (равен коню по сложности, но больше кода из-за рокировок) 4. Слон 5. Ладья (равна слону по сложности, но больше кода из-за рокировок) 6. Пешка (самое сложное из-за взятия на проходе) |
|||
МикроШахматы Шахматная бюрократия | + 16 | ||
Созданы функции can_move() и is_correct_move(). Модифицирована mark_moves_from Что должно быть в алгоритме is_correct_move Приоритетная проверка - если после хода, нашему королю остается шах, ход невозможен. Возможно, другой функцией проверять? В самом конце, если после любого хода шах остается, проверяем , а шах ли нам до хода, если нет, то это пат, зовем судью и фиксируем ничью, если шах есть, то нам мат, сдаемся, расходимся. Определяем какой фигурой ходим. Затем проверки для каждой фигуры: Король. До восьми клеток вокруг - своих пропускаем, врага съедаем, доп проверка на возможность рокировок. Ладья, проверяем горизонталь и вертикаль, до встречи со своими или с врагом, своих отбрасываем, врага бьем. Проверяем рокировку. Слон то же что и ладья, но диагонали вместо горизонталей и вертикалей, и не нужна проверка рокировок. Ферзь - это слон, стоящий на ладье, но не нужна проверка рокировок. Конь, проверка до 8 полей по букве Гэ. Пешка - три поля: вверх, если там пусто, вверх влево, если там враг, вверх вправо, если там враг. Если в начальной позиции, и впереди 2 пустых поля, то вперед на 2. И проверка взятия на проходе. |
|||
Мат Конём и Слоном Ворошиловский слон | + 16 | ||
Исправил onBishop() на вариант со смещением. Найденные позиции 232 в порядке. Заскриншотил. IEnumerable, yirld return, вот это все. Ну и для структуры для хранения пока не хватает знаний. |
|||
Шахматы по сети Доска. Смещение | + 16 | ||
Метод PickUp() был закончен. Методы Drag() и Drop() закончены. Учтено смещение offset. Успевать за мыслью преподавателя. |
|||
НаноШахматы PHP - Циклы для клеток | + 16 | ||
Организовал два вложенных цикла. Создал переключатель цвета для клеток. Вывел координаты клетки в нее же. Освоил функцию ord(). Всё и ничего. |
|||
НаноШахматы PHP - Запуск скрипта | + 17 | ||
Запустил Dashboard, затем HTTP Server и Database Server В папку D:\Program Files (x86)\EasyPHP-Devserver-17\eds-www скопировал index.php и chess.css Написал две echo-команды в index.php Открыл http://localhost/ Разделить echo на две строки. |
|||
Мат Конём и Слоном Нотация Форсайта - Эдвардса | + 18 | ||
Переписал метод getFEN(), мой вариант был с заменой Replace (идея подсмотрена в отчете Yefim) Матовые комбинации конями 240 проверил еще в прошлом задании. Пока оставил свой метод проверки шаха слона onBishop(), он работает при небольшой корректировке isCheckmate() на проверку, не бьет ли черный король слона. Не было сложного. Нотация FEN очень понравилась. Придумал две одинаковых позиции, различие лишь в управляющем параметре (третий с конца), казалось бы... B7/p4ppp/p3p2n/3pPn1b/5bN1/8/2p2K2/r1R3rk w - - 0 1 B7/p4ppp/p3p2n/3pPn1b/5bN1/8/2p2K2/r1R3rk w - d6 0 1 В первом случае белым пора сдаваться. Во втором случае белые ставят мат в один ход слоном и конем, но пешкой:) |
|||
НаноШахматы PHP - Установка EasyPHP | + 19 | ||
Скачал и установил EasyPHP Запустил Http Server и Database Server. Заработало только после перезагрузки. |
|||
Шахматы по сети Доска. Подцеп фигуры | + 19 | ||
Cоздан коллайдер для всех фигур. Написаны вспомогательные функции: bool IsMouseButtonPressed(); void PickUp (); Vector2 GetClickPosition (); Transform GetItemAt (Vector2 position). В консоли названия фигур выводятся. Все начинает постепенно усложняться. |
|||
Мат Конём и Слоном Конь ходит буквой Гэ | + 18 | ||
Повторил методы onKing() и onKnight(). Мат двумя конями - проверил количество позиций. Было бы интересно решить задачу с двумя конями против черной пешки, там патовые идеи, для каждой из восьми пешек свои условия ничьи. Ознакомился с нотацией FEN. Написал метод getFEN(). Понял, что не работало в предыдущем задании. Курс все более нравится) Благодаря нахождению FEN удалось понять, что не работало в предыдущем уроке. Теперь подправил свой метод onBishop() и немного IsCheckmate(). Получается 232 мата, как в статье на хабре). Возможно медленнее работает чем в курсе будет далее (подсмотрел там что-то сложное:), но работает. |
|||
Мат Конём и Слоном Королевское правило | + 18 | ||
Написал методы onKing() и onKnight(), заготовку isCheckmate() После провального предыдущего урока, на котором я ошибся просто элементарно, попробовал все же самостоятельно написать onBishop() по-своему. И тоже неудача, получается 204 мата вместо требуемых 232. Написано криво, но вроде должно работать, не могу понять, где моя ошибка. Даже проверил решение 232, но это правильный ответ. Сутки потратил, сдаюсь пока, надо двигаться все же. А пока 7*4=28 матов теряются безвозвратно. |
|||
Шахматы по сети Доска. Состояния переноса | + 18 | ||
Рассмотрел состояния переноса. Создал скрипт, класс, перечисление конструктор и метод Action. Перенес скрипт в Board, запустил, проверил консоль Ничего |
|||
МикроШахматы ЧЕТВЕРТЬФИНАЛЬНЫЙ УРОК | + 18 | ||
Освоил немножко JavaScript и на последнем уроке FastStone Capture и Youtube. Отличный курс Не рокировать самому и не дать это сделать сопернику). Иначе запись партии сбилась бы. |
|||
Шахматы по сети Доска. Фигуры | + 18 | ||
Научился создавать проект в Unity. Создал доску, разместил фигуры, переименовал объекты. Не было сложного. Доска почему-то без координат, хотя в видео они есть. |
|||
Мат Конём и Слоном Перебор всех комбинаций | + 18 | ||
Научился перебору возможных позиций. Попробовал добавить проверку королей на соседних клетках. Получилось как-то много, без соседних королей осталось всего 6.750.748 комбинаций из 7.624.512. Проверял, 8 возможных клеток вокруг черного короля. На мой взгляд, не учтен ряд невозможных позиций с точки зрения правил шахмат. А именно: 1. Одновременный шах от слона и коня (не вскрытый) 2. Шах от слона с краю доски, когда слон блокирован. 3. Шах от коня с краю доски, когда конь блокирован, но не был превращен из пешки.. Пример на втором скрине. Т.е. число возможных позиций должно уменьшиться. |
|||
Дневник успеха 2018-08-05 Отчёт за неделю | + 18 | ||
Тяжелая неделя была, как и планировал, сделал мало, оценю свою работу плохо. 1. Завершил всю алгоритмику. 2. Сделал два урока всего - микрошахматы и мат слоном конем. На неделе 06-12 августа поставлю цель 1. Делать ежедневно по одному из трех купленных в связке уроков шахмат. Итого 21 2. Делать один урок курса мат слоном конем. Итого 7 3. Разобраться с мегахешами и начать их сбор. |
|||
Мат Конём и Слоном Постановка задачи | + 19 | ||
Посмотрел отчеты коллег к первому уроку. Ну вот, Евгений Витольдович так вежливо ставит задачу... а у вас одни маты...) Добавлю свой классический, если еще не было - белые начинают и ставят мат в 0.5 хода. Решение - приподнять коня. Самое сложное было поставить мат. И не в кабинетной тиши, а в реальной партии на флажке (оставалось чуть более минуты, добавления тогда сто лет назад еще не придумали). Удалось опозориться и не поставить мат - все потому, что не тренировал алгоритм дома. Думал не потребуется практически. Это была примерно 500-я турнирная партия в жизни, вот и считай вероятность такого эндшпиля. Помнил, что конь бегает буквой М и оттесняет короля в угол цвета слона, а на практике король просачивался на свободу, руки дрожали, судья считал ходы, паника...)) Соперник вскоре стал интермастером, но это так себе отмазка. Повторись сейчас ситуация, не реализовал бы снова) Вот защиту ладьей против ладьи+слона тренировал, и тоже встретилась, спас ничью. Вывод - только тренировки, только хардкор. |
|||
Алгоритмика Я решил всю Алгоритмику | + 18 | ||
Познакомился с C#. Старался решать все сам, без видео-подсказок. Пусть при этом код был слабый, но свой. Следующий курс точно шахматы) Пожалуй, сложнее всего было с задачами, касающимися DateTime. Ну и коэффициенты квадрата многочлена чуть подсмотрел, самую малость (в сети) |
|||
МикроШахматы Завершение хода | + 18 | ||
Реализовал три функции: click_box_to(); turn_move(); start(). разыграл микро-партию. Не было |
|||
Дневник успеха 2018-07-29 Отчёт за неделю | + 18 | ||
1. Проходил алгоритмику. Завершил 99% 2. Из шахмат выполнял пока только микро-шахматы. 3. Вступил а клуб KF Самоорганизация обучения в нерабочее вечернее время. Первый недельный отчет, не сравнить план-факт. Следующая неделя будет непростой, планы минимальные - 1 урок в день. |
|||
МикроШахматы Шахматные выборы | + 19 | ||
Добавил функцию onclick ко всем клеткам. Реализовал функции click_box(); click_box_from(); mark_moves_to(); can_move_to(). Добавил заглушку для click_box_to(). Не было сложного |
|||
МикроШахматы Фигурная перекличка | + 21 | ||
Добавил переменную move_color для хранения цвета хода. Реализовал функции mark_moves_from(); can_move_from(); get_color(). Ничего |
|||
МикроШахматы Светофор для фигур | + 19 | ||
Создал массив inf. Создал функцию init_inf(). Доработал функцию show_map() для отображения подсказок. Вызываю init_inf() после init_map(). Предложить свой вариант подсветки. |
|||
МикроШахматы Фигуры на доске | + 19 | ||
Убрал слово info под доской. Добавил функцию figure_to_html(). Добавил в нее фигуры HTML Unicode. Добавил возможность изменения размера и цвета. Не было сложного. |
|||
МикроШахматы Шахматные буквы | + 18 | ||
Создал функцию init_map(). Добавил буквы в массив. Добавил центровку фигур. Отобразил фигуры на доске. Ничего. |
|||
МикроШахматы Координатное поле | + 18 | ||
Добавил размеры [ширина, высота] для клеток. Раскрасил клетки доски (ферзь любит свой цвет). Добавил координаты (пока 0-7). Добавил заголовок. Подумать о стилях |
|||
МикроШахматы В начале было поле | + 18 | ||
Приспособил программу Sublime Text для набора html. Создал файл chess.html с доской. Под звездочками пока сложно. |
|||
Семантика Я решил всю Семантику! | + 18 | ||
Проходил курс почти с нуля. Научился обходиться без Ctrl+C, +V. Запоминал лексику и орфографию сишарпа. Очень хотелось перерешать несколько задач, но не позволяет) Не раздражаться из-за некоторых некорректно сформулированных задач. Календарь 1752 года испугался кодировать и просто напечатал. Посмотрел потом видео, оказалось все просто и кратко. Следующий курс - шахматы или алгоритмика, если по скидке) |
|||
Демо игры C# чего начать программировать | + 25 | ||
Хочу перезагрузиться и вновь заняться программированием. Стало интересно, а целью выбрал: создание шахматного сайта. |
|||
НаноШахматы HTML - Фигуры на Доске | + 19 | ||
Расставил начальную позицию классики. Ферзь любит свой цвет. Ничего. |
|||
НаноШахматы CSS - Шахматная доска | + 19 | ||
Рисовать доску. Неплохо получилось. PSPad некорректно отображал просмотр HTML-страницы. Пришлось открывать файл в Mozilla. |
|||
НаноШахматы HTML - Шахматные фигуры | + 18 | ||
Рисовать фигуры в HTML. Поверить, что фигурки рисуются так просто |
|||
Шахматы по сети Доска. Установка Unity 3D | + 25 | ||
Установил Unity, узнал как будет взятие на проходе на англ/французском. Ничего. 4 ошибки, скорость 170, 1 подход. |
|||
Шахматы по сети План Шахматного проекта | + 25 | ||
Отличному маркетингу от Евгения Витольдовича. Имею минимальные знания по C# и MS-SQL. В шахматах мастер фиде, аут - класс игры невысокий. Все сложно. Unity, ASP.NET и EF вообще не знакомы. |
|||
Игры со словами Игры со словами | |||
|
|||
Комбинаторика Рекурсия. Главный секрет | |||
|
|||
Демо софт Квадратный калейдоскоп | |||
|
|||
Демо софт Вступительное слово | |||
|
|||
Нано-игры Арканоид - Шарик и кирпичики | |||
|
|||
Нано-игры Арканоид - Уровень и ракетка | |||
|
|||
Карточки памяти Подготовка формы | |||
|
|||
Демо игры Картинка с секретом | |||
|
|||
Нанософт Твоё портфолио | |||
|
|||
Игры со Спрайтами Спрайт. Первая форма | |||
|
|||
Базовый ASP.ект Работа над ошибками | |||
|
|||
Игры на JavaScript Запуск JavaScripta | |||
|
|||
Судоку Печать цифр в таблице | |||
|
|||
Портфолио на Bootstrap Презентация курса | |||
|
|||
Демо софт Вам телеграмма! | |||
|
|||
ASP.NET и GMaps Презентация | |||
|
|||
JD. Коллекции LIST - Просто коллекция | |||
|
|||
Java Book Вступление - Язык UML | |||
|
|||
MVC шаблон MVC - Counter - ViewFrame | |||
|
|||
Знакомство с jQuery Суть библиотеки jQuery | |||
|
|||
С++ Графика - обрезка изображений Презентация курса | |||
|
|||
Мультиязычное меню на JS Документы и ключ | |||
|
|||
Yii2 Rules - Валидация без правил | |||
|
|||
PHP фреймворк Yii2 - вторая часть Welcome - Вступление | |||
|
|||
J7. Экзамен EGZ - Зачётная задача - Евро | |||
|
|||
Невидимка Кто такая C# Невидимка? | |||
|
|||
Web API Создание Web API проекта | |||
|
|||
Лендинг на YII2 О лендингах и фреймворке | |||
|
|||
Дневник успеха 2018-06-10 Отчёт за неделю | |||
|
|||
PHP графика Где находится библиотека | |||
|
|||
Дневник успеха 2018-07-22 Отчёт за неделю | |||
|
|||
Система Git hippo git fetch pull | |||
|
|||
Начало здесь День №8. ВИДЕОФИКСАЦИЯ УСПЕХОВ. | |||
|
|||
Записи вебинаров Шахматный клиент-сервер. Часть 1. Программирование шахматных правил | |||
|
|||
Записи вебинаров GIT-практикум | |||
|
|||
Записи вебинаров Создание web-сайта с географической базой данных фотографий | |||
|
|||
Клиент-серверный сокет Клиент-серверный диалог | |||
|
|||
Bootstrap-4 первые шаги Погружение в проект | |||
|
|||
Записи вебинаров Создание web шахмат на HTML, JavaScript и PHP | |||
|
|||
Платформер на Unity 1. Вступление | |||
|
|||
Весёлая семейка Web-Мастера HTML | |||
|
|||
Python3: математика Погружение в python3 | |||
|
|||
Записи вебинаров Голосовое управление на C# | |||
|
|||
Доска объявлений О проекте и про инструменты | |||
|
|||
Доска объявлений Создание проекта YII2 | |||
|