Online обучение c#

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Статистика по видеоурокам

  • Всего просмотрено уроков: 45
  • Всего выполнено уроков: 44

Отчёты по видеоурокам

Дата Видеоурок Результат
2017-05-11 01:48 Теория ООП Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. + 17 1 час. 00 мин.
Записывать видео обзор. Находить альтернативные пути реализации частей программы.
Записать видео обзор.
У меня несколько другая реализация класса Crosser и есть дополнительные проверки на пересечение кружков и прямоугольников. Подробности в видео и на скриншоте.
Хочу сказать огромное спасибо Евгению Витольдовичу за проект видеошарп и этот видео курс. Очень полезный, считаю, что его должен пройти каждый. На практике видишь те вещи, о которых до этого только в книжках читал. Появляются силы и уверенность в себе. Все объяснено очень подробно, вопросов возникает мало, но думать самому все же приходится! Дальше планирую переключиться на изучение Unity3d.
Еще раз спасибо!
2017-05-09 22:18 Теория ООП Интерфейс. VIP. Пересечение прямоугольников. + 16 20 мин.
Все прокачиваю главный навык - думать
Понять Cross
Все хорошо
2017-05-09 21:27 Теория ООП Интерфейс. VIP. Квадратики тоже хотят играть. + 16 30 мин.
Реализовал все сам, кроме метода поймал, только потом посмотрел видео урок. Получилось чуть чуть иначе и не так красиво, но сразу сделал бегающими и квадраты и кружки.
Заставлять себя много думать)
Все хорошо
2017-05-09 10:34 Теория ООП Интерфейс. ФИНАЛЬНЫЙ УРОК. + 1 15 мин.
На этой серии уроков я сделал шаг вперед к абстрактному мышлению, понял как устроены интерфейсы и для чего они нужны.
Периодически приходилось выполнять программу пошагово, чтобы лучше понять логику.
Все очень хорошо, все понятно. Приятно проходить этот курс. Ранее невиданные звери становятся вполне домашними. Дальше пройду последние три урока и потом хочу начать изучение Unity.
Спасибо за уроки!
2017-05-08 16:29 Теория ООП Интерфейс. Создаём новую игру. + 16 30 мин.
Не наследовать все подряд
Ничего
SetNewVirus будет делать кружок красным, не делая синим предыдущий
FindNewVirused не знаю
2017-05-08 15:37 Теория ООП Интерфейс. Изменяем правила игры. + 16 20 мин.
Окончательно разобрался с логикой программы
Ничего
Голя морозит тех, кого заляпал и их цвет остается красным.
2017-05-08 13:29 Теория ООП Интерфейс. Кружочки гоняются друг за другом. + 16 30 мин.
Работе с таймером
Найти ошибку
Не знаю, что нужно сделать дальше. Окончательно запутался логике игры) Надо посидеть поразбираться.
2017-05-08 12:41 Теория ООП Интерфейс. Кружок готов к игре! + 16 30 мин.
Новому ничему
Ничего
Заставить шарики бегать
2017-05-08 10:49 Теория ООП Интерфейс. Кружок хочет играть. + 16 20 мин.
Лучше понял, зачем нужен интерфейс.
Ничего
Метод беги будет изменять координаты кружков и использованием таймера.
Поймал будет становиться true если красный кружок задел синий.
2017-05-08 09:59 Теория ООП Интерфейс. Запускаем кружки на площадку! + 16 30 мин.
Познакомился с методом Refresh
Найти иконку
Все понятно
2017-05-08 09:16 Теория ООП Интерфейс. Кружок на площадке. + 16 25 мин.
Вспомнил, как использовать Random
Ничего
Все хорошо
2017-05-06 13:47 Теория ООП Интерфейс. Площадка для игры. + 16 20 мин.
Познакомился с полем Size
Ничего
Класс арена нужен для того, чтобы обозначить пространство, где будут перемещается шарики.
2017-05-06 13:15 Теория ООП Интерфейс. Создаём кружок. + 16 15 мин.
Ничему новому
Ничего
Заставить кружок двигаться
2017-05-06 10:06 Теория ООП Интерфейс. Алгоритм игры. + 16 15 мин.
Ничему новому
Пока не совсем понятна логика программы. Но дальше поди понятнее станет
Визуализировать игру.
2017-05-06 09:06 Теория ООП Интерфейс. Правила игры. + 16 30 мин.
Думать абстрактно
Ответить на вопросы
Думаю, что методы должны выглядеть следующим образом:
private void FindNewLeader()
Должен проверить список на предмет Поймал / не поймал

