Курсы на программиста

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

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

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Вступление 00:14:56
1 тест
64 чел. ★ 5 Done
  На этом уроке мы сделаем небольшое теоретическое введение в потоки
и начнём создавать консольное приложение с самодостаточным классом
для Питона.
Вопрос: какие ещё статические поля нужно добавить в класс Питона?
Отчёт отправил: 13665. Денис Выполнено за 27 мин. [Показать отчёт]
Научился: Реализовал структуру для хранения координат 
Сложности: Сложностей не было 
2 Террариум 00:13:24
61 чел. ★ 5 Done
  На этом уроке мы подготовим экран для наших питонов.
Сделаем по краям стенки, чтобы они не уползли.
Напишем функцию для сохранения и отображения символов.
* Создайте метод AddHare() для добавления зайчика.
Отчёт отправил: 13665. Денис Выполнено за 28 мин. [Показать отчёт]
Научился: Дописал функцию для отображения элемента на консоле. На основе этой функции написал функцию для отображения зайчиков на консоле 
Сложности: Сложностей не было 
3 Зайчики 00:13:40
60 чел. ★ 5 Done
  На этом уроке мы напишем статический метод для добавления зайчика на поле.
Для этого нам потребуется несколько вспомогательных методов,
которые окажутся полезными и в других частях нашей программы.
В конце урока мы выведем на экран сотню зайчиков :)
Ответить на вопрос: какие не статичные поля нужны питону?
Отчёт отправил: 13665. Денис Выполнено за 27 мин. [Показать отчёт]
Научился: Проверил реализацию функции добавления нового кролика. Моя реализация получилась довольно похожа, единственное, что я исправил, так это поразбивал некоторые функции на части, так как в уроке это было сделано более удачно) 
Сложности: Сложностей не было 
4 Питонатор 00:15:34
60 чел. ★ 5 Done
  На этом уроке мы опишем нужные поля для нашего питона
и создадим статическую функцию для создания его экземпляра.
Также нам понадобится конструктор, который мы сделаем приватным.
Отчёт отправил: 13665. Денис Выполнено за 1 час. 12 мин. [Показать отчёт]
Научился: Добавил поля которые буду различаться для разных питонов 
Сложности: Сложностей не было 
5 Поворот головы 00:20:51
59 чел. ★ 4.9 Done
  На этом уроке мы сделаем отображение питона,
поворот его головы и передвижение по экрану.
* Оживить питонов самостоятельно.
Отчёт отправил: 13665. Денис Выполнено за 1 час. 46 мин. [Показать отчёт]
Научился: Для движения как я понимаю, нужно создать массив наших питонов, что бы к ним был доступ. Далее можно вызывать в цикле в таймере функцию Step, но тогда они будут двигаться по очереди а не одновременно. Тут нужно использовать потоки 
Сложности: Сложностей не было 
6 Поток питонов 00:17:02
58 чел. ★ 4.9 Done
  На этом уроке мы наконец-таки займёмся потоками.
Запустим наших питонов сначала в одном потоке,
а потом в отдельных - нам понадобится метод Run().
Создадим критическую секцию через lock.
Протестируем режим Foreground/Background режимы.
Отчёт отправил: 13665. Денис Выполнено за 29 мин. [Показать отчёт]
Научился: Написал функцию для запуска. Добавил потоки + критическую точку. Сделал потоки фоновыми. 
Сложности: Сложностей не было 
7 Бурная жизнь 00:14:56
57 чел. ★ 4.9 Done
  На этом уроке мы допишем класс питон и получим эстетическое удовольствие
от созерцания нашего террариума с нашими Питонами и Зайцами.
* Придумать свою фишку и реализовать, написать, что сделал.
Отчёт отправил: 13665. Денис Выполнено за 45 мин. [Показать отчёт]
Научился: Дописал функцию Step(). Также доделал автопоявление зайцев. Как было предложено, добавил для каждого питончика хвост в виде звездочки 
Сложности: Сложностей не было 
8 Приоритет 00:14:20
54 чел. ★ 5 Done
  На этом уроке мы поиграемся с приоритетом потоков,
воспользуемся монитором для создания критической
секции, выведем на экран легенду потоков с id.
Отчёт отправил: 13665. Денис Выполнено за 23 мин. [Показать отчёт]
Научился: Узнал что кроме lock можно использовать Monitor 
Сложности: Сложностей не было 
9 Замри! 00:17:49
53 чел. ★ 4.8 Done
  На этом уроке мы поговорим о статусах потока:
