Обучение программированию c#

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

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

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

После взноса 255 руб. вы получите 100 байт и
подписку в Клуб на 10 дней + 5 дней на автопродление.


Через 10 дней будет списано 1,555 руб.,
вы получите 255 байтов и продление подписки в Клуб на 30 дней.

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

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


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

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

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

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





Первый взнос - 255 руб./15 дней + 100 байт.
Последующие взносы - 1555 руб./месяц + 255 байт.



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

# Название видеоурока Решило Рейтинг Доступ
1 Подготовка - Фрукты по списку 00:12:36 38 чел. ★ 5 $
  На этом уроке мы познакомимся с перечислением Enum.
Фактически - это набор именных констант в одной упаковке.
Перечисления в языке Java представляют из себя класс,
который предоставляет много интересных возможностей.

Преимущества использования перечислений:
+ Все константы собраны под одним именем.
+ Можно проверить наличие строчного значения в списке.
+ Можно в цикле перебрать все константы.
+ Оператор выбора switch на основе перечисления исключает ошибки.
+ Можно использовать как константную справочную базу данных.

Самостоятельное задание:
Создайте перечисление по дням недели - от MONDAY до SUNDAY.
Введите с клавиатуры строку и проверьте, является ли она днём недели.
Выведите название введённого дня недели на русском языке (switch-case).
Выведите на экран список всех дней недели, кроме введённого.
2 Подготовка - База фруктов 00:18:10 31 чел. ★ 5 $
  На этом уроке мы увидим интересные возможности перечислений enum в языке Java.
Оказывается каждое слово - это не просто константное числовое значение,
а целый экземпляр класса, в котором можно размещать справочную информацию.
Получается целая константная база данных - справочник!

Рекомендуемая литература:
http://interviewinit.com/2014/04/java-enumerations-особенности/
15 вопросов на собеседование относительно Enum, с ответами:
http://info.javarush.ru/translation/2015/10/13/15-вопросов-для-собеседования-разработчиков-относительно-Enum-в-Джаве-с-ответами-.html


Самостоятельное задание
3 FREE Постановка задачи 00:11:50 43 чел. ★ 5 Free
  Мы начинаем создание Java-проекта
на основе задачи про Деда Мороза,
который дарил детям фрукты.

При создании проекта вы сможете проникнуться духом Явы
и прочуствовать во всей красе суть объектно-ориентированного подхода.
4 Яблоки на снегу 00:15:44 40 чел. ★ 5 $
  На этом уроке мы добавим в нашу программу перечисление - enum Fruit.
Таким образом мы сможем изменять список допустимых фруктов,
не меняя основную программу.
5 Фрукточтец 00:11:51 38 чел. ★ 5 $
  На этом уроке мы создадим класс FruitReader,
в который перенесём алгоритм считывания начальных данных.
Таким образом основная программа значительно упростится.

Создайте текстовы файл "fruits.txt".
На нескольких строчках напишите названия фруктов.
Не забудьте в конце файла два раза нажать Enter.
Разместите файл в корень проекта.
Попробуйте открыть файл, указав полный путь с именем.
6 Фрукты из строки 00:14:40 37 чел. ★ 5 $
  На этом уроке мы напишем метод,
который сконвертирует строчку в объект BufferedReader.
Таким образом мы сможем задачу по заполнению коллекции
фруктов из строки делегировать уже созданному методу Read().

Теперь наш класс FruitReader стал чересчур универсальным, и это не очень хорошо.
Мы его разделим на несколько составных частей,
каждая часть будет отвечать за свой инструментарий.
7 Волшебные конструкторы 00:18:40 32 чел. ★ 5 $
  На этом уроке мы рассмотрим несколько способов,
как можно оформить содержимое наследников класса FruitReader.
Какие будут преимущества и недостатки при их использовании из основной программы.

В конечном итоге мы реализуем всё через волшебные конструкторы наследников.
В основной программе алгоритм вычислений вынесем в отдельную функцию.
Избавимся от статика и удивимся, как удобно теперь можно изменять
тип источника данных - нужно всего лишь менять вызов конструктора.
8 Фруктовые комментарии 00:21:08 28 чел. ★ 5 $
  На этом уроке мы займёмся документированием созданных классов и методов.
Мы будем использовать javadoc-стиль для автоматизации процесса создания документации.
9 Новые игрушки 00:12:51 28 чел. ★ 5 $
  На этом уроке мы попробуем расширить диапазон игрушек в мешке Деда Мороза.
Сначала попробуем это сделать через обобщение, и окажемся в тупике.
В конце урока мы найдём простое правильное решение,
и выясним, почему стоит делать именно так.
Совет: сначала посмотрите видео полностью, не внося изменений в код.
10 Какие ваши аргументы? 00:13:36 26 чел. ★ 5 $
  На этом уроке мы сделаем управление нашей программой через аргументы командной строки.
В этом случае мы сможем легко изменять источники входных данных.
Не нужно больше менять и компилировать исходный код.
11 Рефакторинг аргументов 00:10:39 24 чел. ★ 5 $
  На этом уроке мы перенесём проверку
аргументов командной строки в отдельную функцию.
Попутно исправим некоторые недочёты и ошибки.

Обоснуйте своими словами, почему мы решили
не создавать отдельный класс для проверки аргументов?
12 Пошаговый проход 00:13:05 23 чел. ★ 4.9 $
  На этом уроке мы вынесем проверку аргументов в отдельную функцию.