private void SetNewLeader(Player gamer)
Должен вызывать метод Голя()
2017-05-06 08:23 Теория ООП Интерфейс. Зачем он нужен. + 16 15 мин.
Создавать интерфейс
Ничего
Все ок
2017-05-05 16:13 Теория ООП ПОЛУФИНАЛЬНЫЙ УРОК. + 16 30 мин.
На практике научился применять все то, что читал в книге, касаемо ООП. Посмотрел на то, как работает инкапсуляция, полиморфизм, наследование. 
Так и не понял, зачем каждый раз для новой фигуры присваивать graphics. Ну и вообще плохо разобрался с graphics, bitmap, picture. Но это вопросы не этого курса, так что все в порядке.
Местами становилось скучновато. Очень ждал, когда закончится работа со снеговиками, чтобы по своему переделать программу. Очень мне не нравилось наличие двух классов для одного и того же, цветных и черных фигур. Ведь по сути в первом случае задается цвет, во втором он просто "стандартный".
Избавился от дублирующих классов при помощи необязательных аргументов. Хотя не так просто оказалось это, т.к. Color вычисляется в процессе выполнения программы, а не на этапе компиляции. А необязательные аргументы должны быть известны на этапе компиляции. Выход из ситуации нагуглил.
В итоге к главному конструктору каждой фигуры надо добавить Color? color = null. А в тело конструктора pen = new Pen (color ?? Color.Black). Тогда все работает. Цепочку конструкторов изменить соответствующим образом.
Пример конструктора для Line:
public Line (Pixel start, Pixel end, Color? color = null)
        {
            this.start = start;
            this.end = end;
            pen = new Pen(color ?? Color.Black);
        }

