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

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

основатель — Волосатов Евгений Витольдович

Функционал / ФП - ФИНАЛЬНЫЙ УРОК

  • Оставьте, пожалуйста, отзыв об этом вебинаре.

    Какой курс ты будешь проходить следующим?
  • Дата отправки отчёта: 1 августа 2018 г.
  • Задание выполнено: за 3 мин.
  • Чему научился: что такое функциональное программирование. Разобрался с делегатами и лямбда выражениями. Все очень поверхностно. Хотелось бы больше практики, самостоятельных задачек.

    Планирую дальше просмотреть курс по алгоритмам.
  • Что было сложным: понимание замыканий
  • Оценка видео-уроку:
Отчёт от 19391 за Функционал / ФП - ФИНАЛЬНЫЙ УРОК




Оцени работу

 
Сохранить страницу:

  • Отчёт оценивали:
    6452Кирилл Шмойлов+1   17606Виктор+1   17947Dmitry Sinitsin+1   459Сергей Сергеевич+1   17255Слава+1   3922Александр+1   18493Evgenii Kudriavtcev+1   18688Arslan+1   1Евгений Волосатов+1   11423Василий+1   9014Николай Денисов+1   9752chokayes+1   16218Дмитрий+1   11589Yefim+1   16861Serge+1   791Валерий Жданов+1   10494Алексей В.+1   7645Александр Львович+1  

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





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

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

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

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


Научился: Нашел отличный пример как работает замыкание static void Main(string[] args) { // работает также как и переменная i int t = 7; //замкнутая переменная i будет изменятся при каждой итерации и к концу цикла будет равна 6. //Именно поэтому делегат выведет пять шестерок. for (int i = 1; i <= 5; i++) { // переменная j создается и инстанциируется внутри цикла на каждой итерации. Переменные замыкаются в своей области видимости. // j будет замкнута внутри области видимости цикла и будет неизменна (фактически, будет созданно пять экземпляров переменной j, // каждая из которых получит свое значение), и делегат выведет 1 2 3 4 5 // Главное показать, что если j будет уничтожена каждый цикл и создаваться заново, то связь делегата будет сохранена со старой переменной j // ( в каждом цикле будут созданы сови "клоны" j) - произойдет замыкание. int j = i; new Thread(delegate () { // задержка , которой точно хватит, чтоб цикл отработал, когда i станет = 6 // чтоб показать разницу в работе между i и j Thread.Sleep(100); Console.Write($"j={j} | i={i} | k = {t}\n"); }).Start(); } Console.ReadKey(); }



Научился: Курс очень хороший, короткий, но весьма насыщенный и интересный, рассматриваются продвинутые темы. LINQ очень удобно прокачивать на консольных задачах, я немного прокачал навыки на случайных задачах, используя LINQ. Еще советую, кто заинтересовался этой темой, посмотреть в сторону 101 LINQ samples. Следующий курс - шаблоны проектирования.