Си шарп с нуля

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

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

Дмитрий
  • Звание: Алгоритмист
  • Накопленный опыт: 138 часов
  • Баланс Мегахешей: собрано 0 Mh, потрачено 0 Mh
  • Баланс Байтов: нет
  • Не состоит в «Клубе формулистов»
  • Последний визит: 2019-08-05 06:18:54
  • Город проживания: Кинешма

Видеокурсы

Дата активности Видеокурс Прогресс
2016-05-03 thread Бурные потоки 11 из 12 92 %
2016-04-21 iterator Итератор 9 из 10 90 %
2016-04-21 soft3 Теория ООП все 39 100 %
2016-04-20 game7 Морской флот все 51 99 %
2016-04-18 graf Коллекция графов все 19 100 %
Итого: 129 из 131 99 %

Консольные задачи

Дата активности Консольный раздел Прогресс
2016-03-22 task1 Семантика все 6 100 %
Итого: все 6 100 %
Сохранить страницу:

24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Бурные потоки / Бурная жизнь / 2016-05-02 19:49

Дима сделай пошаговую отработку через брекпоинт!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Бурные потоки / Питонатор / 2016-05-02 19:36

Дима, Молодец! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Бурные потоки / Вступление / 2016-05-02 17:26

Дмитрий, поздравляю с началом увелекательного и полезного миникурса! Рада что ты уже получил важные знания! :)


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Бурные потоки / Бурная жизнь / 2016-05-01 20:30

Видимо Create вернуло null. Почему? Не знаю.


1947. --
Denis
Denis
ответить
→  Дмитрий  # Теория ООП / Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. / 2016-04-21 10:55

Хороший обзор. Единственное, можно было не демонстрировать изменения в коде, а сделать это настройками самого приложения! Мне кажется, так было бы еще интереснее!


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий   / 2016-04-21 10:31

Конечно там маловато.
Но если ты ничего ещё не знаешь, то с чего-то надо начать.
И преимущества этого курса в том, что здесь конкретный пример, а не скучная непонятная теория.


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов   / 2016-04-21 10:27

У меня есть планы по созданию сайта (очень сложного). Хочу выбрать asp.net mvc. Но боюсь что в местном курсе маловато дано знаний для моей задумки (судя по списку уроков), но все равно буду начинать изучать отсюда, а дальше буду искать что-то большее.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. / 2016-04-21 09:12

Дима, шикарный видеообзор!
Ты молодец :) Рад твоим успехам.
Что дальше будешь проходить?


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / ФИНАЛЬНЫЙ УРОК. / 2016-04-20 23:43

Дима, отличная работа, прекрасный обзор!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / ФИНАЛЬНЫЙ УРОК. / 2016-04-20 22:22

Дима, отличный обзор и отличная у тебя программа, Молодец! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Теория ООП / Интерфейс. VIP. Пересечение прямоугольников. / 2016-04-20 11:55

Дима, здорово что повторил и закрепляешь знания!
Очень рада что ты уже у финиша, мне очень интересно будет твое мнение что ты думаешь о этом курсе и о костыле! :)


7276. --
Ильшат
Ильшат
ответить
→  Дмитрий  # Микроигры / Виселка. Поле чудес / 2016-04-20 02:04

Различия в названиях методов и контролов не критичны, важнее удобство создание интерфейса, разделение работы дизайнера и программиста. Спасибо за пояснение, Дмитрий, возьму на заметку XAML.


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Теория ООП / Интерфейс. VIP. Квадратики тоже хотят играть. / 2016-04-19 22:08

Дима, отлично, рада что для тебя уже все знакомо и ты укрепляешь свои знания! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2016-04-19 21:10

Дмитрий, здорово что тебе понравился и был полезен курс! :)
Молодец!


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2016-04-19 17:17

Отличная рецензия!


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий   / 2016-04-19 16:45

Спасибо, что обратил внимание :)


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов   / 2016-04-19 16:28

В шапке сайта.
Обучение С№
Так и задумано или раскладка не та? :)


1947. --
Denis
Denis
ответить
→  Дмитрий  # Теория ООП / Интерфейс. Кружочки гоняются друг за другом. / 2016-04-19 11:42