Курс отличный, спасибо! Продолжаю изучать.
2017-05-05 14:20 Теория ООП Перемещение Снеговиков + 16 20 мин.
Разобрался получше с методом Move.
Ничего
По сути Move ничего не перемещает, а только задает координаты смещения. Перемещает Draw, т.е. рисует того же снеговика с поправкой координат.
2017-05-05 14:01 Теория ООП Перемещение других фигур + 16 20 мин.
Перемещать фигуры
Ничего
Все хорошо
2017-05-05 12:16 Теория ООП Перемещение круга + 17 20 мин.
Работе с кнопкой
Ничего
Все хорошо
2017-05-05 10:05 Теория ООП Спрайт для Снеговика + 16 30 мин.
Работать с List
Найти ошибку, т.к. немного по-другому изначально прописывал graph.
Все понятно
2017-05-05 08:52 Теория ООП Мощь полиморфизма + 16 15 мин.
Перегружать методы используя полиморфизм.
Ничего
Все понятно
2017-05-03 22:37 Теория ООП Переезд graph в базовый класс + 16 25 мин.
Разобрался с наследованием методов
Ничего
Все понятно
2017-05-03 12:26 Теория ООП Переезд метода Draw + 16 15 мин.
-
Ничего
Все понятно
2017-05-03 11:29 Теория ООП Приведение с мотором + 16 20 мин.
Получать типы классов и сравнивать их.
Ничего
Для определение позиции фигуры относительно нуля координат.
2017-05-03 10:57 Теория ООП Фигуральный базовый класс + 16 30 мин.
Наследованию
Придумать ответ на вопрос
По сути функция Draw (Shape shape) и не нужна. Необходимо выполнять проверку типа if (SnowMan1[i] is ФИГУРА) и тогда рисовать часть снеговика с приведением к нужной фигуре.  Draw((ФИГУРА)(SnowMan[i]);
2017-05-03 08:28 Теория ООП Богатое наследство + 16 15 мин.
Использовать наследование
Ничего
Наследование - это принцип в ООП, согласно которому можно создавать иерархии классов, причем подклассы имеют все те же члены и методы, что и родительский класс. Таким образом подклассы расширяют функциональность базовых классов.
2017-05-02 23:01 Теория ООП Второй Снеговик + 16 20 мин.
-
Писать ответы.
1. Создать метод в каждом классе, который изменял бы координату Х при нажатии клавиш влево вправо.
2. Найти центр снеговика - центр поворота.  Написать методы в каждой фигуре, которые при нажатии клавиши R увеличивают координату X и Y так, чтобы фигуры двигалась по окружности. Координаты высчитывать из уравнения окружности. Если все фигуры будут одинаково вращаться по окружности - снеговик будет вращаться. Для кнопки L тоже самое но координаты вычитать.
3. Написать методы, которые будут увеличивать координаты пикселей.
2017-05-02 22:20 Теория ООП Рисуем Снеговика + 16 20 мин.
Подключать линейку в пейнте
Ничего
Все хорошо
2017-05-01 16:20 Теория ООП Цветные карандаши + 16 25 мин.
Ничему новому пока
Ничего
Все понятно
2017-05-01 13:59 Теория ООП Расстояние между пикселями + 16 15 мин.
Писать метод в структуре, который использует внутренние переменные и переменные этой же структуры, но другого экземпляра.
Ничего
Все понятно.
2017-05-01 12:02 Теория ООП Пиксели для классов + 16 20 мин.
Использованию цепочки конструкторов.
Ничего
То, что пытался сделать 2 урока назад сам, но не смог, сделал тут. Отлично!
2017-05-01 11:25 Теория ООП Структура vs Класс + 16 40 мин.
Понял различия между классом и структурой.
Ничего
Все хорошо
2017-05-01 10:02 Теория ООП Структура пикселя + 16 40 мин.
Создавать структуры, перегрузки для конструкторов. Попытался упростить создать цепочку конструкторов через this:()
но не получилось, здесь это не уместно.
Найти ошибку. Определял фигуры до определения точек.
Все отлично.
2017-04-24 01:01 Теория ООП Круглый класс + 16 15 мин.
Рисовать круг. Немного поигрался с this и его применением. Стали понятнее некоторые вещи.
Ничего.
Все отлично, все понятно. Ответы на возникшие вопросы нашел сам.
2017-04-24 00:37 Теория ООП Второй класс + 16 20 мин.
Подкрепил практикой полученные знания.
Ничего.
Я в восторге! Только читал об этом в книге - бам, все это же самое применяешь на практике. И уже сам разбираешься в структуре программы. Что такое класс, как он определен. Различаешь конструкторы, публичные, приватные переменные, методы... Короче все то, что казалось чем-то совершенно неясным (когда решал консольные задачки), становится доступным, чувствуешь прогресс и от этого прет))
Большое спасибо за уроки, особенно формат по 10 минут, очень удобно.
Троелсен  + ваши видеоуроки очень плотно засаживают информацию в голову! Спасибо!
2017-04-23 16:36 Теория ООП Первый класс + 16 30 мин.
Создавать классы. Понял, чем отличается public от private.
Найти ошибку)
Ура! Очень рад этому уроку, начали открываться непонятные мне вещи... Чую дальше будет еще интереснее. Всем рекомендую совмещать видеокурсы с чтением Троелсена!
2017-04-23 15:04 Теория ООП Урок рисования + 1 15 мин.
Создавать PictureBox и рисовать в нем.
Разобраться что есть Bitmap и Graphics и как ими пользоваться.
Все хорошо.
2017-04-07 01:20 Нано-игры Арканоид - Уровень и ракетка + 16 1 час. 20 мин.
Увидел, как в реальной программе вызываются функции и передаются параметры. Ну и вообще перенос того, что было в консоли в оконное приложение.
Пока ничего
Не понимаю, почему если изменить вот эту часть кода:
private void shift_racket (int sx)
        {
            int ax1 = racket_x + sx;
            int ax2 = ax1 + racket.Width;
            if (side_lx > ax1) ax1 = side_lx;
            if (side_rx < ax2) ax1 = side_rx - racket.Width;
            racket_x = ax1;
            racket.Location = new Point(racket_x, racket_y);
        }