Unstarted, Running, Wait/Sleep/Join, Abort Requested, Stopped.
Создадим функционал для остановки потоков по нажатию клавиш.
И научимся сопротивляться этим остановкам.
Отчёт отправил: 13665. Денис Выполнено за 45 мин. [Показать отчёт]
Научился: Научился останавливать поток, а также обрабатывать исключение, которое при этом происходит. Заметил одну ошибочку: если останавливать питона, то его хвост(последняя часть тела) не всегда перекрашивается в фоновый цвет. Скорее всего это происходит по той причине, что прерывание потока происходит до того, как мы закрашиваем хвост. По этому в том месте тоже нужно добавить блок try/finally 
Сложности: Сложностей не было 
10 Смысл жизни 00:09:16
51 чел. ★ 5 Done
  На этом уроке мы сделаем красивое завершение потока.
Также добавим крестики на экран для "логичного" завершения жизни питона.
Смысл жизни - в самой жизни, каждый питон это понял, а ты?..
Отчёт отправил: 13665. Денис Выполнено за 29 мин. [Показать отчёт]
Научился: Добавил красивое завершение жизни питонов. Только добавил от себя, что при смерти от питона остается одна единица тела, что бы можно было увидеть где он умер (+ получается дополнительная приграда) 
Сложности: Сложностей не было, единственное жаль, что про потоки как-то поверхностно рассказано, но с другой стороны, толчек был дан, а дальше можно и самостоятельно изучать) 
11 ФИНАЛЬНЫЙ УРОК без видео
46 чел. ★ 4.8 Done
  Поздравляю с окончанием миникурса "Бурные потоки".

Напиши, пожалуйста, отзыв об этом курсе.
Что тебе понравилось, что было сложным, что новым,
что можно было бы сделать лучше.

Ты молодец!

Какой курс ты будешь проходить следующим?
Отчёт отправил: 13665. Денис Выполнено за 4 мин. [Показать отчёт]
Научился: В этом курсе я узнал о потоках, а также поработал с ними на практике. Также, я подчеркнул некоторые моменты в реализации алгоритма змейки (к примеру, когда я давным давно его реализовывал, то хранил каждую часть тела как некую структуру, в которой хранятся ее координаты, ... После чего полностью перерисовывал змейку. Тут же я понял, что этот же результат можно получить гораздо проще). В общем же курс просто великолепен, для тех кто хочет познакомиться с потоками и понять смысл в общих чертах. 
Сложности: Сложностей не было 
12 VIP. Игры со словами 01:06:32
25 чел. ★ 4.8 Done
  Если есть файл из 27000 слов, то с его помощью можно сделать очень много интересного.
На уроке мы ищем палиндромы, детские слова и анаграммы.
Хорошее подспорье для игры Эрудит.
Отчёт отправил: 13665. Денис Выполнено за 1 час. 17 мин. [Показать отчёт]
Научился: Поскольку этот урок я уже проходил раньше, то этот раз я решил обновить то, что уже было написано. Я добавил класс textEditor, в который можно добавлять различные движки, типа PolindromEngine. Далее я добавил класс WordContainer, который хранит слова в виде строки с переносами на новую строчку, а также их количество. Также реализовал для каждого класса необходимые интерфейсы. Переписал тот код, что был  в стиле ООП 
Сложности: Сложностей не было 
  Итого:   12 видеоуроков 3 час. 38 мин.
1 тест
25 чел. ★ 4.93  
  Финалисты:   Максим Лапшинов,   Андрей Н.,   Новопашин Владимир,   Сергей Соколов,   Артём,   Елена,   Станислав,   Алексей|BrisK|Кривицкий,   Yefim,   Сергей,   Tekashnik,   Алексей Малышев,   Александр,   Sergio,   Денис,   chokayes,   Николай Денисов,   ser2018,   Иван Воронин,   Max,   Кирилл,   Дмитрий,   Anatoli,   Алексей В.,   MaxB .

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





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

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

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

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


Научился: Подведение итогов о проделанной работе.
Трудности: Сложностей не возникало, так как с нами был на протяжении всего курса Евгений Витольдович)
Курс бурные потоки проходится на одном дыхании. В курсе десять не больших, но очень информативных уроков, на которых мы разобрали потоки на примере, создании игры. С нуль создали игровое поле, написали "питончиков", научили их передвигаться, расти поедая (" " "), реализовали достойное завершение жизненного цикла наших питомцев. Кто не проходил всем настоятельно рекомендую. Ещё раз спасибо Евгению Витольдовичу за этот курс!!!


Научился: Сверху посмотрел на работу с потоками
На удивление в курсе про потоки им посвящено довольно мало времени. Я ожидал, что тут будет более улубленная информация, а в итоге вот поток его можно блокирова, можно завершать и все...