По описанию - очень интересный должен быть урок =) Смотреть как шарики гоняются друг за другом можно вечно =)


1967. --
Дмитрий
Дмитрий
ответить
→  Ильшат  # Микроигры / Виселка. Поле чудес / 2016-04-18 23:05

Ты прав, для этих целей WPF подходит просто идеально. Там стандартный язык разметки XAML. Но у WPF нет части контролов которые есть в Forms. Если будешь переходить на него будь готов к этому. Например нет PictureBox (есть аналог Image, но он не совсем такой). Также у многих контролов разные названия методов. К примеру у label метод не text, а content. Но это мелочи по сравнению с преимуществами над Forms. Есть поддержка альфаканала без заморочек! Отрисовка графики через DirectX, а не через  GDI/GDI+. Чекбоксу свою галочку? Легко. Кнопке скругленные углы? Легко. Один скругленный угол кнопке? Легко. Анимацию добавить? Легко, даже в код заходить не надо (XAML и это умеет).


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2016-04-18 22:55

Дима, нужно отзыв о курсе оставить, пожалуйста.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / ФИНАЛЬНЫЙ УРОК / 2016-04-18 12:30

Классный граф приложил! Спасибо.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. Кружок готов к игре! / 2016-04-17 23:31

Да, главное не спешить. Все ошибаются. Но можно начать сначала.


1967. --
Дмитрий
Дмитрий
ответить
→  Иван  # Коллекция графов / Широкий поиск / 2016-04-17 22:15

Тут же очередь. Вон он восьмой в очереди.


2146. --
Иван
Иван
ответить
→  Дмитрий  # Коллекция графов / Широкий поиск / 2016-04-17 19:46

А что, ноль может быть не соединен с единицей?


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. Алгоритм игры. / 2016-04-17 09:14

Конечно обязан реализовать все, иначе как он сможет этот интерфейс реализовать?
Он всё должен уметь.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Интерфейс. Правила игры. / 2016-04-17 09:12

Правила игры, для тех, кто не знает:
Выбирается ведущий.
Его цель - догнать и дотронуться до кого-либо из участников.
Цель остальных - не допустить этого.
Когда ведущий дотронется до кого-либо (заголит) - ведущим становится новый участник.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / Широкий поиск / 2016-04-16 18:49

Я даже проверил - ВСЁ ВЕРНО!


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий   / 2016-04-16 17:57

Есть ограничение на кол-во отправленных отчётов, которые ещё не прошли проверку.
В будущем что-нибудь придумаю...


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов   / 2016-04-16 17:00

Не могу получить доступ к уроку Широкий алгоритм (www.videosharp.info/video/graf/nr=764). Пишет что необходимо отправить отчёт на предыдущем уроке. У меня все отправлено, но доступа нет.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / Инициация / 2016-04-16 10:13

Ну-ну.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / ArrayList / 2016-04-15 10:15

Самый простой (и неправильный) способ удаления элемента из массива - присваивание ему "несуществующего" значения,
например -1 или -99999 или Infinity.


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов  # Коллекция графов / Hashtable / 2016-04-15 09:38

Все верно. Когда поменял местами. Все стало логичнее.
Миллион коллекций ListDictionary с 8 элементами создался за 3897 миллисекунд
Миллион коллекций Hashtable с 8 элементами создался за 8306 миллисекунд
Миллион коллекций HybridDictionary с 8 элементами создался за 7994 миллисекунд
Миллион коллекций ListDictionary с 10 элементами создался за 7197 миллисекунд
Миллион коллекций Hashtable с 10 элементами создался за 10602 миллисекунд
Миллион коллекций HybridDictionary с 10 элементами создался за 14699 миллисекунд.

А для остальных случаев гибрид рулит. :) Но опять же не ясно почему. Он же до 9 элемента делает ListDictionary, а потом перестраивается на Hashtable (на это же нужно время, но он все равно быстрее чем остальные).


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / Hashtable / 2016-04-15 09:07