После этого займёмся исправлением ошибки,
которая возникает при отсутствии \n в конце строк.
Чтобы проще было найти ошибку, и улучшить понимание струкутры программы в целом, мы выполним пошагово всю программу, посмотрим на содержимое переменных и доберёмся до сути той ошибки.
13 Массивная строка 00:20:56 23 чел. ★ 5 $
  На этом уроке мы создадим класс FruitReaderStringArray,
в который вынесем алгоритм формирования строчки из массива.
Урок длинный - очень много подробных объяснений -
что мы делаем, почему мы делаем именно так.
14 Логические задачи 00:18:14 23 чел. ★ 5 $
  На этом уроке мы начнём наращивать функционал нашего проекта.
Создадим класс Logic, в котором реализуем несколько методов.
Каждый метод будет решать одну задачу по списку фруктов.
15 Размер множества 00:10:27 22 чел. ★ 5 $
  На этом уроке мы продолжим работу над классом Logic.
Напишем два разных способа решения одной задачи:
Сколько разных фруктов в мешке у Деда Мороза?

Самостоятельное задание:
сделать пошаговое выполнение новых функций.
16 Список задач 00:13:43 21 чел. ★ 5 $
  На этом уроке мы составим список всех решаемых задач.
У нас будет функция, которая запускает все задачи друг за другом.
Также мы создадим ещё одно перечисление из всех возможных задач.
17 Форматы JSON и XML 00:12:02 19 чел. ★ 5 $
  На этом уроке мы переделаем класс Logic,
чтобы он мог возвращать результаты расчётов
в совершенно разных форматах - RAW, JSON, XML.
18 Профессиональный Интерфейс 00:12:12 17 чел. ★ 5 $
  На этом уроке мы создадим интерфейс Convertable.
Он поможет нам выделить из класса Logic задачи по конвертации.
19 Коллекция HashMap 00:11:14 17 чел. ★ 5 $
  На этом уроке мы создадим в классе Logic метод,
который запишет результаты вычислений в словарь -
то есть в коллекцию HashMap.
20 Конвертабельные классы 00:12:23 17 чел. ★ 5 $
  На этом уроке мы сделаем три новых класса,
каждый из которых реализует интерфейс Convertable.
В каждом классе будет всего одна функция - Convert(),
которая из словаря создаёт нужную структуру данных.
21 Параметр Формата 00:16:18 16 чел. ★ 5 $
  На этом уроке мы обсудим возможность управления
форматом вывода результата нашей программой
через передачу параметра командной строки:
java Program [-format json|xml|raw]
22 Параметрический Созидатель 00:12:34 13 чел. ★ 5 $
  На этом уроке мы так и не реализуем функцию parseArgsConvert().
Вместо этого мы организуем более общий подход к анализу аргументов.
Разделим список всех аргументов на составные части по их назначению.
И подготовим функцию create(), которая будет созидать каждую часть.
23 Создатель 00:15:59 13 чел. ★ 5 $
  На этом уроке напишем функцию create.
24 Как шагает Дед Мороз 00:11:25 13 чел. ★ 5 $
  На этом уроке мы пошагово выполним всю программу,
увидим, как параметры командной строки разделяются
на несколько списков и поочерёдно обрабатываются.
25 Конвертабельность 00:09:41 13 чел. ★ 5 $
  На этом уроке мы наконец-таки проанализируем параметры
командной строки и создадим нужный экземпляр конверт.
26 Фабрика параметров 00:14:42 13 чел. ★ 5 $
  На этом уроке мы наконец-таки закончим создание основной части программы.
Мы создадим класс ParamFabric, в который перенесём весь парсинг аргументов.
Останется только оформить документацию - написать комментарии.
27 Буфера в стрингах 00:19:58 12 чел. ★ 5 $
  На этом уроке мы пройдёмся по всему коду программы
и сделаем небольшие улучшения кода.
В основном мы будем заменять
String на StringBuffer в тех местах,
где происходит итеративное формирование строк.
28 Документация Деда Мороза 00:26:00 10 чел. ★ 5 $
  На этом уроке мы опять пройдёмся по всему проекту
и допишем документируемые комментарии.
Затем создадим HTML-документацию
используя утилиту JavaDoc.
29 Задедомороженный Архив 00:12:05 19 чел. ★ 5 $
  На этом уроке мы запакуем весь архив в один файл, используя утилиту jar.
В таком виде удобно копировать и распространять программу -
вместо огромного количества файлов - всего один архив.
30 Комплименты Деду Морозу 16 чел. ★ 5 $
  Поздравляю с завершением
Объектно-Ориентированного-Проекта
на примере решения задачи про Деда Мороза.

Пожалуйста, оставь отзыв об этом видеокурсе.
Что тебе понравилось, что не понравилось,
что можно было бы сделать лучше,
в свободной новогодней форме.
  Итого:   30 видеоуроков общей продолжительностью 7 час. 04 мин. 9 чел. ★ 5  
  Финалисты:   Новопашин Владимир,   Иван Воронин,   Алексей В.,   Tekashnik,   Сергей Соколов,   Константин,   Валерий Жданов,   Станислав,   Andrej Petrunev .

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





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

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

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

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


Научился: Хорошее задание про Дедушку Мороза, последовательный, нескучный, самое главное полезный. Целый проект. Так хочется праздников :). Спасибо. Но всё-таки он не для совсем для начинающих. Людям без знания таблицы умножения объяснять почти что высшую математику :). Всё равно всё не поймут. Еще раз спасибо.
Трудности: Несложно, пока вы смотришь видео.
Видео-супер.


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