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

Формула программиста
основатель — Волосатов Евгений Витольдович

Бурные потоки

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

10 миниуроков.
2 часа 18 минут.
Доступ на 15 дней.

2,000 руб.


Для подписки на пакет необходимо авторизоваться.

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

# Название видеоурока Решило Рейтинг Доступ
1 Вступление 00:14:56 27 чел. ★ 4.9 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: узнал про потоки 
Сложности: придумать какие будут еще статические классы 
Комментарии: статически количество питонов статическое время жизни питона рандом статический для появление еды и самих питонов  
2 Террариум 00:13:24 26 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 15 мин. [Показать отчёт]
Научился: узнал какие статические методы нужны для питона, создать стенку 
Сложности: нечего 
Комментарии: написал метод AddHere он просто добавляет одного зайчика но этот метод или его вызов должен быть в цикле и в отдельном потоке наверное 
3 Зайчики 00:13:40 26 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: реализовал методы для добавления кролика о которых я не подумал просто добавил одного зайчика и наверное для галочки и все  
Сложности: ответить на вопрос 
Комментарии: массив координат питона, направления, цвет, координаты съеденной еды для увеличения питона, номер потока красиво вышло зайчики на экране  
4 Питонатор 00:15:34 26 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 15 мин. [Показать отчёт]
Научился: узнал какие поля будут у питона 
Сложности: нечего сделал метод для отображения питона но наверное неправильно  
Комментарии: зачем делать приватным конструктор? для вызова там в питона в потоке?  
5 Поворот головы 00:20:51 25 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 30 мин. [Показать отчёт]
Научился: узнал и написал методы для движения питона узнал про оператор сложения как можно складывать удобный метод применил enum как числа и тоже самое с цветом консоли 
Сложности: найти ошибку было в методе Step при переписывание забыл знак ! поставит в If  
Комментарии: все понравилось оживил питонов и они двигаются все на скрине как их оживил  
6 Поток питонов 00:17:02 25 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: запустил питонов в потоке 
Сложности: нечего 
Комментарии: думал сложнее будит при запуске 100 потоков все ядра процессора используются  
7 Бурная жизнь 00:14:56 25 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 1 час. 00 мин. [Показать отчёт]
Научился: дописал методы 
Сложности: добавить свое 
Комментарии: хотел добавить жизнь питона если неест там 50 ходов то теряет хвост пока неумерает и если сьел то добовляется +50 ходов несовсем получилось это сделать как хотел умерали но оставляли артефакты и дублировали хвосты  
8 Приоритет 00:14:20 24 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: узлал про монитор про приоритеты потоков 
Сложности: нечего 
Комментарии: нету 
9 Замри! 00:17:49 23 чел. ★ 4.9 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 20 мин. [Показать отчёт]
Научился: узнал о статусах потока, остановил и занава запустил поток 
Сложности: понять почему медлиней программа работает что за причины  
Комментарии: хороший урок 
10 Смысл жизни 00:09:16 22 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 10 мин. [Показать отчёт]
Научился: сделать завершения потока 
Сложности: нечего 
Комментарии: жаль что курс кончился с завершениям потока спасибо за курс 
11 ФИНАЛЬНЫЙ УРОК 22 чел. ★ 4.8 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 10 мин. [Показать отчёт]
Научился: Узнал как в с# используются потоки  
Сложности: исправлять свои недочеты 
Комментарии: Очень классное знакомство с потоками было на примерами питонов Вот бы так в университете приподовалибы Спасибо за курс 
12 VIP. Игры со словами 01:06:32 5 чел. ★ 5 Done
  Отчёт отправил: 5649. Максим Лапшинов Решено за 2 час. 00 мин. [Показать отчёт]