Думаю это связано с тем, что память уже забита и тратится время на сборщик мусора.
Поменяй местами запуск на 10 и на 8 элементов и напиши мне.
И ещё, заметил ЗНАЧИТЕЛЬНУЮ разницу хибрида?
Потому что с 9 элемента он перестраивается.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Коллекция графов / Hashtable / 2016-04-14 23:32

Попробуй Миллион на коллекцию из 8 элементов.
Добавь в отчёт, пожалуйста.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Теория ООП / Структура vs Класс / 2016-04-08 10:07

Вырезал, значит ничего хорошего там не было :-) итак урок длинный получился


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Професишарп / Итератор. Один метод вместо классов. / 2016-04-07 15:52

Я забыл об этом рассказать, а никто на вебинаре не спросил. И сам теперь мучаюсь :(
Придётся в след. раз об этом рассказать.


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов  # Професишарп / Итератор. Перебор простых чисел. / 2016-04-07 13:43

Ага, прям так и хотел сказать :)


1967. --
Дмитрий
Дмитрий
ответить
→  Евгений Волосатов  # Професишарп / Итератор. Создание пустого итератора. / 2016-04-07 13:42

Нет, понятно было после первого. А после третьего я понял так, что смогу в другой раз повторить сам без подглядывания.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Професишарп / Итератор 4 / 2016-04-07 11:52

* без присвоения им публичного доступа.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Професишарп / Итератор 2 / 2016-04-07 11:45

Я так плохо объясняю?
Или материал сложный?


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / ФИНАЛЬНЫЙ УРОК. / 2016-04-04 18:35

Дима, давай иди купи новый микрофон и запиши видеообзор.
Ты столько прошёл, и теперь --- облом? Давай уже доведи до конца!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / ФИНАЛЬНЫЙ УРОК. / 2016-04-03 00:32

Дмитрий, мне очень нравится как у тебя получилась игра, однако это не видеообзор, а демонстрация, в этом задании есть пункты про которые ты рассказываешь, в любом случае ты делаешь обзор своей программы - раскрываешь что сделал и что получилось!!!
И пожалуйста еще ссылку с ютуба, и ссылку плиз в поле Видеозапись!
Пока ставлю плохо и жду переделанного отчета и видеообзора, для меня будет огромнейшая радость услышать твой радостный голос о результатах которые ты сделал!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Свежий взгляд. Завершение проекта. / 2016-04-03 00:20

Дмитрий, Поздравляю! Действивельно ура!!! :)


24. --
Олюшка
Олюшка
ответить

24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Свежий взгляд. Управление из таймера. / 2016-04-02 23:38

Дима, а ведь впереди еще будет интересно и полезно!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Свежий взгляд. Схема проекта. / 2016-04-02 23:36

Дмитрий, отлично, значит будет еще лучше красота! Я рада твоему решению! :)


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / ФИНАЛЬНЫЙ УРОК. / 2016-04-02 23:32

ВАот именно поэтому и не прикрутили. Было лень, реально.


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / Свежий взгляд. Управление из таймера. / 2016-04-02 23:28

Сколько там ещё тебе осталось? :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Финишная миля. Найти победителя / 2016-04-02 01:14

Дима, супер! Молодец! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Финишная миля. Мой океан. / 2016-04-02 00:43

Дима, мне очень нравится у тебя такая аккуратная программа получается, и очень классно что ты исправил все ошибки и получил еще больше опыта!


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / Клиентский флот - Класс ServerFire / 2016-03-30 08:15

Спасибо.
Добавил в описание урока твой комментарий.


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Клиентский флот - Класс ServerInfo / 2016-03-29 00:21

Дмитрий, знаю ты справишься и сделаешь отличную игру, а про курс ООП хорошая мысль!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Клиентский флот - Подключение к серверу / 2016-03-28 23:53

Дмитрий, хорошо что у тебя добавляются знания!
Мне нравится как у тебя получается!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Серверный флот - Функция do_game / 2016-03-28 14:01

Дмитрий, классно! Поздравляю с законченным протоколом! Молодец! :)


1. --
Евгений Волосатов
Евгений Волосатов
ответить

24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Серверный флот - Капитан очевидность / 2016-03-27 20:45