Вот так:
private void shift_racket (int sx)
        {
            int ax1 = racket_x + sx;
            int ax2 = ax1 + racket.Width;
            if (side_lx > ax1) ax1 = side_lx;
            if (side_rx < ax2) ax1 = side_rx - racket.Width;
            racket.Location = new Point(ax1, racket_y);
        }

То программа работает не правильно. Если мы последним действием внутри функции просто передаем значение уже существующей переменной, то почему нельзя просто использовать эту переменную. Не понимаю. Но, иначе не работает)
Спасибо за урок!
2017-04-04 10:30 Теория ООП Инкапсуляция мечты + 16 20 мин.
Попытался понять, что такое инкапсуляция.
Понять что такое инкапсуляция. Гуглил.
Инкапсуляция это когда мы в одном объекте заключаем много различных свойств. То что я понял) Но конкретно, что это значит, я не понимаю пока) Дальше разберусь)
2017-03-26 13:51 Семантика Я решил всю Семантику! + 16 24 час. 00 мин.
Базовые навыки работы с С#

Задача рулетка и задача в разделе Календарь - Послезавтра.

Елена очень плохо объясняет задачи в разделе Календарь.
Следующим курсом будет Алгоритмика. Хочу так же все пройти.
2017-03-02 20:12 Демо игры Лабиринт 2D - меню + 1 1 час. 00 мин.
Работе со звуком
Пока ничего
Немного непонятно система обучения. Здесь рассматриваются только практика, теории нет совсем?
Т.е. предполагается, что такие понятия как классы, переменные и т.п. и синтаксис языка необходимо отдельно изучать?
2017-03-02 02:38 Демо игры Картинка с секретом + 16 1 час. 00 мин.
Работе с формой, немножко синтаксису.
Все легко пока
Все хорошо)
2017-03-01 23:07 Демо софт Вступительное слово   30 мин.
Отправлять отчеты о заданиях. Visual Studio уже установлена была)
Пока ничего
Изначальная цель - научиться создавать приложения, игры в виртуальной реальности. Скачал Unity. Начал проходить первый урок, создание игры Roll and boll. Понял, что без базовых навыков C# будет трудновато. Хоть там в видеоуроках и объясняется создание кода, по моему мнению, это заход с какой-то другой стороны к языку программирования. Кроме того, хочу уметь создавать сайты. Итак, цели две:

1. Создавать сайты.
2. Создавать игры VR в Unity.
  Нано-игры Арканоид - Шарик и кирпичики   Открыто


Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Использовать наследование
Наследование - это принцип в ООП, согласно которому можно создавать иерархии классов, причем подклассы имеют все те же члены и методы, что и родительский класс. Таким образом подклассы расширяют функциональность базовых классов.


1. Создать метод в каждом классе, который изменял бы координату Х при нажатии клавиш влево вправо. 2. Найти центр снеговика - центр поворота. Написать методы в каждой фигуре, которые при нажатии клавиши R увеличивают координату X и Y так, чтобы фигуры двигалась по окружности. Координаты высчитывать из уравнения окружности. Если все фигуры будут одинаково вращаться по окружности - снеговик будет вращаться. Для кнопки L тоже самое но координаты вычитать. 3. Написать методы, которые будут увеличивать координаты пикселей.