Научился: Узнал какие игры есть со словам и написал интересно было почитать слова. узнал про StringBuilder и применил (раньше тоже знал но не приходилось использовать) про textWords.Lines.Length не знал а сейчас знаю Написал сперва сам алгоритм "Сложный Эрудит" как по мне более простой но не очень его можно наверное улучшать и изменять (скрин алгоритма прикреплен) 
Сложности: Было сложно игры в города найти в чем ошибка А ошабка была что я написал: string first_letter = "A"; а надо было написать : string first_letter = "А"; кто не догадался ошибка в том что я написавший был английскую А букву а надо было русскую. Сам не заметил что английская букву написал я. 
Комментарии: count.ToString() не обезательно уже писать если идет + строка слов вы там уже сами устали на сложном эрудите linq это уже отдельная и интересная тема можно отдельный курс сделать по linq Мне linq понравилось применять его в запросах к базам данных хорошая связь идет таблиц и надо намного меньше кода писать чем в sql, но есть и минусы его по отношению к sql запросам сложным и производительности Увы так вышло что смог выполнить этот урок за пару вечеров только. 
  Итого:   12 видеоуроков общей продолжительностью 3 час. 38 мин. 5 чел. ★ 4.97  
  Финалисты:   Максим Лапшинов,   Андрей Н.,   Новопашин Владимир,   Сергей Соколов,   Артём .

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




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Обдумывать отзыв о курсе.
Трудности: Ничего.
Курс в целом, конечно, понравился. Он дал мне начальные сведения о способе организации потоков в программе. Но когда был анонс курса, я ожидал немного большего. На мой взгляд не слишком яркий пример для работы с потоками (вроде как бы создали потоки, они работают (питоны бегают) себе, а вот когда есть польза (или необходимость) разделять свою программу на потоки - не сказано). Например, если происходит запись данных из приложения в файл, базу данных (нужны ли отдельные потоки?), получение данных из интернета и т.д. В любом случае, за ваш труд, Евгений Витольдович, большое спасибо!!!
Научился: Повторил то, что знал о потоках и предназначении static, узнал о приоритетах потоков и Monitor
Трудности: Ничего
Этот курс, как и другие в этой серии (других я не проходил), получился просто замечательный, особенно в плане визуализации. Но, в отличии от других, в этот раз это больше замечательная заготовка (для обучения и демонстрации работы с потоками). Сейчас попытаюсь объяснить. Я заметил, что все курсы из линейки "Професишарп" связаны: после того, как в первом мы во всех подробностях рассмотрели IEnumerator, с лёгкостью использовали его во втором, для создания класса работающего с графами, который, я надеюсь, очень пригодится нам здесь для того, чтобы змейка, например, шла к ближайшему зайцу. Как бы то ни было, в этом курсе заметно, что он третий подряд. За одну неделю одному человеку практически невозможно подготовить такую обширную тему, как потоки, тем более с такой потрясающей визуализацией. Теперь о самом курсе. Если вы ничего не знаете о потоках, лучше сначала пройдите урок "Нити на кубиках" (videosharp.info/video/soft2/nr=62), так как курс называется "Професишарп" и подразумевается, что что-то мы таки знаем =) Что же мы делали на этом курсе? Как я уже сказал большую его часть заняла визуализация, но она полностью стоила того, чтобы потратить на неё столько времени, но, естественно, это не всё. Также мы довольно детально рассмотрели подводные камни, которые встречаются, когда вы хотите, чтобы один объект работал в нескольких потоках, такие как: использование ключевого слова static и механизмы для синхронизации доступа к объектам lock и Monitor. Кроме этого, мы узнали, как задавать потоку определённый приоритет, что это даёт, как прерывать потоки извне, как обрабатывать это прерывание в самом потоке и как один поток может ожидать завершения другого (но, я считаю, что на последнее было выделено мало времени). Как видите, получился с одной стороны не длинный, и с другой стороны довольно насыщенный курс, и хотя довольно много всего было рассмотрено, почти всё это основы, так сказать база, без которой возможно рассматривать потоки на более глубоком уровне; вот почему, я считаю, что то, что есть на данных момент - это замечательный шаблон, взяв который который за основу можно ещё очень много сделать. С другой стороны, я и сам не знаю, что находится на этом "более глубоком" уровне, да и есть ли он вообще, так что вполне могу ошибаться на счёт всего этого. Но, в любом случае, с нетерпением жду продолжения =)