Дмитрий, отличные знания узнал в этом уроке, рада что у тебя уже все получается! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Серверный флот - Рефакторинг РНР-кода / 2016-03-27 03:41

Дмитрий, пожалуйста заполняй все поля, я понимаю что ты нового ничего не получил, однако что-то ведь вспомнил, а новые ученики которые еще мало знают будет интересно и полезно узнать с чем им придется работать и что узнать!


2146. --
Иван
Иван
ответить
→  Дмитрий  # Морской флот / Архитектура - Наследие картинок / 2016-03-21 18:29

Отлично получается!


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Архитектура - Перезагрузка проекта / 2016-03-20 22:33

Дмитрий, отлично сделал, и уверена что теперь ты больше понимать будешь, что дальше делать ! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Анимация - Отображение кадров / 2016-03-19 05:35

Дима, все еще впереди, уверена что ты еще многому научишься! :)


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / Анимация - Полёт по таймеру / 2016-03-18 23:58

Красиво стреляет :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Анимация - Полёт снаряда / 2016-03-18 02:12

Дима, красивая намечается анимашка! :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Графика - Рефакторинг / 2016-03-18 01:55

Дмитрий, хорошо продвигаешься, знаю что впереди еще много будет открытий и полезных знаний! :)


1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Морской флот / Графика - Карта Морского флота / 2016-03-16 09:32

Молодец, Дима, скоро середина :)


1967. --
Дмитрий
Дмитрий
ответить
→  Олюшка  # Морской флот / Интерфейс - А на море корабли / 2016-03-15 21:27

Спасибо. Буду стараться :)


24. --
Олюшка
Олюшка
ответить
→  Дмитрий  # Морской флот / Интерфейс - А на море корабли / 2016-03-15 01:06

Дима, мне понравилась твоя работа, красиво выходит, а впереди тебя ждет очень много открытий и интересного! :)


  • Звание: Алгоритмист
  • Накопленный опыт: 138 часов
  • Собранный капитал: нет

Клуб формулистов

Правила клуба формулистов

У каждого формулиста есть задача минимум на каждый день:
+ зайти на сайт, проверить один отчёт, получить 1 байт.
Задача максимум - выполнить все остальные ежедневные задачи.
Нажмите здесь чтобы перейти к ежедневному чек-листу.

В 24:00 МСК накопленные за сутки байты переносятся в недельный актив.
В воскресение 24:00 МСК все накопленные байты переходят на баланс формулиста.

Собранные байты можно обменивать на доступные видеокурсы (1 байт = 1 рубль, без скидок)
Приобретённые за байты видеокурсы доступны только во время нахождения в автобусе/клубе формулистов!

При завершении подписки в автобусе/клубе формулистов все накопленные байты обнуляются, а доступ к видеокурсам, приобретённым за байты, закрывается.
Продлевайте подписку заблаговременно.

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





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

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

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

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


Научился: Алгоритму поиска в ширину на практике.
Ошибка в том, что мы возвращаем номер вершины из нашей коллекции, меняем ее цвет. Коллекция меняется. А мы возвращаем номер с помощью yield, а коллекция поменялась. Вот программа и не может из-за этого работать.


Научился: Закрепил знания о том зачем интерфейс вообще нужен. Со скрипом, но закрепил. Так проще писать что-то абстрактное и универсальное.
Трудности: Разобраться в методах. Цикл разработки сбит. Тут нам даются уже готовые методы, которые мы еще не используем, а заготавливаем. Евгений Витольдович уже знает что они нам понадобятся и в каком виде, мы еще нет. Обычно делается все немного наоборот. А потом переписывается с нуля с полным пониманием что нам нужно и как нам нужно. Метод FindNewLeader() мы написали уже давно и то что он использует метод Поймал() и как он его использует. И почему мы в метод не передаем лидера и других игроков по очереди для проверки их касания. А сравниваем с this. Это вызывает самые большие сложности в понимании. Но разобраться можно. Лидер же тоже Игрок и у него есть метод Поймал, поэтому this подходит. Все это вспомнить и увязать сразу не получается. Тут главное посидеть подумать, не спешить.
Дальше нам нужно прикрутить таймер и запускать метод Step() по нему.